diff --git a/config.toml b/config.toml
index d2761190..3635ee0e 100644
--- a/config.toml
+++ b/config.toml
@@ -59,6 +59,12 @@ pluralizelisttitles = false
weight = 6
parent = "menu.abt"
+[[menu.main]]
+ name = "SIGSOFT50"
+ url = "/sigsoft50"
+ weight = 7
+ parent = "menu.abt"
+
[[menu.main]]
diff --git a/content/sigsoft50.html b/content/sigsoft50.html
new file mode 100644
index 00000000..012cad41
--- /dev/null
+++ b/content/sigsoft50.html
@@ -0,0 +1,188 @@
++++
+title = "SIGSOFT50"
+type = "page"
++++
+
+
+
+ ACM SIGSOFT 50th Anniversary Celebration
+ A story of people, institutions, memory, and renewal
+ At FSE 2026 in Montreal, the software engineering community gathered to mark fifty years of SIGSOFT and to ask what the next fifty should make possible.
+ The celebration brought together reflections on SIGSOFT's role in the field, recognition of lasting contributions, remembrance of colleagues who shaped the community, and questions about what SIGSOFT should make possible next.
+
+
+
+
+
+
Overview
+
What the Celebration Covered
+
SIGSOFT50 was organized around a simple arc: understand the role SIGSOFT has played, honor the people who built the field, remember colleagues whose work shaped the community, and gather ideas for the future.
+
+
+
+
+
+
+
Celebration Arc
+
From Fifty Years to the Next Fifty
+
+
+
+
+
Act 01
+
Foundations: What SIGSOFT Makes Possible
+
The celebration begins by naming SIGSOFT's role: a volunteer-led professional society that supports the research, publication, conference, policy, and community infrastructure software engineering depends on.
+
+
+
+
Fifty years in Montreal
+
What is SIGSOFT?
+
The community gathers
+
The field takes shape
+
A growing discipline
+
Infrastructure that works when it is invisible
+
+
Why celebrate fifty years?
+
What the day should accomplish
+
The plan for the celebration
+
Looking back
+
+
+
+
+
+
Act 02
+
Recognition: The SIGSOFT Software Engineering Academy
+
The celebration introduces the Academy as a standing body of honor, recognizing members of the software engineering community whose significant and lasting contributions shaped the field.
+
+
+
Writing SIGSOFT into public memory
+
SIGSOFT on Wikipedia
+
Shared history
+
What the public record captures
+
A bridge to recognition
+
The Academy's purpose
+
What the Academy honors
+
Selecting the inaugural class
+
The inaugural class begins
+
People behind the field
+
Research lineages
+
Influence across areas
+
Honoring sustained contribution
+
A collective foundation
+
The field as a network
+
Recognition as stewardship
+
Back to SIGSOFT
+
Get involved
+
+
+
+
+
+
Act 03
+
Memory: History and Remembrance
+
The celebration turns to SIGSOFT history and then to remembrance, acknowledging colleagues whose scholarship, leadership, and service continue to shape the community.
+
+
+
SIGSOFT history
+
+
+
Looking back together
+
+
+
+
Remembering David Notkin
+
+
SIGSOFT remembers
+
Nico Habermann
+
Harlan Mills
+
John D. Gannon
+
John Vlissides
+
Meir "Manny" Lehman
+
David Notkin
+
Mary Jean Harrold
+
William Riddle
+
John C. Knight
+
Les Belady
+
Ivica Crnkovic
+
Barry Boehm
+
Niklaus Wirth
+
Dewayne E. Perry
+
Koichi Kishida
+
Peter G. Neumann
+
Panel transition
+
Coffee break
+
+
+
+
+
+
Act 04
+
Future: Questions for the Next Fifty Years
+
The final part turns outward: welcoming research communities, convening a forward-looking panel, and inviting participants to design the future of SIGSOFT together.
+
+
+
+
+
Hello from research
+
+
Looking forward
+
+
+
A bridge to the future
+
+
The forward-looking panel
+
Meet the panelists
+
Questions that matter
+
Interactive futures workshop
+
Workshop goal
+
Sticky-note prompt
+
Themes for discussion
+
Questions to discuss
+
Showtime
+
Discussion and thanks
+
+
+
+
+
+
+
Reference
+
Program Materials
+
The full opening program is also available as a compact PDF for archival use.
+
Open the PDF
+
+
+
+
+
diff --git a/layouts/index.html b/layouts/index.html
new file mode 100644
index 00000000..8717ad58
--- /dev/null
+++ b/layouts/index.html
@@ -0,0 +1,39 @@
+
+
+
+
+ {{ partial "headers.html" . }}
+ {{ partial "custom_headers.html" . }}
+
+
+
+
+
+
+ {{ partial "top.html" . }}
+
+ {{ partial "nav.html" . }}
+
+ {{ partial "carousel.html" . }}
+
+ {{ partial "features.html" . }}
+
+ {{ partial "sigsoft50_highlight.html" . }}
+
+ {{ partial "testimonials.html" . }}
+
+ {{ partial "see_more.html" . }}
+
+ {{ partial "recent_posts.html" . }}
+
+ {{ partial "clients.html" . }}
+
+ {{ partial "footer.html" . }}
+
+
+
+
+ {{ partial "scripts.html" . }}
+
+
+
diff --git a/layouts/partials/sigsoft50_highlight.html b/layouts/partials/sigsoft50_highlight.html
new file mode 100644
index 00000000..723c6206
--- /dev/null
+++ b/layouts/partials/sigsoft50_highlight.html
@@ -0,0 +1,23 @@
+
+
+
+
+
50th Anniversary
+
SIGSOFT50
+
+ A story of people, institutions, memory, and renewal from the ACM SIGSOFT 50th Anniversary Celebration.
+
+
+
+ Explore the Celebration
+
+
+
+
+
+
+
diff --git a/static/css/custom.css b/static/css/custom.css
index 5e37bc8f..0afb5d0f 100644
--- a/static/css/custom.css
+++ b/static/css/custom.css
@@ -1,4 +1,475 @@
/* your styles go here */
+
+@media (min-width: 1200px) {
+ #navbar .container {
+ align-items: center;
+ display: flex;
+ }
+
+ #navbar .navbar-header {
+ flex: 0 0 auto;
+ }
+
+ #navbar .navbar-brand {
+ height: auto;
+ padding-bottom: 12px;
+ padding-top: 12px;
+ }
+
+ #navbar .navbar-brand img {
+ max-height: 54px;
+ width: auto;
+ }
+
+ #navbar .navbar-collapse {
+ flex: 1 1 auto;
+ padding-left: 18px;
+ }
+
+ #navbar .navbar-nav.navbar-right {
+ align-items: center;
+ display: flex;
+ float: none !important;
+ justify-content: flex-end;
+ margin: 0;
+ width: 100%;
+ }
+
+ #navbar .navbar-nav > li {
+ float: none;
+ }
+
+ #navbar .navbar-nav > li > a {
+ padding: 28px 10px;
+ white-space: nowrap;
+ }
+}
+
+@media (min-width: 1200px) and (max-width: 1450px) {
+ #navbar .navbar-brand img {
+ max-height: 46px;
+ }
+
+ #navbar .navbar-collapse {
+ padding-left: 10px;
+ }
+
+ #navbar .navbar-nav > li > a {
+ font-size: 13px;
+ padding-left: 7px;
+ padding-right: 7px;
+ }
+}
+
+.sigsoft50-highlight {
+ border-bottom: 1px solid #eeeeee;
+}
+
+.sigsoft50-highlight__row {
+ align-items: center;
+ display: flex;
+}
+
+.sigsoft50-highlight__eyebrow {
+ color: #467fbf;
+ font-size: 13px;
+ font-weight: 700;
+ letter-spacing: 0;
+ margin-bottom: 8px;
+ text-transform: uppercase;
+}
+
+.sigsoft50-highlight h2 {
+ font-size: 30px;
+ margin-top: 0;
+}
+
+.sigsoft50-highlight .lead {
+ margin-bottom: 24px;
+}
+
+.sigsoft50-highlight__image {
+ border: 1px solid #dddddd;
+ display: block;
+ padding: 8px;
+}
+
+.sigsoft50-highlight__image img {
+ display: block;
+ height: auto;
+ width: 100%;
+}
+
+@media (max-width: 991px) {
+ .sigsoft50-highlight__row {
+ display: block;
+ }
+
+ .sigsoft50-highlight__image {
+ margin-top: 22px;
+ }
+}
+
+.sigsoft50-page {
+ color: #2f2f2f;
+ font-size: 16px;
+ line-height: 1.6;
+}
+
+.sigsoft50-hero {
+ background: #f6f8fb;
+ border: 1px solid #e3e8ef;
+ margin-bottom: 36px;
+ padding: 36px;
+}
+
+.sigsoft50-hero h2 {
+ color: #1f3f68;
+ font-size: 34px;
+ letter-spacing: 0;
+ line-height: 1.15;
+ margin: 0 0 14px;
+}
+
+.sigsoft50-lead {
+ color: #23384f;
+ font-size: 22px;
+ line-height: 1.35;
+ margin-bottom: 14px;
+}
+
+.sigsoft50-eyebrow {
+ color: #467fbf;
+ font-size: 13px;
+ font-weight: 700;
+ letter-spacing: 0;
+ margin-bottom: 8px;
+ text-transform: uppercase;
+}
+
+.sigsoft50-actions {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 10px;
+ margin-top: 24px;
+}
+
+.sigsoft50-section {
+ border-top: 1px solid #e6e6e6;
+ padding: 34px 0;
+}
+
+.sigsoft50-section-heading {
+ max-width: 760px;
+}
+
+.sigsoft50-section-heading h2 {
+ color: #242424;
+ font-size: 30px;
+ letter-spacing: 0;
+ margin-top: 0;
+}
+
+.sigsoft50-outline {
+ display: grid;
+ gap: 16px;
+ grid-template-columns: repeat(4, minmax(0, 1fr));
+ margin-top: 24px;
+}
+
+.sigsoft50-outline a {
+ border: 1px solid #dddddd;
+ color: #333333;
+ display: block;
+ min-height: 190px;
+ padding: 18px;
+ text-decoration: none;
+}
+
+.sigsoft50-outline a:hover,
+.sigsoft50-outline a:focus {
+ border-color: #467fbf;
+ box-shadow: 0 3px 14px rgba(37, 63, 92, 0.14);
+ color: #333333;
+ text-decoration: none;
+}
+
+.sigsoft50-outline span {
+ color: #467fbf;
+ display: block;
+ font-size: 28px;
+ font-weight: 700;
+ line-height: 1;
+ margin-bottom: 14px;
+}
+
+.sigsoft50-outline strong {
+ color: #23384f;
+ display: block;
+ font-size: 19px;
+ margin-bottom: 10px;
+}
+
+.sigsoft50-outline em {
+ color: #666666;
+ display: block;
+ font-style: normal;
+ line-height: 1.45;
+}
+
+.sigsoft50-embed-placeholder {
+ align-items: center;
+ aspect-ratio: 16 / 9;
+ background: #1f2f44;
+ color: #ffffff;
+ display: flex;
+ font-size: 18px;
+ font-weight: 700;
+ justify-content: center;
+ min-height: 320px;
+ text-align: center;
+}
+
+.sigsoft50-story {
+ padding-bottom: 10px;
+}
+
+.sigsoft50-act {
+ margin-top: 36px;
+}
+
+.sigsoft50-act-intro {
+ background: #f7f8fa;
+ border-left: 5px solid #467fbf;
+ margin-bottom: 20px;
+ padding: 22px 24px;
+}
+
+.sigsoft50-act-intro span {
+ color: #467fbf;
+ display: block;
+ font-size: 13px;
+ font-weight: 700;
+ letter-spacing: 0;
+ margin-bottom: 8px;
+ text-transform: uppercase;
+}
+
+.sigsoft50-act-intro h3 {
+ color: #23384f;
+ font-size: 25px;
+ letter-spacing: 0;
+ margin: 0 0 8px;
+}
+
+.sigsoft50-act-intro p {
+ margin-bottom: 0;
+ max-width: 850px;
+}
+
+.sigsoft50-frame-grid {
+ display: block;
+}
+
+.sigsoft50-bootstrap-carousel .carousel-inner {
+ overflow: hidden;
+}
+
+.sigsoft50-frame-grid figure {
+ border: 1px solid #dddddd;
+ margin: 0;
+ padding: 10px;
+}
+
+.sigsoft50-frame-grid img {
+ background: #f2f2f2;
+ display: block;
+ height: auto;
+ width: 100%;
+}
+
+.sigsoft50-frame-grid figcaption {
+ align-items: center;
+ border-top: 1px solid #eeeeee;
+ display: flex;
+ flex-wrap: wrap;
+ gap: 14px;
+ justify-content: space-between;
+ margin-top: 10px;
+ padding: 14px 4px 4px;
+}
+
+.sigsoft50-frame-grid figcaption strong {
+ color: #23384f;
+ display: block;
+ flex: 1 1 auto;
+ font-size: 18px;
+ margin-bottom: 4px;
+ min-width: 180px;
+}
+
+.sigsoft50-carousel-controls {
+ align-items: center;
+ display: flex;
+ gap: 14px;
+ justify-content: flex-end;
+ margin: 0;
+}
+
+.sigsoft50-carousel-button {
+ align-items: center;
+ background: #ffffff;
+ border: 1px solid #cfd8e3;
+ color: #23384f;
+ display: inline-flex;
+ font-size: 20px;
+ font-weight: 700;
+ height: 42px;
+ justify-content: center;
+ line-height: 1;
+ padding: 0;
+ width: 42px;
+}
+
+.sigsoft50-carousel-button:hover,
+.sigsoft50-carousel-button:focus {
+ background: #467fbf;
+ border-color: #467fbf;
+ color: #ffffff;
+ outline: none;
+}
+
+.sigsoft50-carousel-counter {
+ background: #f6f8fb;
+ border: 1px solid #cfd8e3;
+ color: #23384f;
+ font-size: 17px;
+ font-weight: 700;
+ min-width: 128px;
+ padding: 8px 12px;
+ text-align: center;
+}
+
+.sigsoft50-story-video {
+ border: 1px solid #dddddd;
+ margin: 0;
+ padding: 10px;
+}
+
+.sigsoft50-story-video iframe {
+ aspect-ratio: 16 / 9;
+ border: 0;
+ display: block;
+ width: 100%;
+}
+
+.sigsoft50-story-video-caption {
+ align-items: center;
+ border-top: 1px solid #eeeeee;
+ display: flex;
+ flex-wrap: wrap;
+ gap: 14px;
+ justify-content: space-between;
+ margin-top: 10px;
+ padding: 14px 4px 4px;
+}
+
+.sigsoft50-story-video-caption strong {
+ color: #23384f;
+ display: block;
+ flex: 1 1 auto;
+ font-size: 18px;
+ margin-bottom: 4px;
+ min-width: 180px;
+}
+
+.sigsoft50-arc {
+ display: grid;
+ gap: 18px;
+ grid-template-columns: repeat(3, minmax(0, 1fr));
+ margin-top: 20px;
+}
+
+.sigsoft50-arc div {
+ border-left: 4px solid #467fbf;
+ padding: 0 8px 0 16px;
+}
+
+.sigsoft50-arc span {
+ color: #467fbf;
+ display: block;
+ font-size: 24px;
+ font-weight: 700;
+ margin-bottom: 8px;
+}
+
+.sigsoft50-arc h3 {
+ font-size: 18px;
+ letter-spacing: 0;
+ margin: 0 0 8px;
+}
+
+.sigsoft50-gallery-title {
+ color: #23384f;
+ font-size: 22px;
+ letter-spacing: 0;
+ margin: 32px 0 16px;
+}
+
+.sigsoft50-slide-gallery {
+ display: grid;
+ gap: 18px;
+ grid-template-columns: repeat(2, minmax(0, 1fr));
+}
+
+.sigsoft50-slide-gallery figure {
+ border: 1px solid #dddddd;
+ margin: 0;
+ padding: 8px;
+}
+
+.sigsoft50-slide-gallery img {
+ background: #f2f2f2;
+ display: block;
+ height: auto;
+ width: 100%;
+}
+
+.sigsoft50-slide-gallery figcaption {
+ color: #666666;
+ font-size: 13px;
+ margin-top: 6px;
+}
+
+@media (max-width: 991px) {
+ .sigsoft50-arc,
+ .sigsoft50-outline {
+ grid-template-columns: 1fr;
+ }
+
+ .sigsoft50-slide-gallery,
+ .sigsoft50-frame-grid {
+ grid-template-columns: 1fr;
+ }
+
+ .sigsoft50-carousel-controls {
+ justify-content: center;
+ }
+}
+
+@media (max-width: 640px) {
+ .sigsoft50-hero {
+ padding: 24px 18px;
+ }
+
+ .sigsoft50-hero h2 {
+ font-size: 28px;
+ }
+
+ .sigsoft50-lead {
+ font-size: 19px;
+ }
+}
/* Example site test */
.box-image-text .image {
@@ -21,4 +492,4 @@ table {
td, th {
border: 1px solid #333;
padding: 0 .2em;
-}
\ No newline at end of file
+}
diff --git a/static/js/sigsoft50.js b/static/js/sigsoft50.js
new file mode 100644
index 00000000..4383441c
--- /dev/null
+++ b/static/js/sigsoft50.js
@@ -0,0 +1,87 @@
+(function () {
+ function makeButton(label, direction) {
+ var button = document.createElement("button");
+ button.className = "sigsoft50-carousel-button";
+ button.type = "button";
+ button.setAttribute("aria-label", label);
+ button.innerHTML = direction === "previous" ? "←" : "→";
+ return button;
+ }
+
+ function initCarousel(track, index) {
+ if (!window.jQuery || !window.jQuery.fn.carousel) {
+ return;
+ }
+
+ var frames = Array.prototype.slice.call(track.children);
+ if (!frames.length) {
+ return;
+ }
+
+ var carouselId = "sigsoft50-carousel-" + (index + 1);
+ var inner = document.createElement("div");
+ var controls = document.createElement("div");
+ var previous = makeButton("Previous frame", "previous");
+ var next = makeButton("Next frame", "next");
+ var counter = document.createElement("span");
+
+ track.id = carouselId;
+ track.classList.add("carousel", "slide", "sigsoft50-bootstrap-carousel");
+ track.setAttribute("data-interval", "false");
+ track.setAttribute("data-ride", "false");
+
+ inner.className = "carousel-inner";
+ inner.setAttribute("role", "listbox");
+ controls.className = "sigsoft50-carousel-controls";
+ counter.className = "sigsoft50-carousel-counter";
+
+ frames.forEach(function (frame, frameIndex) {
+ var item = document.createElement("div");
+ item.className = frameIndex === 0 ? "item active" : "item";
+ item.appendChild(frame);
+ inner.appendChild(item);
+ });
+
+ track.appendChild(inner);
+ controls.appendChild(previous);
+ controls.appendChild(counter);
+ controls.appendChild(next);
+
+ var carousel = window.jQuery(track);
+
+ function updateCounter() {
+ var active = inner.querySelector(".item.active");
+ var activeIndex = Array.prototype.indexOf.call(inner.children, active);
+ var caption = active.querySelector("figcaption, .sigsoft50-story-video-caption");
+
+ counter.textContent = "Frame " + (activeIndex + 1) + " of " + frames.length;
+ if (caption && controls.parentNode !== caption) {
+ caption.appendChild(controls);
+ }
+ }
+
+ previous.addEventListener("click", function () {
+ carousel.carousel("prev");
+ });
+
+ next.addEventListener("click", function () {
+ carousel.carousel("next");
+ });
+
+ carousel.on("slid.bs.carousel", updateCounter);
+ carousel.carousel({
+ interval: false,
+ keyboard: true,
+ pause: true,
+ wrap: true
+ });
+ updateCounter();
+ }
+
+ document.addEventListener("DOMContentLoaded", function () {
+ Array.prototype.forEach.call(
+ document.querySelectorAll(".sigsoft50-frame-grid"),
+ initCarousel
+ );
+ });
+}());
diff --git a/static/sigsoft50/files/opening-slides.pdf b/static/sigsoft50/files/opening-slides.pdf
new file mode 100644
index 00000000..47784d25
Binary files /dev/null and b/static/sigsoft50/files/opening-slides.pdf differ
diff --git a/static/sigsoft50/slides/slide-01.jpg b/static/sigsoft50/slides/slide-01.jpg
new file mode 100644
index 00000000..58ea49fd
Binary files /dev/null and b/static/sigsoft50/slides/slide-01.jpg differ
diff --git a/static/sigsoft50/slides/slide-02.jpg b/static/sigsoft50/slides/slide-02.jpg
new file mode 100644
index 00000000..a7462284
Binary files /dev/null and b/static/sigsoft50/slides/slide-02.jpg differ
diff --git a/static/sigsoft50/slides/slide-03.jpg b/static/sigsoft50/slides/slide-03.jpg
new file mode 100644
index 00000000..8aa0af0b
Binary files /dev/null and b/static/sigsoft50/slides/slide-03.jpg differ
diff --git a/static/sigsoft50/slides/slide-04.jpg b/static/sigsoft50/slides/slide-04.jpg
new file mode 100644
index 00000000..3422e22e
Binary files /dev/null and b/static/sigsoft50/slides/slide-04.jpg differ
diff --git a/static/sigsoft50/slides/slide-05.jpg b/static/sigsoft50/slides/slide-05.jpg
new file mode 100644
index 00000000..38388475
Binary files /dev/null and b/static/sigsoft50/slides/slide-05.jpg differ
diff --git a/static/sigsoft50/slides/slide-06.jpg b/static/sigsoft50/slides/slide-06.jpg
new file mode 100644
index 00000000..5aa66782
Binary files /dev/null and b/static/sigsoft50/slides/slide-06.jpg differ
diff --git a/static/sigsoft50/slides/slide-07.jpg b/static/sigsoft50/slides/slide-07.jpg
new file mode 100644
index 00000000..caf70341
Binary files /dev/null and b/static/sigsoft50/slides/slide-07.jpg differ
diff --git a/static/sigsoft50/slides/slide-08.jpg b/static/sigsoft50/slides/slide-08.jpg
new file mode 100644
index 00000000..1a775558
Binary files /dev/null and b/static/sigsoft50/slides/slide-08.jpg differ
diff --git a/static/sigsoft50/slides/slide-09.jpg b/static/sigsoft50/slides/slide-09.jpg
new file mode 100644
index 00000000..b68ae437
Binary files /dev/null and b/static/sigsoft50/slides/slide-09.jpg differ
diff --git a/static/sigsoft50/slides/slide-10.jpg b/static/sigsoft50/slides/slide-10.jpg
new file mode 100644
index 00000000..bb2e7e06
Binary files /dev/null and b/static/sigsoft50/slides/slide-10.jpg differ
diff --git a/static/sigsoft50/slides/slide-11.jpg b/static/sigsoft50/slides/slide-11.jpg
new file mode 100644
index 00000000..a83b5ab8
Binary files /dev/null and b/static/sigsoft50/slides/slide-11.jpg differ
diff --git a/static/sigsoft50/slides/slide-12.jpg b/static/sigsoft50/slides/slide-12.jpg
new file mode 100644
index 00000000..e54ab074
Binary files /dev/null and b/static/sigsoft50/slides/slide-12.jpg differ
diff --git a/static/sigsoft50/slides/slide-13.jpg b/static/sigsoft50/slides/slide-13.jpg
new file mode 100644
index 00000000..ed312b03
Binary files /dev/null and b/static/sigsoft50/slides/slide-13.jpg differ
diff --git a/static/sigsoft50/slides/slide-14.jpg b/static/sigsoft50/slides/slide-14.jpg
new file mode 100644
index 00000000..d8d1d143
Binary files /dev/null and b/static/sigsoft50/slides/slide-14.jpg differ
diff --git a/static/sigsoft50/slides/slide-15.jpg b/static/sigsoft50/slides/slide-15.jpg
new file mode 100644
index 00000000..5cbcd162
Binary files /dev/null and b/static/sigsoft50/slides/slide-15.jpg differ
diff --git a/static/sigsoft50/slides/slide-16.jpg b/static/sigsoft50/slides/slide-16.jpg
new file mode 100644
index 00000000..34b249ae
Binary files /dev/null and b/static/sigsoft50/slides/slide-16.jpg differ
diff --git a/static/sigsoft50/slides/slide-17.jpg b/static/sigsoft50/slides/slide-17.jpg
new file mode 100644
index 00000000..03058be1
Binary files /dev/null and b/static/sigsoft50/slides/slide-17.jpg differ
diff --git a/static/sigsoft50/slides/slide-18.jpg b/static/sigsoft50/slides/slide-18.jpg
new file mode 100644
index 00000000..0263fef6
Binary files /dev/null and b/static/sigsoft50/slides/slide-18.jpg differ
diff --git a/static/sigsoft50/slides/slide-19.jpg b/static/sigsoft50/slides/slide-19.jpg
new file mode 100644
index 00000000..1292f247
Binary files /dev/null and b/static/sigsoft50/slides/slide-19.jpg differ
diff --git a/static/sigsoft50/slides/slide-20.jpg b/static/sigsoft50/slides/slide-20.jpg
new file mode 100644
index 00000000..92618379
Binary files /dev/null and b/static/sigsoft50/slides/slide-20.jpg differ
diff --git a/static/sigsoft50/slides/slide-21.jpg b/static/sigsoft50/slides/slide-21.jpg
new file mode 100644
index 00000000..b6020628
Binary files /dev/null and b/static/sigsoft50/slides/slide-21.jpg differ
diff --git a/static/sigsoft50/slides/slide-22.jpg b/static/sigsoft50/slides/slide-22.jpg
new file mode 100644
index 00000000..e31d7c98
Binary files /dev/null and b/static/sigsoft50/slides/slide-22.jpg differ
diff --git a/static/sigsoft50/slides/slide-23.jpg b/static/sigsoft50/slides/slide-23.jpg
new file mode 100644
index 00000000..42dc37e9
Binary files /dev/null and b/static/sigsoft50/slides/slide-23.jpg differ
diff --git a/static/sigsoft50/slides/slide-24.jpg b/static/sigsoft50/slides/slide-24.jpg
new file mode 100644
index 00000000..9af072a3
Binary files /dev/null and b/static/sigsoft50/slides/slide-24.jpg differ
diff --git a/static/sigsoft50/slides/slide-25.jpg b/static/sigsoft50/slides/slide-25.jpg
new file mode 100644
index 00000000..e4442cc9
Binary files /dev/null and b/static/sigsoft50/slides/slide-25.jpg differ
diff --git a/static/sigsoft50/slides/slide-26.jpg b/static/sigsoft50/slides/slide-26.jpg
new file mode 100644
index 00000000..63a347be
Binary files /dev/null and b/static/sigsoft50/slides/slide-26.jpg differ
diff --git a/static/sigsoft50/slides/slide-27.jpg b/static/sigsoft50/slides/slide-27.jpg
new file mode 100644
index 00000000..8120d379
Binary files /dev/null and b/static/sigsoft50/slides/slide-27.jpg differ
diff --git a/static/sigsoft50/slides/slide-28.jpg b/static/sigsoft50/slides/slide-28.jpg
new file mode 100644
index 00000000..2ecd38ea
Binary files /dev/null and b/static/sigsoft50/slides/slide-28.jpg differ
diff --git a/static/sigsoft50/slides/slide-29.jpg b/static/sigsoft50/slides/slide-29.jpg
new file mode 100644
index 00000000..fe30796f
Binary files /dev/null and b/static/sigsoft50/slides/slide-29.jpg differ
diff --git a/static/sigsoft50/slides/slide-30.jpg b/static/sigsoft50/slides/slide-30.jpg
new file mode 100644
index 00000000..77749137
Binary files /dev/null and b/static/sigsoft50/slides/slide-30.jpg differ
diff --git a/static/sigsoft50/slides/slide-31.jpg b/static/sigsoft50/slides/slide-31.jpg
new file mode 100644
index 00000000..84aca897
Binary files /dev/null and b/static/sigsoft50/slides/slide-31.jpg differ
diff --git a/static/sigsoft50/slides/slide-32.jpg b/static/sigsoft50/slides/slide-32.jpg
new file mode 100644
index 00000000..45e11a3e
Binary files /dev/null and b/static/sigsoft50/slides/slide-32.jpg differ
diff --git a/static/sigsoft50/slides/slide-33.jpg b/static/sigsoft50/slides/slide-33.jpg
new file mode 100644
index 00000000..25e0327e
Binary files /dev/null and b/static/sigsoft50/slides/slide-33.jpg differ
diff --git a/static/sigsoft50/slides/slide-34.jpg b/static/sigsoft50/slides/slide-34.jpg
new file mode 100644
index 00000000..05d3e0dc
Binary files /dev/null and b/static/sigsoft50/slides/slide-34.jpg differ
diff --git a/static/sigsoft50/slides/slide-35.jpg b/static/sigsoft50/slides/slide-35.jpg
new file mode 100644
index 00000000..9ff0326d
Binary files /dev/null and b/static/sigsoft50/slides/slide-35.jpg differ
diff --git a/static/sigsoft50/slides/slide-36.jpg b/static/sigsoft50/slides/slide-36.jpg
new file mode 100644
index 00000000..b62ec506
Binary files /dev/null and b/static/sigsoft50/slides/slide-36.jpg differ
diff --git a/static/sigsoft50/slides/slide-37.jpg b/static/sigsoft50/slides/slide-37.jpg
new file mode 100644
index 00000000..12277dde
Binary files /dev/null and b/static/sigsoft50/slides/slide-37.jpg differ
diff --git a/static/sigsoft50/slides/slide-38.jpg b/static/sigsoft50/slides/slide-38.jpg
new file mode 100644
index 00000000..cabb44f9
Binary files /dev/null and b/static/sigsoft50/slides/slide-38.jpg differ
diff --git a/static/sigsoft50/slides/slide-39.jpg b/static/sigsoft50/slides/slide-39.jpg
new file mode 100644
index 00000000..e86a4939
Binary files /dev/null and b/static/sigsoft50/slides/slide-39.jpg differ
diff --git a/static/sigsoft50/slides/slide-40.jpg b/static/sigsoft50/slides/slide-40.jpg
new file mode 100644
index 00000000..1bfd0c39
Binary files /dev/null and b/static/sigsoft50/slides/slide-40.jpg differ
diff --git a/static/sigsoft50/slides/slide-41.jpg b/static/sigsoft50/slides/slide-41.jpg
new file mode 100644
index 00000000..e8cf88b7
Binary files /dev/null and b/static/sigsoft50/slides/slide-41.jpg differ
diff --git a/static/sigsoft50/slides/slide-42.jpg b/static/sigsoft50/slides/slide-42.jpg
new file mode 100644
index 00000000..a0a3ccb6
Binary files /dev/null and b/static/sigsoft50/slides/slide-42.jpg differ
diff --git a/static/sigsoft50/slides/slide-43.jpg b/static/sigsoft50/slides/slide-43.jpg
new file mode 100644
index 00000000..d0646d0c
Binary files /dev/null and b/static/sigsoft50/slides/slide-43.jpg differ
diff --git a/static/sigsoft50/slides/slide-44.jpg b/static/sigsoft50/slides/slide-44.jpg
new file mode 100644
index 00000000..3934da85
Binary files /dev/null and b/static/sigsoft50/slides/slide-44.jpg differ
diff --git a/static/sigsoft50/slides/slide-45.jpg b/static/sigsoft50/slides/slide-45.jpg
new file mode 100644
index 00000000..cb4cdb3d
Binary files /dev/null and b/static/sigsoft50/slides/slide-45.jpg differ
diff --git a/static/sigsoft50/slides/slide-46.jpg b/static/sigsoft50/slides/slide-46.jpg
new file mode 100644
index 00000000..8bab033d
Binary files /dev/null and b/static/sigsoft50/slides/slide-46.jpg differ
diff --git a/static/sigsoft50/slides/slide-47.jpg b/static/sigsoft50/slides/slide-47.jpg
new file mode 100644
index 00000000..0a652f3e
Binary files /dev/null and b/static/sigsoft50/slides/slide-47.jpg differ
diff --git a/static/sigsoft50/slides/slide-48.jpg b/static/sigsoft50/slides/slide-48.jpg
new file mode 100644
index 00000000..f4f51e7f
Binary files /dev/null and b/static/sigsoft50/slides/slide-48.jpg differ
diff --git a/static/sigsoft50/slides/slide-49.jpg b/static/sigsoft50/slides/slide-49.jpg
new file mode 100644
index 00000000..a238785b
Binary files /dev/null and b/static/sigsoft50/slides/slide-49.jpg differ
diff --git a/static/sigsoft50/slides/slide-50.jpg b/static/sigsoft50/slides/slide-50.jpg
new file mode 100644
index 00000000..3ef38ac1
Binary files /dev/null and b/static/sigsoft50/slides/slide-50.jpg differ
diff --git a/static/sigsoft50/slides/slide-51.jpg b/static/sigsoft50/slides/slide-51.jpg
new file mode 100644
index 00000000..e01a1e63
Binary files /dev/null and b/static/sigsoft50/slides/slide-51.jpg differ
diff --git a/static/sigsoft50/slides/slide-52.jpg b/static/sigsoft50/slides/slide-52.jpg
new file mode 100644
index 00000000..a3c79cc1
Binary files /dev/null and b/static/sigsoft50/slides/slide-52.jpg differ
diff --git a/static/sigsoft50/slides/slide-53.jpg b/static/sigsoft50/slides/slide-53.jpg
new file mode 100644
index 00000000..99adfd21
Binary files /dev/null and b/static/sigsoft50/slides/slide-53.jpg differ
diff --git a/static/sigsoft50/slides/slide-54.jpg b/static/sigsoft50/slides/slide-54.jpg
new file mode 100644
index 00000000..af881b45
Binary files /dev/null and b/static/sigsoft50/slides/slide-54.jpg differ
diff --git a/static/sigsoft50/slides/slide-55.jpg b/static/sigsoft50/slides/slide-55.jpg
new file mode 100644
index 00000000..266812fd
Binary files /dev/null and b/static/sigsoft50/slides/slide-55.jpg differ
diff --git a/static/sigsoft50/slides/slide-56.jpg b/static/sigsoft50/slides/slide-56.jpg
new file mode 100644
index 00000000..9e2c95b2
Binary files /dev/null and b/static/sigsoft50/slides/slide-56.jpg differ
diff --git a/static/sigsoft50/slides/slide-57.jpg b/static/sigsoft50/slides/slide-57.jpg
new file mode 100644
index 00000000..639297b6
Binary files /dev/null and b/static/sigsoft50/slides/slide-57.jpg differ
diff --git a/static/sigsoft50/slides/slide-58.jpg b/static/sigsoft50/slides/slide-58.jpg
new file mode 100644
index 00000000..48c288d3
Binary files /dev/null and b/static/sigsoft50/slides/slide-58.jpg differ
diff --git a/static/sigsoft50/slides/slide-59.jpg b/static/sigsoft50/slides/slide-59.jpg
new file mode 100644
index 00000000..626ebe6e
Binary files /dev/null and b/static/sigsoft50/slides/slide-59.jpg differ
diff --git a/static/sigsoft50/slides/slide-60.jpg b/static/sigsoft50/slides/slide-60.jpg
new file mode 100644
index 00000000..a5082e57
Binary files /dev/null and b/static/sigsoft50/slides/slide-60.jpg differ
diff --git a/static/sigsoft50/slides/slide-61.jpg b/static/sigsoft50/slides/slide-61.jpg
new file mode 100644
index 00000000..159f7753
Binary files /dev/null and b/static/sigsoft50/slides/slide-61.jpg differ
diff --git a/static/sigsoft50/slides/slide-62.jpg b/static/sigsoft50/slides/slide-62.jpg
new file mode 100644
index 00000000..19c2a620
Binary files /dev/null and b/static/sigsoft50/slides/slide-62.jpg differ
diff --git a/static/sigsoft50/slides/slide-63.jpg b/static/sigsoft50/slides/slide-63.jpg
new file mode 100644
index 00000000..201a6a79
Binary files /dev/null and b/static/sigsoft50/slides/slide-63.jpg differ
diff --git a/static/sigsoft50/slides/slide-64.jpg b/static/sigsoft50/slides/slide-64.jpg
new file mode 100644
index 00000000..1857de9a
Binary files /dev/null and b/static/sigsoft50/slides/slide-64.jpg differ
diff --git a/static/sigsoft50/slides/slide-65.jpg b/static/sigsoft50/slides/slide-65.jpg
new file mode 100644
index 00000000..4a5cc1fc
Binary files /dev/null and b/static/sigsoft50/slides/slide-65.jpg differ