1<!DOCTYPE html><html lang="en" class="" style="scroll-padding:60px"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,initial-scale=1"/><title>About - jnywong.github.io</title><meta property="og:title" content="About - jnywong.github.io"/><meta name="generator" content="mystmd"/><meta name="description" content="Personal website of Jenny Wong"/><meta property="og:description" content="Personal website of Jenny Wong"/><meta name="keywords" content=""/><meta name="image" content="/build/avatar-ecc2d2f0ed09ac0c85fedfbe9bbbef3e.png"/><meta property="og:image" content="/build/avatar-ecc2d2f0ed09ac0c85fedfbe9bbbef3e.png"/><link rel="stylesheet" href="/build/_assets/app-AIT5GAEP.css"/><link rel="stylesheet" href="/build/_assets/thebe-core-VKVHG5VY.css"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/css/mpl_widget.css"/><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.css"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css" integrity="sha384-MlJdn/WNKDGXveldHDdyRP1R4CTHr3FeuDNfhsLPYrq2t0UBkUdK2jyTnXPEK1NQ" crossorigin="anonymous"/><link rel="icon" href="/favicon.ico"/><link rel="stylesheet" href="/myst-theme.css"/>
1<script> 2 const savedTheme = localStorage.getItem("myst:theme"); 3 const theme = window.matchMedia("(prefers-color-scheme: light)").matches ? 'light' : 'dark'; 4 const classes = document.documentElement.classList; 5 const hasAnyTheme = classes.contains('light') || classes.contains('dark'); 6 if (!hasAnyTheme) classes.add(savedTheme ?? theme); 7</script>
7</head><body class="m-0 transition-colors duration-500 bg-white dark:bg-stone-900"><div class="myst-skip-to-article fixed top-1 left-1 h-[0px] w-[0px] focus-within:z-40 focus-within:h-auto focus-within:w-auto bg-white overflow-hidden focus-within:p-2 focus-within:ring-1" aria-label="skip to content options"><a href="#skip-to-frontmatter" class="myst-skip-to-link block px-2 py-1 text-black underline">Skip to article frontmatter</a><a href="#skip-to-article" class="myst-skip-to-link block px-2 py-1 text-black underline">Skip to article content</a></div><dialog id="myst-no-css" style="position:fixed;left:0px;top:0px;width:100vw;height:100vh;font-size:4rem;padding:1rem;color:black;background:white"><strong>Site not loading correctly?</strong><p>This may be due to an incorrect <code>BASE_URL</code> configuration. See<!-- --> <a href="https://mystmd.org/guide/deployment#deploy-base-url">the MyST Documentation</a> <!-- -->for reference.</p>
7<script> 8 (() => { 9 // Test for has-styling variable set by the MyST stylesheet 10 const node = document.currentScript.parentNode; 11 const hasCSS = window.getComputedStyle(node).getPropertyValue("--has-styling"); 12 if (hasCSS === ""){ 13 node.showModal(); 14 } 15 16 })() 17</script>
17</dialog><div class="myst-top-nav bg-white/80 backdrop-blur dark:bg-stone-900/80 shadow dark:shadow-stone-700 p-3 md:px-8 sticky w-screen top-0 z-30 h-[60px]"><nav class="myst-top-nav-bar flex items-center justify-between flex-nowrap max-w-[1440px] mx-auto"><div class="flex flex-row xl:min-w-[19.5rem] mr-2 sm:mr-7 justify-start items-center shrink-0"><div class="block xl:hidden"><button class="myst-top-nav-menu-button flex items-center justify-center border-stone-400 text-stone-800 hover:text-stone-900 dark:text-stone-200 hover:dark:text-stone-100 w-10 h-10"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon" width="1.5rem" height="1.5rem"><path fill-rule="evenodd" d="M3 6.75A.75.75 0 0 1 3.75 6h16.5a.75.75 0 0 1 0 1.5H3.75A.75.75 0 0 1 3 6.75ZM3 12a.75.75 0 0 1 .75-.75h16.5a.75.75 0 0 1 0 1.5H3.75A.75.75 0 0 1 3 12Zm0 5.25a.75.75 0 0 1 .75-.75h16.5a.75.75 0 0 1 0 1.5H3.75a.75.75 0 0 1-.75-.75Z" clip-rule="evenodd"></path></svg><span class="sr-only">Open Menu</span></button></div><a class="myst-home-link flex items-center ml-3 dark:text-white w-fit md:ml-5 xl:ml-7" href="/"><div class="myst-home-link-logo mr-3 flex items-center"><img src="/build/logo_black-9f62ff4ab1fccf6269e94114edcd6c33.gif" class="h-9 dark:hidden" alt="jnywong.github.io" height="2.25rem"/><img src="/build/logo_white-a7c3bafa0b5f4bbadd8a12ace520ed0e.gif" class="hidden h-9 dark:block" alt="jnywong.github.io" height="2.25rem"/></div><span class="text-md sm:text-xl tracking-tight sm:mr-5 sr-only">Made with MyST</span></a></div><div class="flex items-center flex-grow w-auto"><div class="flex-grow hidden text-md lg:block"></div><div class="flex-grow block"></div><button type="button" aria-haspopup="dialog" aria-expanded="false" aria-controls="radix-:R75cp:" data-state="closed" class="myst-search-bar flex items-center h-10 aspect-square sm:w-64 text-left text-gray-600 border border-gray-300 dark:border-gray-600 rounded-lg bg-gray-50 dark:bg-gray-700 myst-search-bar-disabled hover:ring-blue-500 dark:hover:ring-blue-500 hover:border-blue-500 dark:hover:border-blue-500"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon" class="p-2.5 h-10 w-10 aspect-square"><path fill-rule="evenodd" d="M10.5 3.75a6.75 6.75 0 1 0 0 13.5 6.75 6.75 0 0 0 0-13.5ZM2.25 10.5a8.25 8.25 0 1 1 14.59 5.28l4.69 4.69a.75.75 0 1 1-1.06 1.06l-4.69-4.69A8.25 8.25 0 0 1 2.25 10.5Z" clip-rule="evenodd"></path></svg><span class="myst-search-text-placeholder hidden sm:block grow">Search</span><div aria-hidden="true" class="myst-search-shortcut items-center hidden mx-1 font-mono text-sm text-gray-600 sm:flex gap-x-1"><kbd class="px-2 py-1 border border-gray-300 dark:border-gray-600 rounded-md shadow-[0px_2px_0px_0px_rgba(0,0,0,0.08)] dark:shadow-none hide-mac">CTRL</kbd><kbd class="px-2 py-1 border border-gray-300 dark:border-gray-600 rounded-md shadow-[0px_2px_0px_0px_rgba(0,0,0,0.08)] dark:shadow-none show-mac">â</kbd><kbd class="px-2 py-1 border border-gray-300 dark:border-gray-600 rounded-md shadow-[0px_2px_0px_0px_rgba(0,0,0,0.08)] dark:shadow-none ">K</kbd>
17<script> 18;(() => { 19const script = document.currentScript; 20const root = script.parentElement; 21 22const isMac = /mac/i.test( 23 window.navigator.userAgentData?.platform ?? window.navigator.userAgent, 24 ); 25root.querySelectorAll(".hide-mac").forEach(node => {node.classList.add(isMac ? "hidden" : "block")}); 26root.querySelectorAll(".show-mac").forEach(node => {node.classList.add(!isMac ? "hidden" : "block")}); 27})()</script>
27</div></button><button class="myst-theme-button theme rounded-full aspect-square border border-stone-700 dark:border-white hover:bg-neutral-100 border-solid overflow-hidden text-stone-700 dark:text-white hover:text-stone-500 dark:hover:text-neutral-800 w-10 h-10 mx-3" title="Toggle theme between light and dark mode" aria-label="Toggle theme between light and dark mode"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon" class="myst-theme-moon-icon h-full w-full p-0.5 hidden dark:block"><path fill-rule="evenodd" d="M9.528 1.718a.75.75 0 0 1 .162.819A8.97 8.97 0 0 0 9 6a9 9 0 0 0 9 9 8.97 8.97 0 0 0 3.463-.69.75.75 0 0 1 .981.98 10.503 10.503 0 0 1-9.694 6.46c-5.799 0-10.5-4.7-10.5-10.5 0-4.368 2.667-8.112 6.46-9.694a.75.75 0 0 1 .818.162Z" clip-rule="evenodd"></path></svg><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon" class="myst-theme-sun-icon h-full w-full p-0.5 dark:hidden"><path stroke-linecap="round" stroke-linejoin="round" d="M12 3v2.25m6.364.386-1.591 1.591M21 12h-2.25m-.386 6.364-1.591-1.591M12 18.75V21m-4.773-4.227-1.591 1.591M5.25 12H3m4.227-4.773L5.636 5.636M15.75 12a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0Z"></path></svg></button><div class="block sm:hidden"></div><div class="hidden sm:block"></div></div></nav></div><div class="myst-primary-sidebar fixed xl:article-grid grid-gap xl:w-screen xl:pointer-events-none overflow-auto max-xl:min-w-[300px] hidden z-10" style="top:60px"><div class="myst-primary-sidebar-pointer pointer-events-auto xl:col-margin-left flex-col overflow-hidden hidden xl:flex"><div class="myst-primary-sidebar-nav flex-grow py-6 overflow-y-auto primary-scrollbar"><nav aria-label="Navigation" class="myst-primary-sidebar-topnav overflow-y-hidden transition-opacity ml-3 xl:ml-0 mr-3 max-w-[350px] lg:hidden"><div class="w-full px-1 dark:text-white font-medium"></div></nav><div class="my-3 border-b-2 lg:hidden"></div><nav aria-label="Table of Contents" class="myst-primary-sidebar-toc flex-grow overflow-y-hidden transition-opacity ml-3 xl:ml-0 mr-3 max-w-[350px]"><div class="myst-toc w-full px-1 dark:text-white"><a title="Welcome" class="block break-words focus:outline outline-blue-200 outline-2 rounded myst-toc-item p-2 my-1 rounded-lg hover:bg-slate-300/30 font-bold" href="/">Welcome</a><a title="About" aria-current="page" class="block break-words focus:outline outline-blue-200 outline-2 rounded myst-toc-item p-2 my-1 rounded-lg myst-toc-item-exact bg-blue-300/30 active" href="/about">About</a><div data-state="closed" class="w-full"><div class="myst-toc-item flex flex-row w-full gap-2 px-2 my-1 text-left rounded-lg outline-none hover:bg-slate-300/30"><div title="Talks" class="block break-words rounded py-2 grow cursor-pointer">Talks</div>
27<button class="self-center flex-none rounded-md group hover:bg-slate-300/30 focus:outline outline-blue-200 outline-2" aria-label="Open Folder" type="button" aria-controls="radix-:Rupsp:" aria-expanded="false" data-state="closed"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon" class="transition-transform duration-300 group-data-[state=open]:rotate-90 text-text-slate-700 dark:text-slate-100" height="1.5rem" width="1.5rem"><path fill-rule="evenodd" d="M16.28 11.47a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 0 1-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 0 1 1.06-1.06l7.5 7.5Z" clip-rule="evenodd"></path></svg></button></div><div data-state="closed" id="radix-:Rupsp:" hidden="" class="pl-3 pr-[2px] collapsible-content"></div></div><div data-state="closed" class="w-full"><div class="myst-toc-item flex flex-row w-full gap-2 px-2 my-1 text-left rounded-lg outline-none hover:bg-slate-300/30"><div title="Projects" class="block break-words rounded py-2 grow cursor-pointer">Projects</div>
27<button class="self-center flex-none rounded-md group hover:bg-slate-300/30 focus:outline outline-blue-200 outline-2" aria-label="Open Folder" type="button" aria-controls="radix-:R16psp:" aria-expanded="false" data-state="closed"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" data-slot="icon" class="transition-transform duration-300 group-data-[state=open]:rotate-90 text-text-slate-700 dark:text-slate-100" height="1.5rem" width="1.5rem"><path fill-rule="evenodd" d="M16.28 11.47a.75.75 0 0 1 0 1.06l-7.5 7.5a.75.75 0 0 1-1.06-1.06L14.69 12 7.72 5.03a.75.75 0 0 1 1.06-1.06l7.5 7.5Z" clip-rule="evenodd"></path></svg></button></div><div data-state="closed" id="radix-:R16psp:" hidden="" class="pl-3 pr-[2px] collapsible-content"></div></div></div></nav></div><div class="myst-primary-sidebar-footer flex-none py-6 transition-all duration-700 translate-y-6 opacity-0"><a class="myst-made-with-myst flex mx-auto text-gray-700 w-fit hover:text-blue-700 dark:text-gray-200 dark:hover:text-blue-400" href="https://mystmd.org/made-with-myst" target="_blank" rel="noreferrer"><svg style="width:24px;height:24px" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" stroke="none"><g id="icon"><path fill="currentColor" d="M23.8,54.8v-3.6l4.7-0.8V17.5l-4.7-0.8V13H36l13.4,31.7h0.2l13-31.7h12.6v3.6l-4.7,0.8v32.9l4.7,0.8v3.6h-15 28 v-3.6l4.9-0.8V20.8H65L51.4,53.3h-3.8l-14-32.5h-0.1l0.2,17.4v12.1l5,0.8v3.6H23.8z"></path><path fill="#F37726" d="M47,86.9c0-5.9-3.4-8.8-10.1-8.8h-8.4c-5.2,0-9.4-1.3-12.5-3.8c-3.1-2.5-5.4-6.2-6.8-11l4.8-1.6 29 c1.8,5.6,6.4,8.6,13.8,8.8h9.2c6.4,0,10.8,2.5,13.1,7.5c2.3-5,6.7-7.5,13.1-7.5h8.4c7.8,0,12.7-2.9,14.6-8.7l4.8,1.6 30 c-1.4,4.9-3.6,8.6-6.8,11.1c-3.1,2.5-7.3,3.7-12.4,3.8H63c-6.7,0-10,2.9-10,8.8"></path></g></svg>
30<span class="self-center ml-2 text-sm">Made with MyST</span></a></div></div></div><main class="article-grid grid-gap"><article class="article-grid subgrid-gap col-screen article content"><div class="hidden"></div><div id="skip-to-frontmatter" aria-label="article frontmatter" class="myst-fm-block mb-8 pt-9"><div class="myst-fm-block-header flex items-center mb-5 h-6 text-sm font-light"><div class="myst-fm-block-subject flex-none pr-2 smallcaps">jnywong.github.io</div><div class="flex-grow"></div><div class="myst-fm-block-badges"><a href="https://creativecommons.org/licenses/by/4.0/" target="_blank" rel="noopener noreferrer" class="myst-fm-license-cc-badge opacity-50 hover:opacity-100 text-inherit hover:text-inherit myst-fm-license-content" aria-label="Content License: Creative Commons Attribution 4.0 International (CC-BY-4.0)"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" width="1.25rem" height="1.25rem" class="myst-fm-license-cc-icon myst-fm-license-cc-icon-main inline-block mx-1"><title>Content License: Creative Commons Attribution 4.0 International (CC-BY-4.0)</title><path d="M12 2.2c2.7 0 5 1 7 2.9.9.9 1.6 2 2.1 3.1.5 1.2.7 2.4.7 3.8 0 1.3-.2 2.6-.7 3.8-.5 1.2-1.2 2.2-2.1 3.1-1 .9-2 1.7-3.2 2.2-1.2.5-2.5.7-3.7.7s-2.6-.3-3.8-.8c-1.2-.5-2.2-1.2-3.2-2.1s-1.6-2-2.1-3.2-.8-2.4-.8-3.7c0-1.3.2-2.5.7-3.7S4.2 6 5.1 5.1C7 3.2 9.3 2.2 12 2.2zM12 4c-2.2 0-4.1.8-5.6 2.3C5.6 7.1 5 8 4.6 9c-.4 1-.6 2-.6 3s.2 2.1.6 3c.4 1 1 1.8 1.8 2.6S8 19 9 19.4c1 .4 2 .6 3 .6s2.1-.2 3-.6c1-.4 1.9-1 2.7-1.8 1.5-1.5 2.3-3.3 2.3-5.6 0-1.1-.2-2.1-.6-3.1-.4-1-1-1.8-1.7-2.6C16.1 4.8 14.2 4 12 4zm-.1 6.4l-1.3.7c-.1-.3-.3-.5-.5-.6-.2-.1-.4-.2-.6-.2-.9 0-1.3.6-1.3 1.7 0 .5.1.9.3 1.3.2.3.5.5 1 .5.6 0 1-.3 1.2-.8l1.2.6c-.3.5-.6.9-1.1 1.1-.5.3-1 .4-1.5.4-.9 0-1.6-.3-2.1-.8-.5-.6-.8-1.3-.8-2.3 0-.9.3-1.7.8-2.2.6-.6 1.3-.8 2.1-.8 1.2 0 2.1.4 2.6 1.4zm5.6 0l-1.3.7c-.1-.3-.3-.5-.5-.6-.2-.1-.4-.2-.6-.2-.9 0-1.3.6-1.3 1.7 0 .5.1.9.3 1.3.2.3.5.5 1 .5.6 0 1-.3 1.2-.8l1.2.6c-.3.5-.6.9-1.1 1.1-.4.2-.9.3-1.4.3-.9 0-1.6-.3-2.1-.8s-.8-1.3-.8-2.2c0-.9.3-1.7.8-2.2.5-.5 1.2-.8 2-.8 1.2 0 2.1.4 2.6 1.4z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" width="1.25rem" height="1.25rem" class="myst-fm-license-cc-icon myst-fm-license-cc-icon-by inline-block mr-1"><title>Credit must be given to the creator</title><path d="M12 2.2c2.7 0 5 .9 6.9 2.8 1.9 1.9 2.8 4.2 2.8 6.9s-.9 5-2.8 6.8c-2 1.9-4.3 2.9-7 2.9-2.6 0-4.9-1-6.9-2.9-1.8-1.7-2.8-4-2.8-6.7s1-5 2.9-6.9C7 3.2 9.3 2.2 12 2.2zM12 4c-2.2 0-4.1.8-5.6 2.3C4.8 8 4 9.9 4 12c0 2.2.8 4 2.4 5.6C8 19.2 9.8 20 12 20c2.2 0 4.1-.8 5.7-2.4 1.5-1.5 2.3-3.3 2.3-5.6 0-2.2-.8-4.1-2.3-5.7C16.1 4.8 14.2 4 12 4zm2.6 5.6v4h-1.1v4.7h-3v-4.7H9.4v-4c0-.2.1-.3.2-.4.1-.2.2-.2.4-.2h4c.2 0 .3.1.4.2.2.1.2.2.2.4zm-4-2.5c0-.9.5-1.4 1.4-1.4s1.4.5 1.4 1.4c0 .9-.5 1.4-1.4 1.4s-1.4-.5-1.4-1.4z"></path></svg></a><a href="https://opensource.org/licenses/MIT" target="_blank" rel="noopener noreferrer" title="Code License: MIT License (MIT)" class="myst-fm-license-badge text-inherit hover:text-inherit"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" width="1.25rem" height="1.25rem" class="myst-fm-license-icon myst-fm-license-icon-osi mx-1 inline-block opacity-60 hover:opacity-100 hover:text-[#599F46] myst-fm-license-code"><path d="M13.2 15.6c1.4-.5 2.1-1.6 2.1-3.3S13.8 8.9 12 8.9c-1.9 0-3.3 1.6-3.3 3.3 0 1.8.8 3 2.2 3.4l-2.3 5.9c-3.1-.8-6.3-4.6-6.3-9.3 0-5.5 4.3-10 9.7-10s9.8 4.5 9.8 10c0 4.7-3.1 8.5-6.3 9.3l-2.3-5.9z"></path></svg></a><a href="https://github.com/jnywong/jnywong.github.io" title="GitHub Repository: jnywong/jnywong.github.io" target="_blank" rel="noopener noreferrer" class="myst-fm-github-link text-inherit hover:text-inherit"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" width="1.25rem" height="1.25rem" class="myst-fm-github-icon inline-block mr-1 opacity-60 hover:opacity-100"><path d="M12 2.5c-5.4 0-9.8 4.4-9.8 9.7 0 4.3 2.8 8 6.7 9.2.5.1.7-.2.7-.5v-1.8c-2.4.5-3.1-.6-3.3-1.1-.1-.3-.6-1.1-1-1.4-.3-.2-.8-.6 0-.6s1.3.7 1.5 1c.9 1.5 2.3 1.1 2.8.8.1-.6.3-1.1.6-1.3-2.2-.2-4.4-1.1-4.4-4.8 0-1.1.4-1.9 1-2.6-.1-.2-.4-1.2.1-2.6 0 0 .8-.3 2.7 1 .8-.2 1.6-.3 2.4-.3.8 0 1.7.1 2.4.3 1.9-1.3 2.7-1 2.7-1 .5 1.3.2 2.3.1 2.6.6.7 1 1.5 1 2.6 0 3.7-2.3 4.6-4.4 4.8.4.3.7.9.7 1.8V21c0 .3.2.6.7.5 3.9-1.3 6.6-4.9 6.6-9.2 0-5.4-4.4-9.8-9.8-9.8z"></path></svg></a></div><a href="https://github.com/jnywong/jnywong.github.io/edit/main/about.md" title="Edit This Page" target="_blank" rel="noopener noreferrer" class="myst-fm-edit-link text-inherit hover:text-inherit"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon" width="1.25rem" height="1.25rem" class="myst-fm-edit-icon inline-block mr-1 opacity-60 hover:opacity-100"><path stroke-linecap="round" stroke-linejoin="round" d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10"></path></svg></a><div class="myst-fm-downloads-dropdown relative flex inline-block mx-1 grow-0" data-headlessui-state=""><button class="myst-fm-downloads-button relative ml-2 -mr-1" id="headlessui-menu-button-:Rs8ucp:" type="button" aria-haspopup="menu" aria-expanded="false" data-headlessui-state=""><span class="sr-only">Downloads</span><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true" data-slot="icon" width="1.25rem" height="1.25rem" class="myst-fm-downloads-icon"><title>Download</title><path stroke-linecap="round" stroke-linejoin="round" d="M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12 12 16.5m0 0L7.5 12m4.5 4.5V3"></path></svg></button></div></div><h1 class="myst-fm-block-title mb-0">About</h1></div><div class="block my-10 lg:sticky lg:z-10 lg:h-0 lg:pt-0 lg:my-0 lg:ml-10 lg:col-margin-right" style="top:60px"><nav></nav></div><div id="skip-to-article"></div><hr class="py-2 my-5 translate-y-2"/><h2 id="experience" class="relative group"><span class="heading-text">Experience</span><a class="no-underline text-inherit hover:text-inherit inline-block w-0 px-0 translate-x-[10px] font-normal select-none transition-opacity opacity-0 focus:opacity-100 group-hover:opacity-70" href="#experience" title="Link to this Section" aria-label="Link to this Section">¶</a></h2><div class="myst-card my-5 rounded shadow dark:shadow-neutral-800 overflow-hidden border border-gray-100 dark:border-gray-800 flex flex-col"><header class="myst-card-header py-1 pl-3 m-0 border-b border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p><strong>
30Open Source Applications Engineer</strong></p></header><div class="myst-card-body flex-grow px-4 py-2"><ul><li><p>Building observability and monitoring tools for JupyterHub deployments with Prometheus and Grafana to alleviate worries about runaway costs for users in the cloud, such as <a target="_blank" rel="noreferrer" href="https://github.com/2i2c-org/jupyterhub-cost-monitoring/" class="">jupyterhub<wbr/>-cost<wbr/>-monitoring</a> and maintaining <a target="_blank" rel="noreferrer" href="https://github.com/jupyterhub/grafana-dashboards" class="">jupyterhub<wbr/>/grafana<wbr/>-dashboards</a>.</p></li><li><p>Front-end development of the <a target="_blank" rel="noreferrer" href="https://cellmapchallenge.2i2c.cloud/" class="">HHMI CellMap Challenge website</a> using Django and managing deployment with Kubernetes.</p></li><li><p>Providing frontline and second-line support for 2i2c communities, including triage, JupyterHub administration, events management and gathering product insights.</p></li><li><p>Leading community engagement and outreach activities, such as <a target="_blank" rel="noreferrer" href="https://executablebooks.org/en/latest/blog/2024-06-14-project-pythia-mystmd/" class="">hackathons</a>, <a target="_blank" rel="noreferrer" href="https://catalystproject.cloud/blog/2024-08-23-hub-champion-training-reflections.html" class="">delivering training</a> and conference talks.</p></li><li><p>Continuously updating the <a target="_blank" rel="noreferrer" href="https://docs.2i2c.org/" class="">2i2c Service Guide</a> and developing the main <a target="_blank" rel="noreferrer" href="https://2i2c.org/" class="">2i2c.org</a> website, as well as contributing documentation to upstream open-source projects.</p></li><li><p>Developing community-based training materials for interactive cloud-native workflows as part of The Catalyst Project in collaboration with <a target="_blank" rel="noreferrer" href="https://carpentries.org/" class="">The Carpentries</a>, <a target="_blank" rel="noreferrer" href="https://www.cscce.org/" class="">The Centre for Scientific Collaboration and Community Engagement (CSCCE)</a>, <a target="_blank" rel="noreferrer" href="http://investinopen.org/" class="">Invest in Open Infrastructure (IOI)</a>, <a target="_blank" rel="noreferrer" href="http://metadocencia.org/" class="">MetaDocencia</a> and <a target="_blank" rel="noreferrer" href="https://openlifesci.org/" class="">Open Life Science (OLS)</a>.</p></li><li><p>Implementing localisation CI/CD workflows with Jupyter Book and Crowdin for The Catalyst Project: <a target="_blank" rel="noreferrer" href="https://catalystproject.cloud/hub-champion-training/" class="">Hub Champion Training</a> and NASA TOPST: <a target="_blank" rel="noreferrer" href="https://sciencecore.github.io/climaterisk/intro.html" class="">ScienceCore</a> curricula.</p></li><li><p>Managing and executing a communications strategy, including <a target="_blank" rel="noreferrer" href="https://2i2c.org/blog/" class="">blog posts</a>, social media campaigns and tracking engagement analytics.</p></li></ul></div><footer class="myst-card-footer py-1 pl-3 m-0 border-t border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>2i2c | 2024 - present</p></footer></div><div class="myst-card my-5 rounded shadow dark:shadow-neutral-800 overflow-hidden border border-gray-100 dark:border-gray-800 flex flex-col"><header class="myst-card-header py-1 pl-3 m-0 border-b border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p><strong>Senior Research Software Engineer</strong></p></header><div class="myst-card-body flex-grow px-4 py-2"><ul><li><p>Accelerating and profiling data assimilation codes 31for <a target="_blank" rel="noreferrer" href="https://serene.bham.ac.uk/" class="">space weather forecasts</a>, which ingest up to 32250GB per hour of RINEX data from hundreds of stations 33globally, and implementing interactive, web-based 34visualisations with Plotly.</p></li><li><p>Automating bioimaging microscopy workflows in the laboratory using LabVIEW to control a collaborative robot and other instruments for the <a target="_blank" rel="noreferrer" href="https://midlandsinnovation.org.uk/community/midlands-open-bioimaging/" class="">Midlands Open Bioimaging</a> network.</p></li><li><p>Certified <a target="_blank" rel="noreferrer" href="https://www.nvidia.com/en-gb/training/educator-programs/university-ambassador-program/" class="">NVIDIA DLI Instructor and Ambassador</a> providing data 35engineering and deep learning training for 36researchers.</p></li><li><p>Certified <a target="_blank" rel="noreferrer" href="https://carpentries.org/" class="">Carpentries</a> Instructor for Software Carpentry.</p></li><li><p>General Tier 2 HPC support for <a target="_blank" rel="noreferrer" href="https://www.baskerville.ac.uk/" class="">Baskerville</a>.</p></li></ul></div><footer class="myst-card-footer py-1 pl-3 m-0 border-t border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>University of Birmingham, Birmingham | 2021 - 2023</p></footer></div><div class="myst-card my-5 rounded shadow dark:shadow-neutral-800 overflow-hidden border border-gray-100 dark:border-gray-800 flex flex-col"><header class="myst-card-header py-1 pl-3 m-0 border-b border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p><strong>Postdoctoral Researcher</strong></p></header><div class="myst-card-body flex-grow px-4 py-2"><ul><li><p>Developing a model of differential equations 37describing the physics of phase change and 38compaction of a solid-liquid system, and solving 39them using finite volume methods in Python.</p></li></ul></div><footer class="myst-card-footer py-1 pl-3 m-0 border-t border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>Institut des Sciences de la Terre, Grenoble | 2020 - 2021</p></footer></div><div class="myst-card my-5 rounded shadow dark:shadow-neutral-800 overflow-hidden border border-gray-100 dark:border-gray-800 flex flex-col"><header class="myst-card-header py-1 pl-3 m-0 border-b border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p><strong>Postdoctoral Researcher</strong></p></header><div class="myst-card-body flex-grow px-4 py-2"><ul><li><p>Running large-scale numerical simulations solving the 40magneto-hydrodynamic equations describing the 41Earthâs dynamo on high-performance computers 42using Fortran and OpenMP, and post-processed 43large data sets in <a class="" data-state="closed" href="/paropy">Python (<code>paropy</code>)</a>.</p></li></ul></div><footer class="myst-card-footer py-1 pl-3 m-0 border-t border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>Institut de Physique du Globe de Paris, Paris | 2019 - 2020</p></footer></div><hr class="py-2 my-5 translate-y-2"/><h2 id="education" class="relative group"><span class="heading-text">Education</span><a class="no-underline text-inherit hover:text-inherit inline-block w-0 px-0 translate-x-[10px] font-normal select-none transition-opacity opacity-0 focus:opacity-100 group-hover:opacity-70" href="#education" title="Link to this Section" aria-label="Link to this Section">¶</a></h2><div class="myst-grid grid my-5 grid-cols-1 md:grid-cols-1 lg:grid-cols-2 xl:grid-cols-2 gap-4"><div class="myst-card my-5 rounded shadow dark:shadow-neutral-800 overflow-hidden border border-gray-100 dark:border-gray-800 flex flex-col"><header class="myst-card-header py-1 pl-3 m-0 border-b border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p><strong>PhD, MSc Fluid Dynamics</strong></p></header><div class="myst-card-body flex-grow px-4 py-2"><p><em>University of Leeds, Leeds</em> <br/><a target="_blank" rel="noreferrer" href="https://etheses.whiterose.ac.uk/23167/" class="">Thesis</a>: A Slurry Model of the F-Layer in the Earthâs Core.</p></div><footer class="myst-card-footer py-1 pl-3 m-0 border-t border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>2014 - 2018</p></footer></div><div class="myst-card my-5 rounded shadow dark:shadow-neutral-800 overflow-hidden border border-gray-100 dark:border-gray-800 flex flex-col"><header class="myst-card-header py-1 pl-3 m-0 border-b border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p><strong>MMath, BSc Mathematics</strong></p></header><div class="myst-card-body flex-grow px-4 py-2"><p><em>University of Leeds, Leeds</em> <br/>First Class Honours.</p></div><footer class="myst-card-footer py-1 pl-3 m-0 border-t border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>2009 - 2013</p></footer></div></div><hr class="py-2 my-5 translate-y-2"/><h2 id="publications" class="relative group"><span class="heading-text">Publications</span><a class="no-underline text-inherit hover:text-inherit inline-block w-0 px-0 translate-x-[10px] font-normal select-none transition-opacity opacity-0 focus:opacity-100 group-hover:opacity-70" href="#publications" title="Link to this Section" aria-label="Link to this Section">¶</a></h2><div class="myst-card my-5 rounded shadow dark:shadow-neutral-800 overflow-hidden border border-gray-100 dark:border-gray-800 flex flex-col"><header class="myst-card-header py-1 pl-3 m-0 border-b border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>Earth and Planetary Science Letters 560, 116791 (2021)</p></header><div class="myst-card-body flex-grow px-4 py-2"><p><strong><a target="_blank" rel="noreferrer" href="https://www.sciencedirect.com/science/article/am/pii/S0012821X21000509" class="">A regime diagram for the slurry F-layer at the base of Earthâs outer core</a></strong></p></div><footer class="myst-card-footer py-1 pl-3 m-0 border-t border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>J Wong, CJ Davies, CA Jones</p></footer></div><div class="myst-card my-5 rounded shadow dark:shadow-neutral-800 overflow-hidden border border-gray-100 dark:border-gray-800 flex flex-col"><header class="myst-card-header py-1 pl-3 m-0 border-b border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>Astronomy & Geophysics 60 (3), 3.30-3.35 (2019)</p></header><div class="myst-card-body flex-grow px-4 py-2"><p><strong><a target="_blank" rel="noreferrer" href="https://www.research-collection.ethz.ch/server/api/core/bitstreams/7774bb68-3fd3-4314-8c99-0e4d3081a09e/content"
43class="">Stably stratified layers within Earthâs core</a></strong></p></div><footer class="myst-card-footer py-1 pl-3 m-0 border-t border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>C Hardy, J Wong</p></footer></div><div class="myst-card my-5 rounded shadow dark:shadow-neutral-800 overflow-hidden border border-gray-100 dark:border-gray-800 flex flex-col"><header class="myst-card-header py-1 pl-3 m-0 border-b border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>Geophysical Journal International 214 (3), 2236-2249 (2018)</p></header><div class="myst-card-body flex-grow px-4 py-2"><p><strong><a target="_blank" rel="noreferrer" href="https://academic.oup.com/gji/article-pdf/214/3/2236/36134435/ggy245.pdf" class="">A Boussinesq slurry model of the F-layer at the base of Earthâs outer core</a></strong></p></div><footer class="myst-card-footer py-1 pl-3 m-0 border-t border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>J Wong, CJ Davies, CA Jones</p></footer></div><div class="myst-card my-5 rounded shadow dark:shadow-neutral-800 overflow-hidden border border-gray-100 dark:border-gray-800 flex flex-col"><header class="myst-card-header py-1 pl-3 m-0 border-b border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>Journal of Rheology 61 (3), 467-476 (2017)</p></header><div class="myst-card-body flex-grow px-4 py-2"><p><strong><a target="_blank" rel="noreferrer" href="https://eprints.whiterose.ac.uk/113583/1/revised_version.pdf" class="">Design and operation of a Rayleigh Ohnesorge jetting extensional rheometer (ROJER) to study extensional properties of low viscosity polymer solutions</a></strong></p></div><footer class="myst-card-footer py-1 pl-3 m-0 border-t border-gray-100 bg-gray-50 dark:bg-slate-900 dark:border-gray-800"><p>E Greiciunas, J Wong, I Gorbatenko, J Hall, MCT Wilson, N Kapur, et al.</p></footer></div><div class="myst-backmatter-parts"></div></article></main>
43<script>((a,l)=>{if(!window.history.state||!window.history.state.key){let u=Math.random().toString(32).slice(2);window.history.replaceState({key:u},"")}try{let d=JSON.parse(sessionStorage.getItem(a)||"{}")[l||window.history.state.key];typeof d=="number"&&window.scrollTo(0,d)}catch(u){console.error(u),sessionStorage.removeItem(a)}})("positions", null)</script>
43<link rel="modulepreload" href="/build/entry.client-PCJPW7TK.js"/><link rel="modulepreload" href="/build/_shared/chunk-AQ2CODAG.js"/><link rel="modulepreload" href="/build/_shared/chunk-JJXTQVMA.js"/><link rel="modulepreload" href="/build/_shared/chunk-OZE3FFNP.js"/><link rel="modulepreload" href="/build/_shared/chunk-OYMW4E3D.js"/><link rel="modulepreload" href="/build/_shared/chunk-C4DFGG5C.js"/><link rel="modulepreload" href="/build/_shared/chunk-J7TUH54J.js"/><link rel="modulepreload" href="/build/_shared/chunk-FZ2S7OYD.js"/><link rel="modulepreload" href="/build/_shared/chunk-JEM6JXYA.js"/><link rel="modulepreload" href="/build/_shared/chunk-34XIY2DH.js"/><link rel="modulepreload" href="/build/_shared/chunk-KQM5FBHR.js"/><link rel="modulepreload" href="/build/_shared/chunk-OCWQY3HK.js"/><link rel="modulepreload" href="/build/_shared/chunk-7HNKBP4B.js"/><link rel="modulepreload" href="/build/_shared/chunk-CUKUDK3R.js"/><link rel="modulepreload" href="/build/_shared/chunk-3EBOCCHJ.js"/><link rel="modulepreload" href="/build/_shared/chunk-O4VQNZ62.js"/><link rel="modulepreload" href="/build/_shared/chunk-4OEDG4JQ.js"/><link rel="modulepreload" href="/build/_shared/chunk-GUCIBHGO.js"/><link rel="modulepreload" href="/build/root-CXYA7X5D.js"/><link rel="modulepreload" href="/build/_shared/chunk-DATP5P2X.js"/><link rel="modulepreload" href="/build/routes/$-JRBPULBO.js"/>
43<script>window.__remixContext = {"url":"/about","state":{"loaderData":{"root":{"config":{"version":3,"myst":"1.7.1","title":"jnywong.github.io","options":{"hide_footer_links":true,"logo":"/build/logo_black-9f62ff4ab1fccf6269e94114edcd6c33.gif","logo_dark":"/build/logo_white-a7c3bafa0b5f4bbadd8a12ace520ed0e.gif","style":"/build/custom-448db02a88d84906edfee17ccfbcdf54.css"},"nav":[],"actions":[],"projects":[{"license":{"content":{"id":"CC-BY-4.0","url":"https://creativecommons.org/licenses/by/4.0/","name":"Creative Commons Attribution 4.0 International","free":true,"CC":true},"code":{"id":"MIT","url":"https://opensource.org/licenses/MIT","name":"MIT License","free":true,"osi":true}},"subject":"jnywong.github.io","title":"Welcome","description":"Personal website of Jenny Wong","github":"https://github.com/jnywong/jnywong.github.io","keywords":[],"toc":[{"file":"index.md"},{"file":"about.md"},{"children":[{"children":[{"file":"talks/2i2c/jupytercon25.md"},{"file":"talks/2i2c/rsecon24.md"},{"file":"talks/2i2c/hpc-ai-uk.md"}],"title":"2i2c"},{"children":[{"file":"talks/baskerville/vscode-remote-development.md"},{"file":"talks/baskerville/first-time-access.md"},{"file":"talks/baskerville/baskerville-portal.md"},{"file":"talks/baskerville/batch-jobs.md"},{"file":"talks/baskerville/profiling/profiling.md"},{"file":"talks/baskerville/adep/adep.md"},{"file":"talks/baskerville/rse-data-ai/rse-data-ai.md"},{"file":"talks/baskerville/turing/turing.md"}],"title":"Baskerville HPC"},{"children":[{"file":"talks/BEAR/sc23/sc23.md"},{"file":"talks/BEAR/whpc/whpc.md"},{"file":"talks/BEAR/rsehpc/rsehpc.md"},{"file":"talks/BEAR/huggingface/huggingface.md"},{"file":"talks/BEAR/bc23/bc23.md"},{"file":"talks/BEAR/isc23/isc23.md"},{"file":"talks/BEAR/pinns/pinns.md"}],"title":"BEAR"},{"children":[{"file":"talks/academia/agu/agu.md"},{"file":"talks/academia/isterre/isterre.md"}
43,{"file":"talks/academia/sedi/sedi.md","title":"SEDI 2020 â Session 7 Inner Core"}],"title":"Academia"}],"title":"Talks"},{"children":[{"file":"projects/slurpy.md"},{"file":"projects/paropy.md"},{"file":"projects/convect-jl.md"},{"file":"projects/spaceweather.md"},{"file":"projects/catalyst.md"},{"file":"projects/hub-champion-training.md"},{"file":"projects/sciencecore.md"},{"file":"projects/cellmap.md"},{"file":"projects/jet-breakup.md"}],"title":"Projects"}],"thumbnail":"/build/avatar-ecc2d2f0ed09ac0c85fedfbe9bbbef3e.png","exports":[],"bibliography":[],"index":"index","pages":[{"slug":"about","title":"About","description":"","date":"","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":1},{"level":1,"title":"Talks"},{"level":2,"title":"2i2c"},{"slug":"jupytercon25","title":"Cloudy With a Chance of Savings: User Resource and Cost Monitoring for JupyterHubs in the Cloud","description":"","date":"2025-11-07","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"rsecon24","title":"Open science cloud infrastructure and training for communities in Latin America and Africa","description":"","date":"2024-09-03","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"hpc-ai-uk","title":"Open infrastructure to Create and Share Knowledge","description":"","date":"2024-10-16","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":2,"title":"Baskerville HPC"},{"slug":"vscode-remote-development","title":"VSCode for Remote Development","description":"","date":"2023-07-26","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"first-time-access","title":"Baskerville Basics - First Time Access","description":"","date":"2022-06-22","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"baskerville-portal","title":"Baskerville Basics - Baskerville Portal","description":"","date":"2023-05-13","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"batch-jobs","title":"Baskerville Basics - Batch Jobs","description":"","date":"2023-08-30","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"profiling","title":"Intro to Profiling","description":"","date":"2023-11-28","thumbnail":"/build/thumbnail-4a282011e8c5d80e7409cac1ae68f515.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"adep","title":"Accelerating Data Engineering Pipelines Workshop","description":"","date":"2023-03-16","thumbnail":"/build/thumbnail-eb4aec633e575b962eacb0bb8109e0a3.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"rse-data-ai","title":"RSE in Data Science and AI Workshop","description":"","date":"2023-02-17","thumbnail":"/build/thumbnail-1501905d3f451e1f09c1c8e32069e7fa.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"turing","title":"Turing Workshop","description":"","date":"2023-02-07","thumbnail":"/build/thumbnail-40c5d4af044930a282a895d8907ac287.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":2,"title":"BEAR"},{"slug":"sc23","title":"Supercomputing 2023","description":"","date":"2023-11-30","thumbnail":"/build/thumbnail-9aa3f3922b1da57844f675d461776de4.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"whpc","title":"Space Weather Forecasting using Celery and Django","description":"","date":"2023-11-13","thumbnail":"/build/thumbnail-1e011d6214125cd5e992a9ea464db7b3.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"rsehpc","title":"Life as an RSE at the University of Birmingham UK","description":"","date":"2023-11-12","thumbnail":"/build/thumbnail-a732e8063fa6b008354660739856d7ca.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"huggingface","title":"HuggingFace","description":"","date":"2023-06-29","thumbnail":"/build/thumbnail-428df023e32e5a739bbc880784458595.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"bc23","title":"BEAR Challenge 2023","description":"","date":"2023-06-19","thumbnail":"/build/thumbnail-3ee9b1b597282195a2ba102ceaa8b424.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3}
43,{"slug":"isc23","title":"International Supercomputing 2023","description":"","date":"2023-05-23","thumbnail":"/build/isc23-1feebe6e1a5b232d9f4ddf43d8367488.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"pinns","title":"Physics Informed Neural Networks","description":"","date":"2023-05-11","thumbnail":"/build/thumbnail-b38b613576e92d16e0233688a12bbd65.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":2,"title":"Academia"},{"slug":"agu","title":"AGU 2020 â A regime diagram of a slurry F-layer","description":"","date":"2020-12-01","thumbnail":"/build/thumbnail-b13d548659d88baa40a908e53e744450.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"isterre","title":"ISTerre â F-layer, Dynamics and implications for the Earth's core","description":"","date":"2020-10-15","thumbnail":"/build/thumbnail-523b794fab5c6a7b8880532d5627ea26.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3}
43,{"slug":"sedi","title":"SEDI 2020 â Session 7 Inner Core","description":"","date":"2020-07-01","thumbnail":"/build/thumbnail-fdc2b9018b661acae009dbcbff32b8fe.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":1,"title":"Projects"},{"slug":"slurpy","title":"slurpy","description":"","date":"","thumbnail":"/build/4e114bd1d9561a356d80d3eb31dfa396.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"paropy","title":"paropy","description":"","date":"","thumbnail":"/build/2d4d9a412e2be8eb3b3b3952f55e22cc.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"convect-jl","title":"convect-jl","description":"","date":"","thumbnail":"/build/1bb47df75e783f74ddf0aea00d707697.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"spaceweather","title":"Space weather forecasting","description":"","date":"","thumbnail":"/build/df9927113fc62f0ea2c40ca9138d692e.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"catalyst","title":"The Catalyst Project","description":"","date":"","thumbnail":"/build/catalyst-logo-4aadce7d1db77cb26e09fc52e3dbca5d.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"hub-champion-training","title":"Hub Champion Training","description":"","date":"","thumbnail":"/build/hub-champion-trainin-3a0a73e7327fb57b9434537cac4fc34d.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"sciencecore","title":"NASA TOPS-T ScienceCore","description":"","date":"","thumbnail":"/build/3e5d1823e6a625e2b42e2277baa93dc2.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"cellmap","title":"HHMI CellMap Challenge","description":"","date":"","thumbnail":"/build/undefined","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"jet-breakup","title":"Capillary Driven Jet Breakup","description":"","date":"","thumbnail":"/build/fde6a534a37c4cb1c0923006cdfaaa1e.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2}]}]},"CONTENT_CDN_PORT":"3100","MODE":"static"},"routes/$":{"config":{"version":3,"myst":"1.7.1","title":"jnywong.github.io","options":{"hide_footer_links":true,"logo":"/build/logo_black-9f62ff4ab1fccf6269e94114edcd6c33.gif","logo_dark":"/build/logo_white-a7c3bafa0b5f4bbadd8a12ace520ed0e.gif","style":"/build/custom-448db02a88d84906edfee17ccfbcdf54.css"},"nav":[],"actions":[],"projects":[{"license":{"content":{"id":"CC-BY-4.0","url":"https://creativecommons.org/licenses/by/4.0/","name":"Creative Commons Attribution 4.0 International","free":true,"CC":true},"code":{"id":"MIT","url":"https://opensource.org/licenses/MIT","name":"MIT License","free":true,"osi":true}},"subject":"jnywong.github.io","title":"Welcome","description":"Personal website of Jenny Wong","github":"https://github.com/jnywong/jnywong.github.io","keywords":[],"toc":[{"file":"index.md"},{"file":"about.md"},{"children":[{"children":[{"file":"talks/2i2c/jupytercon25.md"},{"file":"talks/2i2c/rsecon24.md"},{"file":"talks/2i2c/hpc-ai-uk.md"}],"title":"2i2c"},{"children":[{"file":"talks/baskerville/vscode-remote-development.md"},{"file":"talks/baskerville/first-time-access.md"},{"file":"talks/baskerville/baskerville-portal.md"},{"file":"talks/baskerville/batch-jobs.md"},{"file":"talks/baskerville/profiling/profiling.md"},{"file":"talks/baskerville/adep/adep.md"},{"file":"talks/baskerville/rse-data-ai/rse-data-ai.md"},{"file":"talks/baskerville/turing/turing.md"}],"title":"Baskerville HPC"},{"children":[{"file":"talks/BEAR/sc23/sc23.md"},{"file":"talks/BEAR/whpc/whpc.md"},{"file":"talks/BEAR/rsehpc/rsehpc.md"},{"file":"talks/BEAR/huggingface/huggingface.md"},{"file":"talks/BEAR/bc23/bc23.md"},{"file":"talks/BEAR/isc23/isc23.md"},{"file":"talks/BEAR/pinns/pinns.md"}],"title":"BEAR"},{"children":[{"file":"talks/academia/agu/agu.md"},{"file":"talks/academia/isterre/isterre.md"}
43,{"file":"talks/academia/sedi/sedi.md","title":"SEDI 2020 â Session 7 Inner Core"}],"title":"Academia"}],"title":"Talks"},{"children":[{"file":"projects/slurpy.md"},{"file":"projects/paropy.md"},{"file":"projects/convect-jl.md"},{"file":"projects/spaceweather.md"},{"file":"projects/catalyst.md"},{"file":"projects/hub-champion-training.md"},{"file":"projects/sciencecore.md"},{"file":"projects/cellmap.md"},{"file":"projects/jet-breakup.md"}],"title":"Projects"}],"thumbnail":"/build/avatar-ecc2d2f0ed09ac0c85fedfbe9bbbef3e.png","exports":[],"bibliography":[],"index":"index","pages":[{"slug":"about","title":"About","description":"","date":"","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":1},{"level":1,"title":"Talks"},{"level":2,"title":"2i2c"},{"slug":"jupytercon25","title":"Cloudy With a Chance of Savings: User Resource and Cost Monitoring for JupyterHubs in the Cloud","description":"","date":"2025-11-07","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"rsecon24","title":"Open science cloud infrastructure and training for communities in Latin America and Africa","description":"","date":"2024-09-03","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"hpc-ai-uk","title":"Open infrastructure to Create and Share Knowledge","description":"","date":"2024-10-16","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":2,"title":"Baskerville HPC"},{"slug":"vscode-remote-development","title":"VSCode for Remote Development","description":"","date":"2023-07-26","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"first-time-access","title":"Baskerville Basics - First Time Access","description":"","date":"2022-06-22","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"baskerville-portal","title":"Baskerville Basics - Baskerville Portal","description":"","date":"2023-05-13","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"batch-jobs","title":"Baskerville Basics - Batch Jobs","description":"","date":"2023-08-30","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"profiling","title":"Intro to Profiling","description":"","date":"2023-11-28","thumbnail":"/build/thumbnail-4a282011e8c5d80e7409cac1ae68f515.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"adep","title":"Accelerating Data Engineering Pipelines Workshop","description":"","date":"2023-03-16","thumbnail":"/build/thumbnail-eb4aec633e575b962eacb0bb8109e0a3.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"rse-data-ai","title":"RSE in Data Science and AI Workshop","description":"","date":"2023-02-17","thumbnail":"/build/thumbnail-1501905d3f451e1f09c1c8e32069e7fa.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"turing","title":"Turing Workshop","description":"","date":"2023-02-07","thumbnail":"/build/thumbnail-40c5d4af044930a282a895d8907ac287.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":2,"title":"BEAR"},{"slug":"sc23","title":"Supercomputing 2023","description":"","date":"2023-11-30","thumbnail":"/build/thumbnail-9aa3f3922b1da57844f675d461776de4.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"whpc","title":"Space Weather Forecasting using Celery and Django","description":"","date":"2023-11-13","thumbnail":"/build/thumbnail-1e011d6214125cd5e992a9ea464db7b3.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"rsehpc","title":"Life as an RSE at the University of Birmingham UK","description":"","date":"2023-11-12","thumbnail":"/build/thumbnail-a732e8063fa6b008354660739856d7ca.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"huggingface","title":"HuggingFace","description":"","date":"2023-06-29","thumbnail":"/build/thumbnail-428df023e32e5a739bbc880784458595.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"bc23","title":"BEAR Challenge 2023","description":"","date":"2023-06-19","thumbnail":"/build/thumbnail-3ee9b1b597282195a2ba102ceaa8b424.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3}
43,{"slug":"isc23","title":"International Supercomputing 2023","description":"","date":"2023-05-23","thumbnail":"/build/isc23-1feebe6e1a5b232d9f4ddf43d8367488.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"pinns","title":"Physics Informed Neural Networks","description":"","date":"2023-05-11","thumbnail":"/build/thumbnail-b38b613576e92d16e0233688a12bbd65.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":2,"title":"Academia"},{"slug":"agu","title":"AGU 2020 â A regime diagram of a slurry F-layer","description":"","date":"2020-12-01","thumbnail":"/build/thumbnail-b13d548659d88baa40a908e53e744450.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"isterre","title":"ISTerre â F-layer, Dynamics and implications for the Earth's core","description":"","date":"2020-10-15","thumbnail":"/build/thumbnail-523b794fab5c6a7b8880532d5627ea26.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3}
43,{"slug":"sedi","title":"SEDI 2020 â Session 7 Inner Core","description":"","date":"2020-07-01","thumbnail":"/build/thumbnail-fdc2b9018b661acae009dbcbff32b8fe.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":1,"title":"Projects"},{"slug":"slurpy","title":"slurpy","description":"","date":"","thumbnail":"/build/4e114bd1d9561a356d80d3eb31dfa396.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"paropy","title":"paropy","description":"","date":"","thumbnail":"/build/2d4d9a412e2be8eb3b3b3952f55e22cc.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"convect-jl","title":"convect-jl","description":"","date":"","thumbnail":"/build/1bb47df75e783f74ddf0aea00d707697.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"spaceweather","title":"Space weather forecasting","description":"","date":"","thumbnail":"/build/df9927113fc62f0ea2c40ca9138d692e.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"catalyst","title":"The Catalyst Project","description":"","date":"","thumbnail":"/build/catalyst-logo-4aadce7d1db77cb26e09fc52e3dbca5d.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"hub-champion-training","title":"Hub Champion Training","description":"","date":"","thumbnail":"/build/hub-champion-trainin-3a0a73e7327fb57b9434537cac4fc34d.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"sciencecore","title":"NASA TOPS-T ScienceCore","description":"","date":"","thumbnail":"/build/3e5d1823e6a625e2b42e2277baa93dc2.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"cellmap","title":"HHMI CellMap Challenge","description":"","date":"","thumbnail":"/build/undefined","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"jet-breakup","title":"Capillary Driven Jet Breakup","description":"","date":"","thumbnail":"/build/fde6a534a37c4cb1c0923006cdfaaa1e.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2}]}]},"page":{"version":3,"kind":"Article","sha256":"63e204dfd71905bfd52edb7a2a43e6b0a9a4e5ba055d906da101d50f74659b5d","slug":"about","location":"/about.md","dependencies":[],"frontmatter":{"title":"About","content_includes_title":false,"license":{"content":{"id":"CC-BY-4.0","url":"https://creativecommons.org/licenses/by/4.0/","name":"Creative Commons Attribution 4.0 International","free":true,"CC":true},"code":{"id":"MIT","url":"https://opensource.org/licenses/MIT","name":"MIT License","free":true,"osi":true}},"github":"https://github.com/jnywong/jnywong.github.io","subject":"jnywong.github.io","keywords":[],"source_url":"https://github.com/jnywong/jnywong.github.io/blob/main/about.md","edit_url":"https://github.com/jnywong/jnywong.github.io/edit/main/about.md","exports":[{"format":"md","filename":"about.md","url":"/build/about-7e6bc9b5c9c520a112b84a27bbeb9760.md"}]},"mdast":{"type":"root","children":[{"type":"block","children":[{"type":"thematicBreak","position":{"start":{"line":3,"column":1},"end":{"line":3,"column":1}}
43,"key":"dClGPbzGSd"},{"type":"heading","depth":2,"position":{"start":{"line":5,"column":1},"end":{"line":5,"column":1}},"children":[{"type":"text","value":"Experience","position":{"start":{"line":5,"column":1},"end":{"line":5,"column":1}},"key":"IZjYAtkMZG"}],"identifier":"experience","label":"Experience","html_id":"experience","implicit":true,"key":"I9g9W9tG2G"},{"type":"card","children":[{"type":"header","children":[{"type":"paragraph","children":[{"type":"strong","position":{"start":{"line":8,"column":1},"end":{"line":8,"column":1}},"children":[{"type":"text","value":"Open Source Applications Engineer","position":{"start":{"line":8,"column":1},"end":{"line":8,"column":1}},"key":"KMS1EpiL3n"}],"key":"duyCJOLcOo"}],"key":"Rr2ZOGHpuO"}],"key":"eF2vP0vQQD"},{"type":"list","ordered":false,"spread":false,"position":{"start":{"line":11,"column":1},"end":{"line":18,"column":1}},"children":[{"type":"listItem","spread":true,"position":{"start":{"line":11,"column":1},"end":{"line":11,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Building observability and monitoring tools for JupyterHub deployments with Prometheus and Grafana to alleviate worries about runaway costs for users in the cloud, such as ","position":{"start":{"line":11,"column":1},"end":{"line":11,"column":1}}
43,"key":"OD4XAE3fJw"},{"type":"link","url":"https://github.com/2i2c-org/jupyterhub-cost-monitoring/","position":{"start":{"line":11,"column":1},"end":{"line":11,"column":1}},"children":[{"type":"text","value":"jupyterhubâ-costâ-monitoring","position":{"start":{"line":11,"column":1},"end":{"line":11,"column":1}},"key":"w1OxhNi8i0"}],"urlSource":"https://github.com/2i2c-org/jupyterhub-cost-monitoring/","error":true,"key":"ElgSCsUKBD"},{"type":"text","value":" and maintaining ","position":{"start":{"line":11,"column":1},"end":{"line":11,"column":1}},"key":"IO07SYZqdA"},{"type":"link","url":"https://github.com/jupyterhub/grafana-dashboards","position":{"start":{"line":11,"column":1},"end":{"line":11,"column":1}},"children":[{"type":"text","value":"jupyterhubâ/grafanaâ-dashboards","position":{"start":{"line":11,"column":1},"end":{"line":11,"column":1}},"key":"zppbWOKwaN"}],"urlSource":"https://github.com/jupyterhub/grafana-dashboards","error":true,"key":"w01iHSlrml"},{"type":"text","value":".","position":{"start":{"line":11,"column":1},"end":{"line":11,"column":1}}
43,"key":"FnUq57L0OP"}],"key":"U6tAhLMDds"}],"key":"CrWGbYXPvG"},{"type":"listItem","spread":true,"position":{"start":{"line":12,"column":1},"end":{"line":12,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Front-end development of the ","position":{"start":{"line":12,"column":1},"end":{"line":12,"column":1}},"key":"uUiqUlPf1t"},{"type":"link","url":"https://cellmapchallenge.2i2c.cloud/","position":{"start":{"line":12,"column":1},"end":{"line":12,"column":1}},"children":[{"type":"text","value":"HHMI CellMap Challenge website","position":{"start":{"line":12,"column":1},"end":{"line":12,"column":1}},"key":"Z1c7E04Vps"}],"urlSource":"https://cellmapchallenge.2i2c.cloud/","key":"hatBsp3g2N"},{"type":"text","value":" using Django and managing deployment with Kubernetes.","position":{"start":{"line":12,"column":1},"end":{"line":12,"column":1}},"key":"UldHYxQlPm"}],"key":"ehBR8tGOYE"}],"key":"HXd4g1XCjv"},{"type":"listItem","spread":true,"position":{"start":{"line":13,"column":1},"end":{"line":13,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Providing frontline and second-line support for 2i2c communities, including triage, JupyterHub administration, events management and gathering product insights.","position":{"start":{"line":13,"column":1},"end":{"line":13,"column":1}}
43,"key":"MYRo8ed43M"}],"key":"bwC84c8jyq"}],"key":"k1kFXmBUfr"},{"type":"listItem","spread":true,"position":{"start":{"line":14,"column":1},"end":{"line":14,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Leading community engagement and outreach activities, such as ","position":{"start":{"line":14,"column":1},"end":{"line":14,"column":1}},"key":"bAx8SwRQ9x"},{"type":"link","url":"https://executablebooks.org/en/latest/blog/2024-06-14-project-pythia-mystmd/","position":{"start":{"line":14,"column":1},"end":{"line":14,"column":1}},"children":[{"type":"text","value":"hackathons","position":{"start":{"line":14,"column":1},"end":{"line":14,"column":1}},"key":"JYDSOwah8i"}],"urlSource":"https://executablebooks.org/en/latest/blog/2024-06-14-project-pythia-mystmd/","key":"lhvZOfCQK7"},{"type":"text","value":", ","position":{"start":{"line":14,"column":1},"end":{"line":14,"column":1}},"key":"HBxCke8MPb"},{"type":"link","url":"https://catalystproject.cloud/blog/2024-08-23-hub-champion-training-reflections.html","position":{"start":{"line":14,"column":1},"end":{"line":14,"column":1}},"children":[{"type":"text","value":"delivering training","position":{"start":{"line":14,"column":1},"end":{"line":14,"column":1}}
43,"key":"mZ7PrrqAIz"}],"urlSource":"https://catalystproject.cloud/blog/2024-08-23-hub-champion-training-reflections.html","key":"HK8apT2RED"},{"type":"text","value":" and conference talks.","position":{"start":{"line":14,"column":1},"end":{"line":14,"column":1}},"key":"TwCOYBiuIa"}],"key":"fzQCPhcGgD"}],"key":"tqV210tCvK"},{"type":"listItem","spread":true,"position":{"start":{"line":15,"column":1},"end":{"line":15,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Continuously updating the ","position":{"start":{"line":15,"column":1},"end":{"line":15,"column":1}},"key":"gU7SdZSd2P"},{"type":"link","url":"https://docs.2i2c.org/","position":{"start":{"line":15,"column":1},"end":{"line":15,"column":1}},"children":[{"type":"text","value":"2i2c Service Guide","position":{"start":{"line":15,"column":1},"end":{"line":15,"column":1}},"key":"cTbEsKjjZW"}],"urlSource":"https://docs.2i2c.org/","key":"Ep2HqASF4h"},{"type":"text","value":" and developing the main ","position":{"start":{"line":15,"column":1},"end":{"line":15,"column":1}}
43,"key":"od5mk7OOYI"},{"type":"link","url":"https://2i2c.org/","position":{"start":{"line":15,"column":1},"end":{"line":15,"column":1}},"children":[{"type":"text","value":"2i2c.org","position":{"start":{"line":15,"column":1},"end":{"line":15,"column":1}},"key":"gONbGMfDd8"}],"urlSource":"https://2i2c.org/","key":"pwRvv2pf8r"},{"type":"text","value":" website, as well as contributing documentation to upstream open-source projects.","position":{"start":{"line":15,"column":1},"end":{"line":15,"column":1}},"key":"v1rdNwJU8Y"}],"key":"eUfZuObZbc"}],"key":"kAgYyfe1qn"},{"type":"listItem","spread":true,"position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Developing community-based training materials for interactive cloud-native workflows as part of The Catalyst Project in collaboration with ","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"key":"Y7Hc0xKbuP"},{"type":"link","url":"https://carpentries.org/","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"children":[{"type":"text","value":"The Carpentries","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}}
43,"key":"CafE5Cokgp"}],"urlSource":"https://carpentries.org/","key":"zWM1LOJiuk"},{"type":"text","value":", ","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"key":"ajUQcbmJjn"},{"type":"link","url":"https://www.cscce.org/","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"children":[{"type":"text","value":"The Centre for Scientific Collaboration and Community Engagement (CSCCE)","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"key":"FNmEjzWW6z"}],"urlSource":"https://www.cscce.org/","key":"z9ZTz9H41O"},{"type":"text","value":", ","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"key":"AC9Bifaqb2"},{"type":"link","url":"http://investinopen.org/","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"children":[{"type":"text","value":"Invest in Open Infrastructure (IOI)","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"key":"APa1dOf8F2"}],"urlSource":"http://investinopen.org/","key":"eFjYMq2aui"},{"type":"text","value":", ","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}}
43,"key":"x12P9ab1CN"},{"type":"link","url":"http://metadocencia.org/","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"children":[{"type":"text","value":"MetaDocencia","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"key":"DCG6mTZsVS"}],"urlSource":"http://metadocencia.org/","key":"zZcfIu5GkO"},{"type":"text","value":" and ","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"key":"Btb2wfRbu2"},{"type":"link","url":"https://openlifesci.org/","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"children":[{"type":"text","value":"Open Life Science (OLS)","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"key":"PUFVDtvmPu"}],"urlSource":"https://openlifesci.org/","key":"eAclhVbw4M"},{"type":"text","value":".","position":{"start":{"line":16,"column":1},"end":{"line":16,"column":1}},"key":"SgwKFiUKNu"}],"key":"hrZKkQZcG8"}],"key":"xxd1sCfwlM"},{"type":"listItem","spread":true,"position":{"start":{"line":17,"column":1},"end":{"line":17,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Implementing localisation CI/CD workflows with Jupyter Book and Crowdin for The Catalyst Project: ","position":{"start":{"line":17,"column":1},"end":{"line":17,"column":1}}
43,"key":"oNJxbfLAwW"},{"type":"link","url":"https://catalystproject.cloud/hub-champion-training/","position":{"start":{"line":17,"column":1},"end":{"line":17,"column":1}},"children":[{"type":"text","value":"Hub Champion Training","position":{"start":{"line":17,"column":1},"end":{"line":17,"column":1}},"key":"l0LK2FH1O7"}],"urlSource":"https://catalystproject.cloud/hub-champion-training/","key":"Bu02WRE4hu"},{"type":"text","value":" and NASA TOPST: ","position":{"start":{"line":17,"column":1},"end":{"line":17,"column":1}},"key":"YS2FHI1L4B"},{"type":"link","url":"https://sciencecore.github.io/climaterisk/intro.html","position":{"start":{"line":17,"column":1},"end":{"line":17,"column":1}},"children":[{"type":"text","value":"ScienceCore","position":{"start":{"line":17,"column":1},"end":{"line":17,"column":1}},"key":"jC4xDzYDTN"}],"urlSource":"https://sciencecore.github.io/climaterisk/intro.html","key":"nNFYhYGKKy"},{"type":"text","value":" curricula.","position":{"start":{"line":17,"column":1},"end":{"line":17,"column":1}}
43,"key":"WvIY3ZSLxp"}],"key":"on6j4G5BKI"}],"key":"Tsb8OD4Nio"},{"type":"listItem","spread":true,"position":{"start":{"line":18,"column":1},"end":{"line":18,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Managing and executing a communications strategy, including ","position":{"start":{"line":18,"column":1},"end":{"line":18,"column":1}},"key":"GlPjsoN7op"},{"type":"link","url":"https://2i2c.org/blog/","position":{"start":{"line":18,"column":1},"end":{"line":18,"column":1}},"children":[{"type":"text","value":"blog posts","position":{"start":{"line":18,"column":1},"end":{"line":18,"column":1}},"key":"wvzwBLJ8TP"}],"urlSource":"https://2i2c.org/blog/","key":"M56a8egmuM"},{"type":"text","value":", social media campaigns and tracking engagement analytics.","position":{"start":{"line":18,"column":1},"end":{"line":18,"column":1}},"key":"iHY63AzKc4"}],"key":"la1qTN2MxY"}],"key":"Ny9xAuI3xQ"}],"key":"H1XPkT4G07"},{"type":"footer","children":[{"type":"paragraph","children":[{"type":"text","value":"2i2c | 2024 - present","position":{"start":{"line":9,"column":1},"end":{"line":9,"column":1}}
43,"key":"clfENmogF3"}],"key":"LtW5HW6X3c"}],"key":"dlszwlVj5h"}],"key":"QJCpFprB9O"},{"type":"card","children":[{"type":"header","children":[{"type":"paragraph","children":[{"type":"strong","position":{"start":{"line":22,"column":1},"end":{"line":22,"column":1}},"children":[{"type":"text","value":"Senior Research Software Engineer","position":{"start":{"line":22,"column":1},"end":{"line":22,"column":1}},"key":"dQPDYcL2eu"}],"key":"dfBQd98Ep0"}],"key":"a8fCWwn2Jj"}],"key":"zeBLKpl8Jz"},{"type":"list","ordered":false,"spread":false,"position":{"start":{"line":25,"column":1},"end":{"line":35,"column":1}},"children":[{"type":"listItem","spread":true,"position":{"start":{"line":25,"column":1},"end":{"line":29,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Accelerating and profiling data assimilation codes\nfor ","position":{"start":{"line":25,"column":1},"end":{"line":25,"column":1}},"key":"cO6wKrTV3L"},{"type":"link","url":"https://serene.bham.ac.uk/","position":{"start":{"line":25,"column":1},"end":{"line":25,"column":1}},"children":[{"type":"text","value":"space weather forecasts","position":{"start":{"line":25,"column":1},"end":{"line":25,"column":1}}
43,"key":"DdNjXcL1G0"}],"urlSource":"https://serene.bham.ac.uk/","key":"UA1R5MQW3w"},{"type":"text","value":", which ingest up to\n250GB per hour of RINEX data from hundreds of stations\nglobally, and implementing interactive, web-based\nvisualisations with Plotly.","position":{"start":{"line":25,"column":1},"end":{"line":25,"column":1}},"key":"uiPbU89THe"}],"key":"P1nTr6k36q"}],"key":"uVQkblWP65"},{"type":"listItem","spread":true,"position":{"start":{"line":30,"column":1},"end":{"line":30,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Automating bioimaging microscopy workflows in the laboratory using LabVIEW to control a collaborative robot and other instruments for the ","position":{"start":{"line":30,"column":1},"end":{"line":30,"column":1}},"key":"x2026Vaq8c"},{"type":"link","url":"https://midlandsinnovation.org.uk/community/midlands-open-bioimaging/","position":{"start":{"line":30,"column":1},"end":{"line":30,"column":1}},"children":[{"type":"text","value":"Midlands Open Bioimaging","position":{"start":{"line":30,"column":1},"end":{"line":30,"column":1}}
43,"key":"Z1IefnGJc6"}],"urlSource":"https://midlandsinnovation.org.uk/community/midlands-open-bioimaging/","key":"hYNaG6Xj9A"},{"type":"text","value":" network.","position":{"start":{"line":30,"column":1},"end":{"line":30,"column":1}},"key":"jgRixoz9vd"}],"key":"B7HwJoadbX"}],"key":"Ecck3GlhA5"},{"type":"listItem","spread":true,"position":{"start":{"line":31,"column":1},"end":{"line":33,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Certified ","position":{"start":{"line":31,"column":1},"end":{"line":31,"column":1}},"key":"CP1xkxVAfD"},{"type":"link","url":"https://www.nvidia.com/en-gb/training/educator-programs/university-ambassador-program/","position":{"start":{"line":31,"column":1},"end":{"line":31,"column":1}},"children":[{"type":"text","value":"NVIDIA DLI Instructor and Ambassador","position":{"start":{"line":31,"column":1},"end":{"line":31,"column":1}},"key":"NO2lqrY5Ij"}],"urlSource":"https://www.nvidia.com/en-gb/training/educator-programs/university-ambassador-program/","key":"JDQKNYvfGb"},{"type":"text","value":" providing data\nengineering and deep learning training for\nresearchers.","position":{"start":{"line":31,"column":1},"end":{"line":31,"column":1}}
43,"key":"mJ0ytphj65"}],"key":"Dz02jEZYDf"}],"key":"QCgvlrYWaP"},{"type":"listItem","spread":true,"position":{"start":{"line":34,"column":1},"end":{"line":34,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Certified ","position":{"start":{"line":34,"column":1},"end":{"line":34,"column":1}},"key":"Bx8Rxe4f7f"},{"type":"link","url":"https://carpentries.org/","position":{"start":{"line":34,"column":1},"end":{"line":34,"column":1}},"children":[{"type":"text","value":"Carpentries","position":{"start":{"line":34,"column":1},"end":{"line":34,"column":1}},"key":"nwHLZLbq8d"}],"urlSource":"https://carpentries.org/","key":"d0tNszVGXj"},{"type":"text","value":" Instructor for Software Carpentry.","position":{"start":{"line":34,"column":1},"end":{"line":34,"column":1}},"key":"BKWnC9xpBn"}],"key":"uuxHGeQw7g"}],"key":"Mipu5igUXB"},{"type":"listItem","spread":true,"position":{"start":{"line":35,"column":1},"end":{"line":35,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"General Tier 2 HPC support for ","position":{"start":{"line":35,"column":1},"end":{"line":35,"column":1}}
43,"key":"U2gyS6d2YI"},{"type":"link","url":"https://www.baskerville.ac.uk/","position":{"start":{"line":35,"column":1},"end":{"line":35,"column":1}},"children":[{"type":"text","value":"Baskerville","position":{"start":{"line":35,"column":1},"end":{"line":35,"column":1}},"key":"odauICoibi"}],"urlSource":"https://www.baskerville.ac.uk/","key":"UBg7U7ZqDR"},{"type":"text","value":".","position":{"start":{"line":35,"column":1},"end":{"line":35,"column":1}},"key":"fFYIIyhY7V"}],"key":"C14JPyRie9"}],"key":"Il9zEU4Hjr"}],"key":"lBPIKBEKbH"},{"type":"footer","children":[{"type":"paragraph","children":[{"type":"text","value":"University of Birmingham, Birmingham | 2021 - 2023","position":{"start":{"line":23,"column":1},"end":{"line":23,"column":1}},"key":"lBjg4FoKpd"}],"key":"t0mRw4igXr"}],"key":"g4s5LJkXwq"}],"key":"NKfbyIIy7D"},{"type":"card","children":[{"type":"header","children":[{"type":"paragraph","children":[{"type":"strong","position":{"start":{"line":39,"column":1},"end":{"line":39,"column":1}},"children":[{"type":"text","value":"Postdoctoral Researcher","position":{"start":{"line":39,"column":1},"end":{"line":39,"column":1}}
43,"key":"uRlO4zaXxl"}],"key":"l0vD5332co"}],"key":"KeB5Eknisi"}],"key":"BZbwTEBbOS"},{"type":"list","ordered":false,"spread":false,"position":{"start":{"line":42,"column":1},"end":{"line":45,"column":1}},"children":[{"type":"listItem","spread":true,"position":{"start":{"line":42,"column":1},"end":{"line":45,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Developing a model of differential equations\ndescribing the physics of phase change and\ncompaction of a solid-liquid system, and solving\nthem using finite volume methods in Python.","position":{"start":{"line":42,"column":1},"end":{"line":42,"column":1}},"key":"FdpyIiJPeh"}],"key":"XwJHEVOl0l"}],"key":"jF8jOsUd3Q"}],"key":"mr9cqkaNvJ"},{"type":"footer","children":[{"type":"paragraph","children":[{"type":"text","value":"Institut des Sciences de la Terre, Grenoble | 2020 - 2021","position":{"start":{"line":40,"column":1},"end":{"line":40,"column":1}},"key":"MDckzYuzuZ"}],"key":"rdYNouN4lL"}],"key":"BU57ygQER8"}],"key":"L9XZwYzS0Z"},{"type":"card","children":[{"type":"header","children":[{"type":"paragraph","children":[{"type":"strong","position":{"start":{"line":49,"column":1},"end":{"line":49,"column":1}},"children":[{"type":"text","value":"Postdoctoral Researcher","position":{"start":{"line":49,"column":1},"end":{"line":49,"column":1}}
43,"key":"B1Cg2Lqcy8"}],"key":"veDzn1PO8C"}],"key":"rgYVp9xswO"}],"key":"qWcfV3hzye"},{"type":"list","ordered":false,"spread":false,"position":{"start":{"line":52,"column":1},"end":{"line":56,"column":1}},"children":[{"type":"listItem","spread":true,"position":{"start":{"line":52,"column":1},"end":{"line":56,"column":1}},"children":[{"type":"paragraph","children":[{"type":"text","value":"Running large-scale numerical simulations solving the\nmagneto-hydrodynamic equations describing the\nEarthâs dynamo on high-performance computers\nusing Fortran and OpenMP, and post-processed\nlarge data sets in ","position":{"start":{"line":52,"column":1},"end":{"line":52,"column":1}},"key":"MYj7xK6N2e"},{"type":"link","url":"/paropy","position":{"start":{"line":52,"column":1},"end":{"line":52,"column":1}},"children":[{"type":"text","value":"Python (","position":{"start":{"line":52,"column":1},"end":{"line":52,"column":1}},"key":"cyL2ZjhSjh"},{"type":"inlineCode","value":"paropy","position":{"start":{"line":52,"column":1},"end":{"line":52,"column":1}}
43,"key":"rDYAyHi6tD"},{"type":"text","value":")","position":{"start":{"line":52,"column":1},"end":{"line":52,"column":1}},"key":"GYwEI5XERI"}],"urlSource":"projects/paropy.md","dataUrl":"/paropy.json","internal":true,"protocol":"file","key":"bCALZEtQIV"},{"type":"text","value":".","position":{"start":{"line":52,"column":1},"end":{"line":52,"column":1}},"key":"buVwr8X1nh"}],"key":"BNL0jJYjvo"}],"key":"OSiRhWXCte"}],"key":"hZMplx1Aij"},{"type":"footer","children":[{"type":"paragraph","children":[{"type":"text","value":"Institut de Physique du Globe de Paris, Paris | 2019 - 2020","position":{"start":{"line":50,"column":1},"end":{"line":50,"column":1}},"key":"X4K4fYtgU4"}],"key":"LZVF7iVlBd"}],"key":"RQMPE9krOz"}],"key":"FrvFGA1WYw"},{"type":"thematicBreak","position":{"start":{"line":59,"column":1},"end":{"line":59,"column":1}},"key":"EMNZU1tJo3"},{"type":"heading","depth":2,"position":{"start":{"line":61,"column":1},"end":{"line":61,"column":1}},"children":[{"type":"text","value":"Education","position":{"start":{"line":61,"column":1},"end":{"line":61,"column":1}}
43,"key":"aTQdA44UUK"}],"identifier":"education","label":"Education","html_id":"education","implicit":true,"key":"udah5fvvdr"},{"type":"grid","columns":[1,1,2,2],"children":[{"type":"card","children":[{"type":"header","children":[{"type":"paragraph","children":[{"type":"strong","position":{"start":{"line":66,"column":1},"end":{"line":66,"column":1}},"children":[{"type":"text","value":"PhD, MSc Fluid Dynamics","position":{"start":{"line":66,"column":1},"end":{"line":66,"column":1}},"key":"c2erZMLOaf"}],"key":"GHqLDhi5Lb"}],"key":"fRyyuLLa8G"}],"key":"SDpAsv9Rwm"},{"type":"paragraph","position":{"start":{"line":68,"column":1},"end":{"line":69,"column":1}},"children":[{"type":"emphasis","position":{"start":{"line":68,"column":1},"end":{"line":68,"column":1}},"children":[{"type":"text","value":"University of Leeds, Leeds","position":{"start":{"line":68,"column":1},"end":{"line":68,"column":1}},"key":"HvewvHxCnv"}],"key":"ahc6KFFPAq"},{"type":"text","value":" ","position":{"start":{"line":68,"column":1},"end":{"line":68,"column":1}}
43,"key":"i8uKd0CxM4"},{"type":"break","position":{"start":{"line":68,"column":1},"end":{"line":68,"column":1}},"key":"sQobG5NLL2"},{"type":"link","url":"https://etheses.whiterose.ac.uk/23167/","position":{"start":{"line":68,"column":1},"end":{"line":68,"column":1}},"children":[{"type":"text","value":"Thesis","position":{"start":{"line":68,"column":1},"end":{"line":68,"column":1}},"key":"GSAPccZyV3"}],"urlSource":"https://etheses.whiterose.ac.uk/23167/","key":"KbCZ0OfQoj"},{"type":"text","value":": A Slurry Model of the F-Layer in the Earthâs Core.","position":{"start":{"line":68,"column":1},"end":{"line":68,"column":1}},"key":"ZpuzGk0PsR"}],"key":"FA87mpBx1Q"},{"type":"footer","children":[{"type":"paragraph","children":[{"type":"text","value":"2014 - 2018","position":{"start":{"line":67,"column":1},"end":{"line":67,"column":1}},"key":"aWPwTOhJhq"}],"key":"UvwXE1nTr0"}],"key":"vHnNKzSC5S"}],"key":"v9SKiEM1Zr"},{"type":"card","children":[{"type":"header","children":[{"type":"paragraph","children":[{"type":"strong","position":{"start":{"line":73,"column":1},"end":{"line":73,"column":1}},"children":[{"type":"text","value":"MMath, BSc Mathematics","position":{"start":{"line":73,"column":1},"end":{"line":73,"column":1}}
43,"key":"TupzTtYw1C"}],"key":"cHW1GaoH8r"}],"key":"Xa5HiiRQ1z"}],"key":"K58gu9vvex"},{"type":"paragraph","position":{"start":{"line":75,"column":1},"end":{"line":76,"column":1}},"children":[{"type":"emphasis","position":{"start":{"line":75,"column":1},"end":{"line":75,"column":1}},"children":[{"type":"text","value":"University of Leeds, Leeds","position":{"start":{"line":75,"column":1},"end":{"line":75,"column":1}},"key":"kCXqwbr2ij"}],"key":"AL6lyWPCNy"},{"type":"text","value":" ","position":{"start":{"line":75,"column":1},"end":{"line":75,"column":1}},"key":"PxAUujhDmC"},{"type":"break","position":{"start":{"line":75,"column":1},"end":{"line":75,"column":1}},"key":"Myu8NjGbcw"},{"type":"text","value":"First Class Honours.","position":{"start":{"line":75,"column":1},"end":{"line":75,"column":1}},"key":"CXj46Hm0BA"}],"key":"RO90B0i478"},{"type":"footer","children":[{"type":"paragraph","children":[{"type":"text","value":"2009 - 2013","position":{"start":{"line":74,"column":1},"end":{"line":74,"column":1}},"key":"hO5BA7dvAY"}],"key":"MHhbU2AdWq"}],"key":"KFHukrfM6W"}],"key":"iYIB3LRIX4"}],"key":"iVYxgdQ1sA"},{"type":"thematicBreak","position":{"start":{"line":81,"column":1},"end":{"line":81,"column":1}}
43,"key":"YjMnGDPSUW"},{"type":"heading","depth":2,"position":{"start":{"line":83,"column":1},"end":{"line":83,"column":1}},"children":[{"type":"text","value":"Publications","position":{"start":{"line":83,"column":1},"end":{"line":83,"column":1}},"key":"O9BAb1vJxJ"}],"identifier":"publications","label":"Publications","html_id":"publications","implicit":true,"key":"DRDhvttNob"},{"type":"card","children":[{"type":"header","children":[{"type":"paragraph","children":[{"type":"text","value":"Earth and Planetary Science Letters 560, 116791 (2021)","position":{"start":{"line":86,"column":1},"end":{"line":86,"column":1}},"key":"kcPhNOP7xn"}],"key":"HpR0ch3uCP"}],"key":"pkUTsiZLgc"},{"type":"paragraph","position":{"start":{"line":88,"column":1},"end":{"line":88,"column":1}},"children":[{"type":"strong","position":{"start":{"line":88,"column":1},"end":{"line":88,"column":1}},"children":[{"type":"link","url":"https://www.sciencedirect.com/science/article/am/pii/S0012821X21000509","position":{"start":{"line":88,"column":1},"end":{"line":88,"column":1}},"children":[{"type":"text","value":"A regime diagram for the slurry F-layer at the base of Earthâs outer core","position":{"start":{"line":88,"column":1},"end":{"line":88,"column":1}}
43,"key":"j5f74ZRfet"}],"urlSource":"https://www.sciencedirect.com/science/article/am/pii/S0012821X21000509","key":"xhQonzlQ5F"}],"key":"aaVOXxJ7Bc"}],"key":"lARNeBgQ2d"},{"type":"footer","children":[{"type":"paragraph","children":[{"type":"text","value":"J Wong, CJ Davies, CA Jones","position":{"start":{"line":87,"column":1},"end":{"line":87,"column":1}},"key":"KAMAhc3mY2"}],"key":"fmzM2XPWe7"}],"key":"wyqevRT4uq"}],"key":"fnKbSoAHEf"},{"type":"card","children":[{"type":"header","children":[{"type":"paragraph","children":[{"type":"text","value":"Astronomy \u0026 Geophysics 60 (3), 3.30-3.35 (2019)","position":{"start":{"line":92,"column":1},"end":{"line":92,"column":1}},"key":"tQh1bsqHU1"}],"key":"SmxbrRVk30"}],"key":"mlirnvj7oO"},{"type":"paragraph","position":{"start":{"line":94,"column":1},"end":{"line":94,"column":1}},"children":[{"type":"strong","position":{"start":{"line":94,"column":1},"end":{"line":94,"column":1}},"children":[{"type":"link","url":"https://www.research-collection.ethz.ch/server/api/core/bitstreams/7774bb68-3fd3-4314-8c99-0e4d3081a09e/content","position":{"start":{"line":94,"column":1},"end":{"line":94,"column":1}},"children":[{"type":"text","value":"Stably stratified layers within Earthâs core","position":{"start":{"line":94,"column":1},"end":{"line":94,"column":1}}
43,"key":"y8ldUFyz8x"}],"urlSource":"https://www.research-collection.ethz.ch/server/api/core/bitstreams/7774bb68-3fd3-4314-8c99-0e4d3081a09e/content","key":"Zjq0fKIPzZ"}],"key":"RkubDCjYPe"}],"key":"ZRP2FQ8mZN"},{"type":"footer","children":[{"type":"paragraph","children":[{"type":"text","value":"C Hardy, J Wong","position":{"start":{"line":93,"column":1},"end":{"line":93,"column":1}},"key":"pZ5fxWtyN4"}],"key":"oXAthS6vRv"}],"key":"qlHplVOa01"}],"key":"mJ1fCPSasV"},{"type":"card","children":[{"type":"header","children":[{"type":"paragraph","children":[{"type":"text","value":"Geophysical Journal International 214 (3), 2236-2249 (2018)","position":{"start":{"line":98,"column":1},"end":{"line":98,"column":1}},"key":"oNf4xDFGqI"}],"key":"wUzPTqzrlz"}],"key":"LiMPWoBhvP"},{"type":"paragraph","position":{"start":{"line":100,"column":1},"end":{"line":100,"column":1}},"children":[{"type":"strong","position":{"start":{"line":100,"column":1},"end":{"line":100,"column":1}},"children":[{"type":"link","url":"https://academic.oup.com/gji/article-pdf/214/3/2236/36134435/ggy245.pdf","position":{"start":{"line":100,"column":1},"end":{"line":100,"column":1}},"children":[{"type":"text","value":"A Boussinesq slurry model of the F-layer at the base of Earthâs outer core","position":{"start":{"line":100,"column":1},"end":{"line":100,"column":1}}
43,"key":"ci7mbgczzL"}],"urlSource":"https://academic.oup.com/gji/article-pdf/214/3/2236/36134435/ggy245.pdf","key":"ya3noDagY8"}],"key":"acK6YcEJiv"}],"key":"ZMCJSE8bQg"},{"type":"footer","children":[{"type":"paragraph","children":[{"type":"text","value":"J Wong, CJ Davies, CA Jones","position":{"start":{"line":99,"column":1},"end":{"line":99,"column":1}},"key":"bZcrM4iGnE"}],"key":"dAhMVfOexk"}],"key":"iGYpnvF1I7"}],"key":"zAUsDXDT77"},{"type":"card","children":[{"type":"header","children":[{"type":"paragraph","children":[{"type":"text","value":"Journal of Rheology 61 (3), 467-476 (2017)","position":{"start":{"line":104,"column":1},"end":{"line":104,"column":1}},"key":"RNAw708w8J"}],"key":"Hv6pzYcwRb"}],"key":"EfsUCjmGQ9"},{"type":"paragraph","position":{"start":{"line":106,"column":1},"end":{"line":106,"column":1}},"children":[{"type":"strong","position":{"start":{"line":106,"column":1},"end":{"line":106,"column":1}},"children":[{"type":"link","url":"https://eprints.whiterose.ac.uk/113583/1/revised_version.pdf","position":{"start":{"line":106,"column":1},"end":{"line":106,"column":1}},"children":[{"type":"text","value":"Design and operation of a Rayleigh Ohnesorge jetting extensional rheometer (ROJER) to study extensional properties of low viscosity polymer solutions","position":{"start":{"line":106,"column":1},"end":{"line":106,"column":1}}
43,"key":"GJeAR73SFC"}],"urlSource":"https://eprints.whiterose.ac.uk/113583/1/revised_version.pdf","key":"f4nNkBA06B"}],"key":"r9d40butab"}],"key":"llOcqNRO8z"},{"type":"footer","children":[{"type":"paragraph","children":[{"type":"text","value":"E Greiciunas, J Wong, I Gorbatenko, J Hall, MCT Wilson, N Kapur, et al.","position":{"start":{"line":105,"column":1},"end":{"line":105,"column":1}},"key":"IwrJwWAIrC"}],"key":"ukPKZUQVox"}],"key":"lU4mCQ8Dvj"}],"key":"SpGvSsUyvO"}],"key":"quEx6xz52v"}],"key":"KWVN5U8ADj"},"references":{"cite":{"order":[],"data":{}}},"footer":{"navigation":{"prev":{"title":"Welcome","url":"/","group":"Welcome"},"next":{"title":"Cloudy With a Chance of Savings: User Resource and Cost Monitoring for JupyterHubs in the Cloud","url":"/jupytercon25","group":"2i2c"}}},"domain":"http://localhost:3000"},"project":{"license":{"content":{"id":"CC-BY-4.0","url":"https://creativecommons.org/licenses/by/4.0/","name":"Creative Commons Attribution 4.0 International","free":true,"CC":true},"code":{"id":"MIT","url":"https://opensource.org/licenses/MIT","name":"MIT License","free":true,"osi":true}},"subject":"jnywong.github.io","title":"Welcome","description":"Personal website of Jenny Wong","github":"https://github.com/jnywong/jnywong.github.io","keywords":[],"toc":[{"file":"index.md"},{"file":"about.md"},{"children":[{"children":[{"file":"talks/2i2c/jupytercon25.md"},{"file":"talks/2i2c/rsecon24.md"},{"file":"talks/2i2c/hpc-ai-uk.md"}],"title":"2i2c"},{"children":[{"file":"talks/baskerville/vscode-remote-development.md"},{"file":"talks/baskerville/first-time-access.md"},{"file":"talks/baskerville/baskerville-portal.md"},{"file":"talks/baskerville/batch-jobs.md"},{"file":"talks/baskerville/profiling/profiling.md"},{"file":"talks/baskerville/adep/adep.md"},{"file":"talks/baskerville/rse-data-ai/rse-data-ai.md"},{"file":"talks/baskerville/turing/turing.md"}],"title":"Baskerville HPC"},{"children":[{"file":"talks/BEAR/sc23/sc23.md"},{"file":"talks/BEAR/whpc/whpc.md"},{"file":"talks/BEAR/rsehpc/rsehpc.md"},{"file":"talks/BEAR/huggingface/huggingface.md"},{"file":"talks/BEAR/bc23/bc23.md"},{"file":"talks/BEAR/isc23/isc23.md"},{"file":"talks/BEAR/pinns/pinns.md"}],"title":"BEAR"},{"children":[{"file":"talks/academia/agu/agu.md"},{"file":"talks/academia/isterre/isterre.md"}
43,{"file":"talks/academia/sedi/sedi.md","title":"SEDI 2020 â Session 7 Inner Core"}],"title":"Academia"}],"title":"Talks"},{"children":[{"file":"projects/slurpy.md"},{"file":"projects/paropy.md"},{"file":"projects/convect-jl.md"},{"file":"projects/spaceweather.md"},{"file":"projects/catalyst.md"},{"file":"projects/hub-champion-training.md"},{"file":"projects/sciencecore.md"},{"file":"projects/cellmap.md"},{"file":"projects/jet-breakup.md"}],"title":"Projects"}],"thumbnail":"/build/avatar-ecc2d2f0ed09ac0c85fedfbe9bbbef3e.png","exports":[],"bibliography":[],"index":"index","pages":[{"slug":"about","title":"About","description":"","date":"","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":1},{"level":1,"title":"Talks"},{"level":2,"title":"2i2c"},{"slug":"jupytercon25","title":"Cloudy With a Chance of Savings: User Resource and Cost Monitoring for JupyterHubs in the Cloud","description":"","date":"2025-11-07","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"rsecon24","title":"Open science cloud infrastructure and training for communities in Latin America and Africa","description":"","date":"2024-09-03","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"hpc-ai-uk","title":"Open infrastructure to Create and Share Knowledge","description":"","date":"2024-10-16","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":2,"title":"Baskerville HPC"},{"slug":"vscode-remote-development","title":"VSCode for Remote Development","description":"","date":"2023-07-26","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"first-time-access","title":"Baskerville Basics - First Time Access","description":"","date":"2022-06-22","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"baskerville-portal","title":"Baskerville Basics - Baskerville Portal","description":"","date":"2023-05-13","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"batch-jobs","title":"Baskerville Basics - Batch Jobs","description":"","date":"2023-08-30","thumbnail":"","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"profiling","title":"Intro to Profiling","description":"","date":"2023-11-28","thumbnail":"/build/thumbnail-4a282011e8c5d80e7409cac1ae68f515.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"adep","title":"Accelerating Data Engineering Pipelines Workshop","description":"","date":"2023-03-16","thumbnail":"/build/thumbnail-eb4aec633e575b962eacb0bb8109e0a3.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"rse-data-ai","title":"RSE in Data Science and AI Workshop","description":"","date":"2023-02-17","thumbnail":"/build/thumbnail-1501905d3f451e1f09c1c8e32069e7fa.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"turing","title":"Turing Workshop","description":"","date":"2023-02-07","thumbnail":"/build/thumbnail-40c5d4af044930a282a895d8907ac287.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":2,"title":"BEAR"},{"slug":"sc23","title":"Supercomputing 2023","description":"","date":"2023-11-30","thumbnail":"/build/thumbnail-9aa3f3922b1da57844f675d461776de4.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"whpc","title":"Space Weather Forecasting using Celery and Django","description":"","date":"2023-11-13","thumbnail":"/build/thumbnail-1e011d6214125cd5e992a9ea464db7b3.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"rsehpc","title":"Life as an RSE at the University of Birmingham UK","description":"","date":"2023-11-12","thumbnail":"/build/thumbnail-a732e8063fa6b008354660739856d7ca.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"huggingface","title":"HuggingFace","description":"","date":"2023-06-29","thumbnail":"/build/thumbnail-428df023e32e5a739bbc880784458595.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"bc23","title":"BEAR Challenge 2023","description":"","date":"2023-06-19","thumbnail":"/build/thumbnail-3ee9b1b597282195a2ba102ceaa8b424.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3}
43,{"slug":"isc23","title":"International Supercomputing 2023","description":"","date":"2023-05-23","thumbnail":"/build/isc23-1feebe6e1a5b232d9f4ddf43d8367488.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"pinns","title":"Physics Informed Neural Networks","description":"","date":"2023-05-11","thumbnail":"/build/thumbnail-b38b613576e92d16e0233688a12bbd65.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":2,"title":"Academia"},{"slug":"agu","title":"AGU 2020 â A regime diagram of a slurry F-layer","description":"","date":"2020-12-01","thumbnail":"/build/thumbnail-b13d548659d88baa40a908e53e744450.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"slug":"isterre","title":"ISTerre â F-layer, Dynamics and implications for the Earth's core","description":"","date":"2020-10-15","thumbnail":"/build/thumbnail-523b794fab5c6a7b8880532d5627ea26.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3}
43,{"slug":"sedi","title":"SEDI 2020 â Session 7 Inner Core","description":"","date":"2020-07-01","thumbnail":"/build/thumbnail-fdc2b9018b661acae009dbcbff32b8fe.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":3},{"level":1,"title":"Projects"},{"slug":"slurpy","title":"slurpy","description":"","date":"","thumbnail":"/build/4e114bd1d9561a356d80d3eb31dfa396.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"paropy","title":"paropy","description":"","date":"","thumbnail":"/build/2d4d9a412e2be8eb3b3b3952f55e22cc.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"convect-jl","title":"convect-jl","description":"","date":"","thumbnail":"/build/1bb47df75e783f74ddf0aea00d707697.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"spaceweather","title":"Space weather forecasting","description":"","date":"","thumbnail":"/build/df9927113fc62f0ea2c40ca9138d692e.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"catalyst","title":"The Catalyst Project","description":"","date":"","thumbnail":"/build/catalyst-logo-4aadce7d1db77cb26e09fc52e3dbca5d.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"hub-champion-training","title":"Hub Champion Training","description":"","date":"","thumbnail":"/build/hub-champion-trainin-3a0a73e7327fb57b9434537cac4fc34d.svg","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"sciencecore","title":"NASA TOPS-T ScienceCore","description":"","date":"","thumbnail":"/build/3e5d1823e6a625e2b42e2277baa93dc2.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"cellmap","title":"HHMI CellMap Challenge","description":"","date":"","thumbnail":"/build/undefined","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2},{"slug":"jet-breakup","title":"Capillary Driven Jet Breakup","description":"","date":"","thumbnail":"/build/fde6a534a37c4cb1c0923006cdfaaa1e.png","thumbnailOptimized":"","banner":"","bannerOptimized":"","tags":[],"level":2}]}}},"actionData":null,"errors":null},"future":{"unstable_dev":false,"unstable_postcss":false,"unstable_tailwind":false,"v2_errorBoundary":true,"v2_headers":true,"v2_meta":true,"v2_normalizeFormMethod":true,"v2_routeConvention":true}};</script>
43<script type="module" async="">import "/build/manifest-86A905A4.js"; 44import * as route0 from "/build/root-CXYA7X5D.js"; 45import * as route1 from "/build/routes/$-JRBPULBO.js"; 46window.__remixRouteModules = {"root":route0,"routes/$":route1}; 47 48import("/build/entry.client-PCJPW7TK.js");</script>
48</body></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.