Skip to content

Commit 2ead8c2

Browse files
authored
Merge pull request #193 from atbrakhi/ubuntu-summit
Add slides for ubuntu summit
2 parents 41bac3b + dbeded9 commit 2ead8c2

File tree

3 files changed

+396
-0
lines changed

3 files changed

+396
-0
lines changed
123 KB
Loading

assets/img/trace-twgl.jpg

336 KB
Loading

slides/ubuntu.md

Lines changed: 396 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,396 @@
1+
---
2+
layout: slides-new.html
3+
title: Servo @ Ubuntu Summit 2024
4+
---
5+
<!-- .slide: class="cover" -->
6+
7+
<img src="/img/servo-color-negative-no-container-600.png" style="margin: 2em;" alt="Servo logo" />
8+
9+
<h4 style="line-height: 1.4">
10+
The
11+
<span style="color: #4fc066;">embeddable</span>,
12+
<span style="color: #209e9b;">independent</span>,
13+
<span style="color: #f03278;">memory-safe</span>,
14+
<span style="color: #f68243;">modular</span>,
15+
<span style="color: #faae30;">parallel</span>
16+
web rendering engine
17+
<br>
18+
</h4>
19+
<div style="font-size: 60%; margin-top: 4em;">
20+
21+
Rakhi Sharma (She/her) <[email protected]>
22+
23+
</div>
24+
-----
25+
<!-- .slide: style="text-align: left;" -->
26+
## About me
27+
28+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
29+
30+
* **Open Source Engineer** working on Servo
31+
32+
* **Igalia** Web Platform Team
33+
34+
* **Servo** Technical Steering Committee (TSC) member
35+
36+
* **atbrakhi** on internet
37+
38+
<div style="float: left; width: 30%; margin-inline: 3%;">
39+
40+
-----
41+
<!-- .slide: style="text-align: left;" -->
42+
## Web engine for the future 🔮
43+
44+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
45+
46+
* written in <span style="color: #4fc066;">**Rust**</span>,
47+
* with <span style="color: #209e9b;">**WebGL**</span> and <span style="color: #209e9b;">**WebGPU**</span> support,
48+
* and adaptable to <span style="color: #f03278;">**desktop**</span>, <span style="color: #f03278;">**mobile**, **Rpi**</span>,
49+
* and <span style="color: #faae30;">**embedded**</span> applications.
50+
51+
<div style="float: left; width: 30%; margin-inline: 3%;">
52+
53+
-----
54+
<!-- .slide: style="text-align: left;" -->
55+
56+
## Journey so far 📈
57+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
58+
59+
* 2012: Started at Mozilla
60+
* 2020: Mozilla's layoffs impacted the Servo team
61+
* 2020: Joined Linux Foundation
62+
* 2022: Talks about restarting Servo, but how?
63+
* 2023: Team formed and restarted at Igalia
64+
* 2024: Continuous work on Layout, Embedding, Android
65+
66+
<div style="font-size: 80%; margin-inline: -3.5em; margin-top: 1.5em;">
67+
-----
68+
<!-- .slide: style="text-align: left;" -->
69+
## Servo 💚 Rust
70+
71+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
72+
73+
2012: Rust and Servo Team at Mozilla Research
74+
75+
76+
<iframe src="https://giphy.com/embed/ru7IH0oTmfIK6tRTId" width="480" height="398" style="display: block; margin: auto;" frameBorder="0" class="giphy-embed" allowFullScreen></iframe>
77+
78+
<div style="float: left; width: 30%; margin-inline: 3%;">
79+
-----
80+
81+
<!-- .slide: style="text-align: left;" -->
82+
83+
## Contributions over time
84+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
85+
86+
<img src="/img/commit-numbers-ubuntu-summit.png" alt="Contributors graph from https://github.com/servo/servo/graphs/contributors showing a very slow period from mid-2020 to end of 2023, and a bigger activity in 2023 & 2024." />
87+
88+
<div style="font-size: 80%; margin-inline: -3.5em; margin-top: 1.5em;">
89+
90+
-----
91+
<!-- .slide: style="text-align: left;" -->
92+
93+
## What are we up to?
94+
95+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
96+
97+
* Embedding
98+
* Layout
99+
* Benchmarking
100+
101+
<div style="float: left; width: 30%; margin-inline: 3%;">
102+
103+
-----
104+
<!-- .slide: style="text-align: left;" -->
105+
106+
### Embedding 🔗
107+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
108+
109+
* Embed Servo in applications
110+
* Applications can use Servo to render web content
111+
* Provide good API for embedders
112+
* Servo on embedded devices (e.g. Raspberry Pi, OpenHarmony)
113+
114+
<div style="float: left; width: 30%; margin-inline: 3%;">
115+
-----
116+
<!-- .slide: style="text-align: left;" -->
117+
118+
### Tauri <> Wry <> Servo 🔗
119+
120+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
121+
122+
<figure class=_fig id=_wry_demo_fig>
123+
<iframe src="/img/blog/embedding-2024-01/demo-with-decorations-too.html" id=_wry_demo></iframe>
124+
</figure>
125+
126+
<div style="float: left; width: 30%; margin-inline: 3%;">
127+
128+
-----
129+
130+
<!-- .slide: style="text-align: left;" -->
131+
132+
## Verso: browser using Servo as a web engine!
133+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
134+
135+
136+
<a href="https://github.com/versotile-org/verso/">
137+
<img src="/img/servo-verso-example.gif" alt="Example of Verso browser based on Servo" />
138+
</a>
139+
</div>
140+
141+
-----
142+
<!-- .slide: style="text-align: left;" -->
143+
144+
## Dioxus (Stylo-Blitz)
145+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
146+
147+
Use Stylo for CSS styles and selectors matching
148+
149+
<img src="/img/2024-02-fosdem-dioxus.png" alt="image showing stylo-dioxus experiment"/>
150+
151+
-----
152+
<!-- .slide: style="text-align: left;" -->
153+
154+
## KDAB QT
155+
156+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
157+
158+
<div style="float: left; width: 40%;">
159+
160+
* Servo inside Qt, using KDAB's CXX-Qt library as bridge
161+
162+
* CXX-Qt is a safe interop between Rust and Qt
163+
164+
</div>
165+
<div style="float: right; width: 55%; margin-top: 3%;">
166+
<img src="/img/2024-04-16-OSS-NA-KDAB.png" alt="image showing Servo running using KDAB QT" />
167+
</div>
168+
169+
<div style="float: left; width: 30%; margin-inline: 3%;">
170+
171+
-----
172+
<!-- .slide: style="text-align: left;" -->
173+
174+
## Minibrowser
175+
176+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
177+
178+
<img src="/img/2024-02-fosdem-minibrowser.png" alt="image showing Servo minibrowser" />
179+
180+
<div style="float: left; width: 30%; margin-inline: 3%;">
181+
182+
-----
183+
184+
<!-- .slide: style="text-align: left;" -->
185+
186+
## Recent Layout work
187+
188+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
189+
190+
* Flexbox, parllel table, Floats, Font Fallback
191+
* Right-to-left languages Support
192+
193+
194+
<div style="float: left; margin-left: 1em;">
195+
<div style="float: left; margin-left: 1em;">
196+
<img style="width: 9em; height:11em; margin: 0;" src="/img/blog/features-august-2024.png" alt="Example of Servo rendering a table using flexbox" />
197+
<img style="width: 9em; height:11em; margin: 0;" src="/img/blog/font-fallback.png" alt="Example of Servo rendering chinese, korean and japanese characters" />
198+
</div>
199+
</div>
200+
201+
-----
202+
203+
<!-- .slide: style="text-align: left;" -->
204+
205+
## Benchmarking
206+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
207+
208+
* New experimental profiling support
209+
* Servo Benchmarking report on Servo wiki: https://github.com/servo/servo/wiki
210+
211+
<img src="/img/trace-twgl.jpg" alt="Screenshot of servo's demo benchmarking using tracing perfetto" />
212+
213+
<div style="float: left; width: 30%; margin-inline: 3%;">
214+
-----
215+
216+
<!-- .slide: style="text-align: left;" -->
217+
218+
### Future is here 📱
219+
220+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
221+
222+
<div class="ffragment" style="float: left; width: 49%; margin-right: 2%;">
223+
224+
<img style="margin-block: 0; height: 14em;" src="/img/servo-android-2024-09.jpg" alt="Screenshot of Servo running on Android opening servo.org homepage" />
225+
226+
<blockquote style="background: rgba(0, 0, 0, 0.75); position: relative; top: -4em; font-size: 80%; width: 70%; padding-inline: 20px;">
227+
Android
228+
</blockquote>
229+
230+
</div>
231+
232+
<div class="ffragment" style="float: left; width: 49%;">
233+
234+
<img style="margin-block: 0; height: 14em;" src="/img/servo-openharmony-2024-09.jpg" alt="Screenshot of Servo running on OpenHarmony opening Servo's wikipedia page" />
235+
236+
<blockquote style="background: rgba(0, 0, 0, 0.75); position: relative; top: -4em; font-size: 80%; width: 70%; padding-inline: 20px;">
237+
OpenHarmony
238+
</blockquote>
239+
240+
</div>
241+
242+
-----
243+
244+
<!-- .slide: style="text-align: left;" -->
245+
246+
## Community <3
247+
248+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
249+
250+
* Servo participated in Outreachy last round
251+
* Participating again in winter cohort
252+
* Outreachy is a 3 month paid remote internship program
253+
254+
> New **contributors are welcomed**
255+
256+
<div style="float: left; width: 30%; margin-inline: 3%;">
257+
-----
258+
<!-- .slide: style="text-align: left;" -->
259+
260+
### What's Next?
261+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
262+
263+
* Growing a **healthy ecosystem**
264+
* Multiple organizations **joining efforts**
265+
* Public and private sector **funding**
266+
* Performance, Benchmarking, HTML & CSS features
267+
268+
</div>
269+
<div style="float: left; width: 30%;">
270+
271+
-----
272+
273+
<!-- .slide: style="text-align: left;" -->
274+
275+
### Support us 💚
276+
277+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
278+
279+
* GitHub sponsors:
280+
https://github.com/sponsors/servo
281+
* OpenCollective:
282+
https://opencollective.com/servo
283+
284+
> 350 people and organizations donating more than 16,000 USD!
285+
286+
-----
287+
<!-- .slide: style="text-align: left;" -->
288+
## Join the project 🤝
289+
<div style="width: 50px; height: 10px; background: #488bd1; margin-bottom: 20px;"></div>
290+
291+
* GitHub: <a href="https://github.com/servo"><code>github.com/servo</code></a>
292+
* Chat: <a href="https://servo.zulipchat.com/"><code>servo.zulipchat.com</code></a>
293+
* Email: <a href="mailto:[email protected]"><code>[email protected]</code></a>
294+
* Sponsor: [GitHub](https://github.com/sponsors/servo) & [Open Collective](https://opencollective.com/servo)
295+
296+
<br>
297+
<br>
298+
299+
> Looking into **growing the community around the project**
300+
301+
-----
302+
303+
<!-- .slide: class="last" style="text-align: left;" -->
304+
305+
<div style="float: left; font-size: 80%; margin-bottom: 5em;">
306+
307+
<a href="https://servo.org" style="color: #4fc066;"><code>https://</code><code style="font-weight: 700;">servo.org</code></a>
308+
309+
<a href="https://floss.social/@servo" style="color: #4fc066;"><code>https://floss.social/</code><code style="font-weight: 700;">@servo</code></a>
310+
311+
<a href="https://twitter.com/ServoDev" style="color: #4fc066;"><code>https://twitter.com/</code><code style="font-weight: 700;">ServoDev</code></a>
312+
313+
<a href="https://bsky.app/profile/servo.org" style="color: #4fc066;"><code>https://bsky.app/</code><code style="font-weight: 700;">servo.org</code></a>
314+
315+
</div>
316+
317+
<img src="/img/servo-qr.png" style="width: 20%; margin-left: 3em;" alt="QR code with Servo logo pointing to servo.org website" />
318+
319+
320+
<style>
321+
/* guaranteed minimum width for first paragraph after a float */
322+
.
323+
_floatmin {
324+
display: block;
325+
width: 13em;
326+
overflow: hidden;
327+
}
328+
._none {
329+
display: none;
330+
}
331+
._fig:not(#specificity) {
332+
width: 33em;
333+
max-width: 100%;
334+
margin: 1em auto;
335+
}
336+
._fig > ._flex {
337+
display: flex;
338+
}
339+
._fig._min {
340+
width: min-content;
341+
}
342+
._fig table {
343+
text-align: initial;
344+
}
345+
._fig figcaption._notes {
346+
text-align: left;
347+
width: max-content;
348+
max-width: 100%;
349+
}
350+
._figl:not(#specificity),
351+
._figr:not(#specificity) {
352+
margin: 0 1em 1em;
353+
}
354+
._figl {
355+
float: left;
356+
}
357+
._figr {
358+
float: right;
359+
}
360+
._figl > iframe,
361+
._figr > iframe,
362+
._figl > a > img,
363+
._figr > a > img {
364+
width: 17em;
365+
max-width: max-content;
366+
}
367+
._figl._default > iframe,
368+
._figr._default > iframe,
369+
._figl._default > a > img,
370+
._figr._default > a > img {
371+
width: auto;
372+
max-width: 100%;
373+
}
374+
._runin {
375+
margin-bottom: 1em;
376+
}
377+
._runin > p,
378+
._runin > h2 {
379+
display: inline;
380+
}
381+
._correction {
382+
max-width: 33em;
383+
margin: 1em auto;
384+
border-bottom: 1px solid;
385+
padding-bottom: 1em;
386+
}
387+
#_wry_demo_fig:not(#specificity) {
388+
width: 100%;
389+
}
390+
#_wry_demo {
391+
margin: 0 auto;
392+
display: block;
393+
height: min(calc(100vh - 9em), 400px);
394+
width: 100%;
395+
}
396+
</style>

0 commit comments

Comments
 (0)