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.

+
+
+
+ +
Opening welcome
+
+
SIGSOFT50 visual frame 2
Fifty years in Montreal
+
SIGSOFT50 visual frame 3
What is SIGSOFT?
+
SIGSOFT50 visual frame 4
The community gathers
+
SIGSOFT50 visual frame 5
The field takes shape
+
SIGSOFT50 visual frame 6
A growing discipline
+
SIGSOFT50 visual frame 7
Infrastructure that works when it is invisible
+
+ +
What SIGSOFT means
+
+
SIGSOFT50 visual frame 9
Why celebrate fifty years?
+
SIGSOFT50 visual frame 10
What the day should accomplish
+
SIGSOFT50 visual frame 11
The plan for the celebration
+
SIGSOFT50 visual frame 12
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.

+
+
+
SIGSOFT50 visual frame 13
Writing SIGSOFT into public memory
+
SIGSOFT50 visual frame 14
SIGSOFT on Wikipedia
+
SIGSOFT50 visual frame 15
Shared history
+
SIGSOFT50 visual frame 16
What the public record captures
+
SIGSOFT50 visual frame 17
A bridge to recognition
+
SIGSOFT50 visual frame 18
The Academy's purpose
+
SIGSOFT50 visual frame 19
What the Academy honors
+
SIGSOFT50 visual frame 20
Selecting the inaugural class
+
SIGSOFT50 visual frame 21
The inaugural class begins
+
SIGSOFT50 visual frame 22
People behind the field
+
SIGSOFT50 visual frame 23
Research lineages
+
SIGSOFT50 visual frame 24
Influence across areas
+
SIGSOFT50 visual frame 25
Honoring sustained contribution
+
SIGSOFT50 visual frame 26
A collective foundation
+
SIGSOFT50 visual frame 27
The field as a network
+
SIGSOFT50 visual frame 28
Recognition as stewardship
+
SIGSOFT50 visual frame 29
Back to SIGSOFT
+
SIGSOFT50 visual frame 30
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.

+
+
+
SIGSOFT50 visual frame 31
SIGSOFT history
+
+ +
Looking back together
+
+
+ +
Remembering David Notkin
+
+
SIGSOFT50 visual frame 34
SIGSOFT remembers
+
SIGSOFT50 visual frame 35
Nico Habermann
+
SIGSOFT50 visual frame 36
Harlan Mills
+
SIGSOFT50 visual frame 37
John D. Gannon
+
SIGSOFT50 visual frame 38
John Vlissides
+
SIGSOFT50 visual frame 39
Meir "Manny" Lehman
+
SIGSOFT50 visual frame 40
David Notkin
+
SIGSOFT50 visual frame 41
Mary Jean Harrold
+
SIGSOFT50 visual frame 42
William Riddle
+
SIGSOFT50 visual frame 43
John C. Knight
+
SIGSOFT50 visual frame 44
Les Belady
+
SIGSOFT50 visual frame 45
Ivica Crnkovic
+
SIGSOFT50 visual frame 46
Barry Boehm
+
SIGSOFT50 visual frame 47
Niklaus Wirth
+
SIGSOFT50 visual frame 48
Dewayne E. Perry
+
SIGSOFT50 visual frame 49
Koichi Kishida
+
SIGSOFT50 visual frame 50
Peter G. Neumann
+
SIGSOFT50 visual frame 51
Panel transition
+
SIGSOFT50 visual frame 52
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
+
+
SIGSOFT50 visual frame 54
Looking forward
+
+ +
A bridge to the future
+
+
SIGSOFT50 visual frame 56
The forward-looking panel
+
SIGSOFT50 visual frame 57
Meet the panelists
+
SIGSOFT50 visual frame 58
Questions that matter
+
SIGSOFT50 visual frame 59
Interactive futures workshop
+
SIGSOFT50 visual frame 60
Workshop goal
+
SIGSOFT50 visual frame 61
Sticky-note prompt
+
SIGSOFT50 visual frame 62
Themes for discussion
+
SIGSOFT50 visual frame 63
Questions to discuss
+
SIGSOFT50 visual frame 64
Showtime
+
SIGSOFT50 visual frame 65
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 + +

+
+
+ + SIGSOFT50 anniversary celebration opening slide + +
+
+
+
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