-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Deploying to gh-pages from @ c3441f4 🚀
- Loading branch information
1 parent
bca9996
commit 3f8ab21
Showing
4 changed files
with
218 additions
and
6 deletions.
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,193 @@ | ||
<!DOCTYPE html> | ||
<html lang="en" class="h-full bg-gradient-to-r from-sky-700 to-blue-900 from-sky-700 sm:overflow-auto "> | ||
<head> | ||
<title>Stefan Schöberl | ||
|
||
| Algorithmic Photo Books | ||
|
||
</title> | ||
<meta charset="utf-8"> | ||
<meta name="theme-color" content="#195096"> | ||
<meta name="viewport" content="width=device-width, initial-scale=1"> | ||
<meta name="description" content="Stefan Schöberl - Software Engineer"> | ||
|
||
<meta name="robots" content="index, follow"> | ||
|
||
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"> | ||
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"> | ||
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"> | ||
<link rel="manifest" href="/site.webmanifest"> | ||
<link rel="stylesheet" href="/css/styles.css"> | ||
<script src="/js/uikit.min.js" defer></script> | ||
<script src="/js/menu.js" defer></script> | ||
</head> | ||
<body class="flex flex-col h-full"> | ||
|
||
<div class="grow shrink-0 bg-slate-50"> | ||
<header class="container-full mx-auto px-0 sm:px-4"> | ||
<nav id="navigation" class="uppercase fixed flex flex-col pt-6 sm:pt-0 bg-zinc-800 w-64 -translate-x-64 ease-out h-screen overflow-y-auto z-20 sm:static sm:flex-row sm:bg-transparent sm:w-auto sm:h-auto sm:transform-none"> | ||
|
||
|
||
|
||
|
||
|
||
<a href="/" class="group text-white | ||
px-5 sm:px-2 py-3 pt-4 sm:pt-6 | ||
border-l-4 sm:border-l-0 | ||
sm:flex flex-row items-center text-zinc-400 sm:text-zinc-500 border-l-transparent border-t-transparent"> | ||
<span class="nav-curly nav-curly-l ">{</span> | ||
Home | ||
<span class="nav-curly nav-curly-r ">}</span> | ||
</a> | ||
|
||
|
||
|
||
|
||
|
||
<a href="/projects" class="group text-white | ||
px-5 sm:px-2 py-3 pt-4 sm:pt-6 | ||
border-l-4 sm:border-l-0 | ||
sm:flex flex-row items-center text-white sm:text-black border-l-sky-600 border-t-sky-600"> | ||
<span class="nav-curly nav-curly-l nav-curly-active">{</span> | ||
Projects | ||
<span class="nav-curly nav-curly-r nav-curly-active">}</span> | ||
</a> | ||
|
||
|
||
|
||
|
||
|
||
<a href="/technologies" class="group text-white | ||
px-5 sm:px-2 py-3 pt-4 sm:pt-6 | ||
border-l-4 sm:border-l-0 | ||
sm:flex flex-row items-center text-zinc-400 sm:text-zinc-500 border-l-transparent border-t-transparent"> | ||
<span class="nav-curly nav-curly-l ">{</span> | ||
Technologies | ||
<span class="nav-curly nav-curly-r ">}</span> | ||
</a> | ||
|
||
|
||
|
||
|
||
|
||
<a href="/about" class="group text-white | ||
px-5 sm:px-2 py-3 pt-4 sm:pt-6 | ||
border-l-4 sm:border-l-0 | ||
sm:flex flex-row items-center text-zinc-400 sm:text-zinc-500 border-l-transparent border-t-transparent"> | ||
<span class="nav-curly nav-curly-l ">{</span> | ||
About me | ||
<span class="nav-curly nav-curly-r ">}</span> | ||
</a> | ||
|
||
</nav> | ||
<div class="flex flex-row uppercase justify-between border-t-2 border-transparent sm:hidden"> | ||
<a href="/" class="pl-4 pt-6 pb-3 text-zinc-500 hover:text-black focus:text-black">schoeberl.dev</a> | ||
<button aria-label="Toggle Mobile Menu" onclick="toggleMobileMenu()" role="button" type="button" class="px-4 pt-6 pb-3 text-zinc-500 hover:text-black focus:text-black focus:outline-none"> | ||
<i class="fas fa-bars text-xl h-6.5 block"></i> | ||
</button> | ||
</div> | ||
<div id="overlay" onclick="toggleMobileMenu()" class="fixed w-screen h-screen bg-black z-10 top-0 left-0 transition-opacity duration-300 invisible opacity-0 sm:hidden"></div> | ||
</header> | ||
|
||
<main class="container mx-auto py-7 flex flex-col lg:block "> <!-- shrink-0 to fix Safari flexbox issue --> | ||
|
||
<div class="lg:float-right lg:top-0 lg:right-0 lg:w-100 card card-rounded overflow-hidden mb-5 lg:mb-0"> | ||
<div class="sm:flex lg:block flex-row items-center sm:border-b border-zinc-200 lg:border-b-0"> <!-- items-center to fix Safari flexbox issue --> | ||
<img class="h-auto border-b border-zinc-200 sm:border-b-0 lg:border-b sm:w-80 md:w-100 lg:w-full" src="/images/algorithmic-photobooks-thumbnail.png" alt="Algorithmic Photo Books"> | ||
<div class="p-8 pb-0 order-first grow"> | ||
|
||
<p class="heading-3">Talk</p> | ||
|
||
<p class="rich-text"> | ||
May 2024 | ||
</p> | ||
</div> | ||
</div> | ||
<div class="p-8 pt-0 sm:p-0 lg:p-8 lg:pt-0 sm:flex lg:block"> | ||
<div class="sm:w-80 md:w-100 lg:w-auto sm:p-8 lg:p-0"> | ||
|
||
<a class="relative block rounded bg-sky-600 text-white text-center py-2 px-10 mb-2 hover:bg-sky-800 focus:bg-sky-800" href="https://github.com/stefanschoeberl/algorithmic-photobooks" target="_blank" rel="noreferrer"> | ||
|
||
<i class="absolute flex items-center justify-center left-0 top-0 w-10 h-full text-lg fab fa-github"></i> | ||
|
||
GitHub | ||
</a> | ||
|
||
<a class="relative block rounded bg-sky-600 text-white text-center py-2 px-10 mb-2 hover:bg-sky-800 focus:bg-sky-800" href="https://github.com/stefanschoeberl/algorithmic-photobooks/raw/master/Slides.pdf" target="_blank" rel="noreferrer"> | ||
|
||
<i class="absolute flex items-center justify-center left-0 top-0 w-10 h-full text-lg fas fa-file"></i> | ||
|
||
Slides | ||
</a> | ||
|
||
|
||
|
||
</div> | ||
<div class="lg:w-auto sm:p-8 lg:p-0 order-first grow"> | ||
|
||
<p class="heading-4 mt-5 sm:mt-0 lg:mt-5">Technologies</p> | ||
<ul class="rich-text no-paragraph"> | ||
|
||
<li>Kotlin</li> | ||
|
||
<li>Apache PDFBox</li> | ||
|
||
</ul> | ||
|
||
</div> | ||
</div> | ||
</div> | ||
<h1 class="order-first lg:mr-110 text-accent">Algorithmic Photo Books</h1> | ||
<div class="lg:mr-110"> | ||
<div class="rich-text text-with-links"><h2>Kotlin DSLs demystified</h2> | ||
<p>Kotlin DSLs (Domain Specific Languages) have found versatile uses across various domains. They find application in Gradle as an alternative to Groovy or in libraries like Ktor for endpoint declaration, Compose for describing UIs, and kotlinx.html as template engine for HTML rendering. One key advantage of such DSLs is their facilitation of type-safe builders, offering a more concise and less verbose API. | ||
In this talk we will deep dive into the mysteries of Kotlin DSLs and reveal which tricks used to create them.</p> | ||
<p>To show all of this in action, a DSL will be live-coded during this talk.</p> | ||
<p>...and, how are photo books involved in all of this?</p> | ||
<h2>Events</h2> | ||
<ul> | ||
<li>May 2024: <a href="http://technologieplauscherl.at/85/" target="_blank" rel="noreferrer">Technologieplauscherl LXXXV</a> @ Tractive</li> | ||
</ul> | ||
</div> | ||
|
||
</div> | ||
|
||
</main> | ||
</div> | ||
<footer class="bg-gradient-to-r from-sky-700 to-blue-900"> | ||
<div class="container text-white mx-auto flex flex-col md:flex-row flex-wrap justify-between items-center"> | ||
<p class="my-4">© Stefan Schöberl 2024</p> | ||
<p class="grow"></p> | ||
<p class="mb-4 md:my-4 flex flex-row flex-wrap md:mr-7 justify-center items-center"> | ||
|
||
<a class="mx-3 border-2 rounded-full border-transparent hover:border-white focus:border-white hover:border-white flex items-center justify-center w-12 h-12" href="https://github.com/stefanschoeberl/" title="GitHub" target="_blank" rel="noreferrer"> | ||
<i class="fab fa-github text-2xl"></i> | ||
</a> | ||
|
||
<a class="mx-3 border-2 rounded-full border-transparent hover:border-white focus:border-white hover:border-white flex items-center justify-center w-12 h-12" href="https://www.linkedin.com/in/stefan-schoeberl/" title="LinkedIn" target="_blank" rel="noreferrer"> | ||
<i class="fab fa-linkedin-in text-2xl"></i> | ||
</a> | ||
|
||
<a class="mx-3 border-2 rounded-full border-transparent hover:border-white focus:border-white hover:border-white flex items-center justify-center w-12 h-12" href="https://www.xing.com/profile/Stefan_Schoeberl8/" title="Xing" target="_blank" rel="noreferrer"> | ||
<i class="fab fa-xing text-2xl"></i> | ||
</a> | ||
|
||
<a class="mx-3 border-2 rounded-full border-transparent hover:border-white focus:border-white hover:border-white flex items-center justify-center w-12 h-12" href="https://orcid.org/0009-0006-0245-3558" title="ORCID" target="_blank" rel="noreferrer"> | ||
<i class="fab fa-orcid text-2xl"></i> | ||
</a> | ||
|
||
<a class="mx-3 border-2 rounded-full border-transparent hover:border-white focus:border-white hover:border-white flex items-center justify-center w-12 h-12" href="https://www.researchgate.net/profile/Stefan-Schoeberl" title="ResearchGate" target="_blank" rel="noreferrer"> | ||
<i class="fab fa-researchgate text-2xl"></i> | ||
</a> | ||
|
||
<a class="mx-3 border-2 rounded-full border-transparent hover:border-white focus:border-white hover:border-white flex items-center justify-center w-12 h-12" href="https://twitter.com/stefanschoeberl" title="Twitter" target="_blank" rel="noreferrer"> | ||
<i class="fab fa-twitter text-2xl"></i> | ||
</a> | ||
|
||
</p> | ||
<a class="mb-4 md:my-4 hover:underline focus:underline" href="/imprint">Impressum</a> | ||
</div> | ||
</footer> | ||
|
||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters