diff --git a/config.toml b/config.toml index d276119..3635ee0 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 0000000..012cad4 --- /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 index 4648ac9..55df8a8 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -18,6 +18,8 @@ {{ partial "features.html" . }} + {{ partial "sigsoft50_highlight.html" . }} + {{ partial "academy_highlight.html" . }} {{ partial "testimonials.html" . }} diff --git a/layouts/partials/sigsoft50_highlight.html b/layouts/partials/sigsoft50_highlight.html new file mode 100644 index 0000000..723c620 --- /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 fbffce1..4a92d50 100644 --- a/static/css/custom.css +++ b/static/css/custom.css @@ -1,14 +1,74 @@ /* 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; + } +} + .academy-highlight { border-top: 1px solid #eeeeee; border-bottom: 1px solid #eeeeee; } .academy-highlight__row { - display: flex; - flex-wrap: wrap; align-items: center; + display: flex; } .academy-highlight__eyebrow { @@ -44,15 +104,417 @@ width: 100%; } +.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) { - .academy-highlight__row { + .academy-highlight__row, + .sigsoft50-highlight__row { display: block; } - .academy-highlight__photos { + .academy-highlight__photos, + .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 { @@ -75,4 +537,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 0000000..4383441 --- /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 0000000..47784d2 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 0000000..58ea49f 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 0000000..a746228 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 0000000..8aa0af0 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 0000000..3422e22 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 0000000..3838847 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 0000000..5aa6678 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 0000000..caf7034 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 0000000..1a77555 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 0000000..b68ae43 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 0000000..bb2e7e0 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 0000000..a83b5ab 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 0000000..e54ab07 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 0000000..ed312b0 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 0000000..d8d1d14 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 0000000..5cbcd16 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 0000000..34b249a 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 0000000..03058be 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 0000000..0263fef 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 0000000..1292f24 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 0000000..9261837 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 0000000..b602062 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 0000000..e31d7c9 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 0000000..42dc37e 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 0000000..9af072a 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 0000000..e4442cc 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 0000000..63a347b 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 0000000..8120d37 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 0000000..2ecd38e 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 0000000..fe30796 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 0000000..7774913 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 0000000..84aca89 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 0000000..45e11a3 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 0000000..25e0327 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 0000000..05d3e0d 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 0000000..9ff0326 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 0000000..b62ec50 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 0000000..12277dd 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 0000000..cabb44f 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 0000000..e86a493 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 0000000..1bfd0c3 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 0000000..e8cf88b 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 0000000..a0a3ccb 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 0000000..d0646d0 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 0000000..3934da8 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 0000000..cb4cdb3 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 0000000..8bab033 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 0000000..0a652f3 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 0000000..f4f51e7 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 0000000..a238785 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 0000000..3ef38ac 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 0000000..e01a1e6 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 0000000..a3c79cc 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 0000000..99adfd2 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 0000000..af881b4 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 0000000..266812f 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 0000000..9e2c95b 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 0000000..639297b 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 0000000..48c288d 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 0000000..626ebe6 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 0000000..a5082e5 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 0000000..159f775 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 0000000..19c2a62 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 0000000..201a6a7 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 0000000..1857de9 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 0000000..4a5cc1f Binary files /dev/null and b/static/sigsoft50/slides/slide-65.jpg differ