Skip to content

Commit e4a8812

Browse files
Add workshop Joannis.
1 parent b4b0e4f commit e4a8812

File tree

4 files changed

+95
-92
lines changed

4 files changed

+95
-92
lines changed
271 KB
Loading

src/components/Agenda2025.astro

Lines changed: 65 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
import TalkCard from "./TalkCard2025.astro";
2+
import TalkCard from "./TalkCard2024.astro";
33
44
import { getCollection } from "astro:content";
55
@@ -20,13 +20,13 @@ for (const item of allAgendaItems) {
2020
summary: item.data.summary,
2121
};
2222
switch (item.data.date) {
23-
case "2024-11-12":
23+
case "2025-11-11":
2424
workshops.push(talk);
2525
break;
26-
case "2024-11-13":
26+
case "2025-11-12":
2727
day1Talks.push(talk);
2828
break;
29-
case "2024-11-14":
29+
case "2025-11-13":
3030
day2Talks.push(talk);
3131
break;
3232
}
@@ -37,89 +37,66 @@ day1Talks = day1Talks.sort((a, b) => a.time.localeCompare(b.time));
3737
day2Talks = day2Talks.sort((a, b) => a.time.localeCompare(b.time));
3838
---
3939

40-
<div class="agenda-grid">
41-
<h2>Agenda</h2>
42-
<div class="agenda-day">
43-
<h3>2025-11-11 - Workshop</h3>
44-
<div class="talks">
45-
<TalkCard
46-
title="Workshop Day"
47-
description="Full day of hands-on workshops"
48-
time="09:00 - 17:00"
49-
speaker="TBA"
50-
/>
51-
</div>
52-
</div>
40+
<section id="agenda">
41+
<h2>Conference Agenda</h2>
42+
<ul class="day-list">
43+
<li>
44+
<h3>2025-11-11 - Workshops</h3>
45+
<ul class="talk-list">
46+
{workshops.map((talk) => <TalkCard talk={talk} />)}
47+
</ul>
48+
</li>
49+
<li>
50+
<h3>2025-11-12 - Conference Day 1</h3>
51+
<ul class="talk-list">
52+
{day1Talks.map((talk) => <TalkCard talk={talk} />)}
53+
</ul>
54+
</li>
55+
<li>
56+
<h3>2025-11-13 - Conference Day 2</h3>
57+
<ul class="talk-list">
58+
{day2Talks.map((talk) => <TalkCard talk={talk} />)}
59+
</ul>
60+
</li>
61+
</ul>
62+
</section>
5363

54-
<div class="agenda-day">
55-
<h3>2025-11-12 - Conference Day 1</h3>
56-
<div class="talks">
57-
<TalkCard
58-
title="Welcome"
59-
description="Opening of the conference"
60-
time="09:00 - 09:30"
61-
speaker="TBA"
62-
/>
63-
<TalkCard
64-
title="Morning Talks"
65-
description="Series of talks from our speakers"
66-
time="09:30 - 12:30"
67-
speaker="TBA"
68-
/>
69-
<TalkCard
70-
title="Lunch Break"
71-
description="Lunch and networking"
72-
time="12:30 - 13:30"
73-
speaker="TBA"
74-
/>
75-
<TalkCard
76-
title="Afternoon Talks"
77-
description="More talks from our speakers"
78-
time="13:30 - 17:00"
79-
speaker="TBA"
80-
/>
81-
<TalkCard
82-
title="Drinks & Networking"
83-
description="Social event and networking"
84-
time="17:00 - 19:00"
85-
speaker="TBA"
86-
/>
87-
</div>
88-
</div>
64+
<style>
65+
section {
66+
margin-top: 4rem;
67+
}
68+
69+
h2 {
70+
font-size: 36px;
71+
line-height: 48px;
72+
letter-spacing: -1px;
73+
font-weight: 800;
74+
margin: 0;
75+
}
76+
77+
h3 {
78+
font-size: 28px;
79+
line-height: 40px;
80+
letter-spacing: -1px;
81+
border-left: 8px solid var(--my-blue);
82+
padding-left: 1rem;
83+
padding-top: 0.5rem;
84+
padding-bottom: 0.5rem;
85+
border-radius: 8px;
86+
background: var(--my-blue-background);
87+
}
8988

90-
<div class="agenda-day">
91-
<h3>2025-11-13 - Conference Day 2</h3>
92-
<div class="talks">
93-
<TalkCard
94-
title="Welcome"
95-
description="Opening of day 2"
96-
time="09:00 - 09:30"
97-
speaker="TBA"
98-
/>
99-
<TalkCard
100-
title="Morning Talks"
101-
description="Series of talks from our speakers"
102-
time="09:30 - 12:30"
103-
speaker="TBA"
104-
/>
105-
<TalkCard
106-
title="Lunch Break"
107-
description="Lunch and networking"
108-
time="12:30 - 13:30"
109-
speaker="TBA"
110-
/>
111-
<TalkCard
112-
title="Afternoon Talks"
113-
description="More talks from our speakers"
114-
time="13:30 - 17:00"
115-
speaker="TBA"
116-
/>
117-
<TalkCard
118-
title="Closing Party"
119-
description="Final celebration and networking"
120-
time="17:00 - 20:00"
121-
speaker="TBA"
122-
/>
123-
</div>
124-
</div>
125-
</div>
89+
p {
90+
font-size: 18px;
91+
line-height: 28px;
92+
margin: 0;
93+
}
94+
95+
ul {
96+
padding-inline-start: 0rem;
97+
}
98+
99+
li {
100+
list-style: none;
101+
}
102+
</style>
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
title: 'Workshop: Building Connected Devices with Embedded Swift'
3+
date: '2025-11-11'
4+
time: '09:00'
5+
name: 'Joannis Orlandos'
6+
image: '/images/speakers/2025/joannis.jpg'
7+
type: 'Workshop'
8+
summary: 'Explore the world of embedded development using Swift!'
9+
---
10+
11+
In this hands-on workshop, you’ll build real IoT-style applications using microcontrollers and embedded Linux boards with WiFi, GPIO, and BLE capabilities — all programmed in Swift.
12+
13+
During this workshop you’ll use Swift to:
14+
- Create a custom Bluetooth service to broadcast device states.
15+
- Control your hardware device from a mobile device
16+
- Learn basic hardware skills like controlling a LED, and observing a sensor or button
17+
18+
Join us and discover how far Swift can take you. Whether you’re building the next smart device or just love pushing the boundaries of what Swift can do, this workshop will get you there!
19+
20+
**Note:** Hardware included.
21+
22+
## Joannis Orlandos
23+
24+
Joannis Orlandos is a pioneer in the cross-platform Swift ecosystem. As a member of various workgroups, including the Swift Server and Android workgroups, Joannis helps drive the ecosystem in new directions. As a maintainer of widely used opensource projects like Vapor 3, Hummingbird 2 and MongoKitten, his work powers critical infrastructure at many companies including Apple
25+
26+
Through his company, Unbeatable Software B.V., he builds full-stack Swift products including scalable backends, apps and embedded software. Joannis is passionate about bringing Swift to all corners of the world, empowering developers to build performant and safe code that’s highly maintainable and expressive.

src/pages/index.astro

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,9 @@ import CallForPapers from "../components/CallForPapers.astro";
7272
description="More info coming soon."
7373
/>
7474
<Card
75-
title="Workshop: TBA"
75+
title="Workshop: Building Connected Devices with Embedded Swift"
7676
body="November 11"
77-
description="More info coming soon."
77+
description="Explore the world of embedded development using Swift!"
7878

7979
/>
8080
<Card
@@ -101,9 +101,9 @@ import CallForPapers from "../components/CallForPapers.astro";
101101
<CallForPapers />
102102
</section>
103103

104-
<!-- <section class="agenda">
104+
<section class="agenda">
105105
<Agenda />
106-
</section> -->
106+
</section>
107107

108108
<!-- <section class="speakers">
109109
<Speakers />

0 commit comments

Comments
 (0)