Celebrating ScottyLabs’ 12th Birthday
Last week, ScottyLabs celebrated its 12th birthday — if you missed it, you should probably subscribe to the ScottyLabs calendar. Those of you who were around for TartanHacks 2021 (branded THX for the 10th iteration of TartanHacks) may have alarm bells going off, but I think we just got confused with the indexing. November 14, 2023 was really ScottyLabs’ 12th birthday and our founder Amy Quispe corroborated the story.
Indexing woes aside, I’ve now been around for a little over 3 years and a quarter of ScottyLabs’ lifetime. So I thought I’d celebrate its birthday by sharing 3 stories that capture just a little bit of all that’s to love about ScottyLabs, the work that we do, and most importantly the people that make it happen.
COVID-19? What are the FCEs?
At the end of every semester, CMU asks students to evaluate all of their courses for course/professor quality and workload. Aside from helping the university evaluate professor performance, these aggregated Faculty Course Evaluations(FCEs) are a game changer for students come registration season. Not only do they prevent you from wasting your tuition dollars on terrible courses with terrible professors, the workload estimates also help ensure that you won’t be pulling all nighters come next semester.
FCEs are super useful, but unfortunately, the CMU tool to explore all this data and figure out which classes to take looks like this… No aggregation over semesters, no course descriptions, and a UI that looks like it took less than a minute of thought — you know you’re creating UI magic when you call a screen a “Wizard”. UI wizardry aside, performance was a nightmare — typing a single character in any of these text fields would trigger a search that took 10 seconds to complete.
Likely because this tool (and its predecessors/companions) were such a nightmare, and also to make course information open and accessible, ScottyLabs built a Course API accessible via a Python CLI tool back in 2014. However, come March 2020, the API had long stopped working after CMU put course data behind an auth wall.
Around the same time, COVID-19 was making waves around the world, and CMU decided to extend spring break by a week in response. With the extra free time, and registration season approaching soon, a couple of eager freshmen in the tech committee, Gram Liu and David Ethan Hwang, decided to build a new RESTful Course API and a web based course tool around it. I find this hard to believe given how much they’ve contributed to ScottyLabs’ tech projects over the years, but Gram claims that they had little to no full stack development experience at the time aside from some dabbling with React in high school.
Being the smart boys they are, Gram and David pulled it off and deployed the first version of CMUCourses(called the Course Tool at the time) and it was much better than the SmartEvals FCE wizard of old.
In the process of building the Course Tool, Gram and David also built the ScottyLabs Login API to ensure that FCE data access was limited to users with CMU accounts. Since CMU’s Shibboleth SSO service was such a pain to procure and work with, they decided to use Google’s SSO instead, and limit access to users with accounts tied to the cmu.edu domain name. For good measure, they decided to build out the idea as the ScottyLabs Login API, which today secures many other projects like CMU Lost and Found.
Since Gram and David hacked together the course tool amidst the pandemic in 2020, they’ve come a long way and so has the course tool. Bradley Teo and Abby Li took over the project the following year, and rebuilt and rebranded to CMUCourses with a little help from our UI/UX design team (more on that next). Today, CMUCourses has become an integral part of ~2,000 students’ registration process every semester. There’s a lot more to say about all the work that we’ve put into(especially Bradley) getting CMUCourses to where it is today, but I’ll leave that to another post.
Giving ScottyLabs a makeover
For much of its existence ScottyLabs was either associated with TartanHacks or tech projects (like cmucourses, cmueats, etc.), but nowadays I wouldn’t be surprised if the first thing that comes to mind is our beautiful branding and merch from the t-shirts and stickers to the socks and bucket hats.
This shift is in large part due to the development and growth of ScottyLabs’ design committee, which didn’t happen until quite recently actually. Don’t believe me? Take a look at this snapshot of TartanHacks logos over the years, and try to pinpoint when we started getting our design game together.
ScottyLabs has had a Director of Design for a while, since 2015 to be exact, but things really turned around with TartanHacks 2020. Pre-2020, the Director of Design role was primarily a logistics role that today would be within the outreach committee. The Director of Design was responsible for deploying our design/branding assets for TartanHacks by handling the logistics associated with printing our banners, t-shirts, etc.
The designing itself was done by a random design student that would be recruited each year with the promise of getting something to add to their portfolios. Since these designers lacked context on ScottyLabs and TartanHacks, the initial ideation and concept work would be done by others in the club before a designer could get involved to flesh things out.
Come the summer of 2019, the leadership team led by Sayan Chaudhry decided to get the design process for TartanHacks 2020 kick started earlier than usual. They came up with a concept and fleshed out the logo during the summer, but their designer at the time went unresponsive later in the fall when asked to expand the logo into other pieces. To remedy the situation, Akshath Jain, the Director of Operations at the time, decided to bring in Yoshi Torralva, a design student he’d met through his research lab. Anyone that’s had the good fortune of working with Yoshi since then would know that the rest is history…
Within a few weeks, Yoshi had come up with a new TartanHacks logo that was like night and day compared to anything before it. By TartanHacks, he expanded the logo to stickers, socks, an intro video, and much more(see Yoshi’s portfolio for all the details).
After being unanimously elected Director of Design for the following year, Yoshi set out to build up the design committee with hopes of emulating Richard Guo’s success with the Tech Committee the previous year (another great story that’ll have to be another blog post.) He loved the space ScottyLabs had created for engineers and builders over the years, and wanted to do the same for budding designers that wanted to showcase their talents with real projects for real people.
In addition to recreating his TartanHacks magic yet again, Yoshi revamped much of ScottyLabs’ branding including its logo, and built up a team of designers that would go on to carry his legacy. His protégé Shannon Lin went on to become Director of Design for the next two years, and further improve the design committee’s influence on the club by growing it in size, and scope.
Under Shannon’s leadership, the design committee went beyond just branding and merchandise by developing a UI/UX team led by Elise Chapman and Susan Ni(two more of Yoshi’s proteges) that lent design expertise to tech projects like CMUCourses, the TartanHacks Software Suite, Lost and Found and many more.
Today, design plays an integral role in everything we do from events and outreach to tech projects both old and new, and ever since Yoshi stepped into that GBM four years ago, they’ve never ceased to amaze us no matter what they do.
Disrupting TartanHacks with a Bomb Threat
We were almost 23 hours into TartanHacks 2023, and things were starting to really pick up for us organizers. We were wrapping up with a run through of the closing ceremony in McConomy (the big auditorium in the University Center), and getting ready to head to a demo session for our new judging system built by Rajeev Godse and Gram Liu (another blog post that should be written soon :)).
Suddenly the fire alarm went off, and we evacuated to The Cut as the alarm continued to blare on despite the minute or two we spent trying to deny it. Having used “putting out fires” as a metaphor at pretty much every TartanHacks post-mortem in the past, the irony of having to potentially put out an actual fire wasn’t lost on us at all as we stood outside in the freezing February weather waiting for the all clear. A CMU PD officer then walked by to tell us that it’ll take a while and that we should probably take shelter somewhere else.
Luckily, a scheduling mishap with McConomy meant that we had a booking for Rashid Auditorium, so we extended the deadline by an hour and asked everyone to move their hacking to the Gates center. In the meantime, Gram and Rajeev moved their judging demo to Gates only to find a pretty bad bug that wasn’t letting judges only judge for certain prizes — when fires start, they spread like wildfire I guess…
As Gram, Rajeev, Bradley and Nicolas (Ettlin) debugged, we got a call from CMU PD asking one of us to come back to the University Center for support. Just as Anushka Saxena, our former Director, and Tika Naik, our Director of Events, left for the UC, everyone’s phones went off in unison with the following alert from CMU about a suspicious package in the UC.
Tika and Anushka were told that the bomb squad was on its way and asked to explain what exactly we were trying to hack — not an easy task by any means. They were also asked to urgently ping everyone involved and ask if anyone could identify the suspicious package in question.
At this point, we probably should have put a pause on the hackathon, but the adrenaline rush kept the judging system debugging effort going while the rest of us came up with a contingency plan to hold the project expo and closing ceremony in Rashid auditorium. In an effort to calm our hackers down and keep them engaged while we figured out next steps, we decided to immediately serve dinner in the room next door.
Rashid’s auditorium style seating and much smaller size meant that we would need to partition project submissions and hold two judging sessions to make it work. Project submissions were beginning to come in, and we were yet to fix the judging system bug or hear back from the bomb squad or CMU PD. With the clock ticking, and no visibility into the situation at the UC, we decided to set a hard deadline of 6PM after which we’d put the contingency plan into effect and improvise our way out of the wildfire we found ourselves in.
But somehow, everything fell right into place ~10 minutes ahead of schedule. We found that we were passing an undefined userID in the judging system when querying for a user, and Prisma, the ORM we were using, was always returning the first user in the database — super weird and hard to find but an easy fix in the end. A few minutes later, Anushka and Tika called, shortly before another CMU Alert, to give us the all clear.
All we were told was that the package turned out to just contain sand, but we couldn’t care less as we rushed everyone back to get started with judging. David, our Director of Tech at the time, wrote a script to allocate tables to projects and we got well underway with judging. Despite all the drama, we were surprised to have 57 project submissions and end the night just an hour behind schedule.
The following Monday, we found out that the disruption was wholly unintentional. The duct taped balls of sand were weights used by a dance team to secure their props, which they were transporting for a competition the night before. Unintentional or not, I’m pretty sure I’m the closest thing to a war-time Director that ScottyLabs has ever seen or will ever see for a while.
These stories don’t even begin to capture all the magic that ScottyLabs encompasses, but hopefully they highlight the fact that ScottyLabs is what it is today because of the passion and dedication everyone has brought to the table in years past. So if you found any of these stories interesting or inspiring, you should actually subscribe to our calendar, join our slack, and come to a GBM so we can chat about how you too can be a part of the ScottyLabs story, and take ScottyLabs to ever greater heights in the years to come.