Skip to main content

· 6 min read
Willie Chalmers III

TL;DR: We're kicking off a new chapter by becoming our own student organization.

What's Happening?

Project Nebula will become a registered student organization at UT Dallas, separate from the student chapter of ACM that it has been affiliated with until now.

We'll have to define our constitution and outline our other governing documents like bylaws really soon, but everyone will be able to give their input.

Why Independence?

The Association for Computing Machinery (ACM) at UTD was a student organization at UT Dallas that promotes the field of computing, largely focusing on career-building activities in software development.

Harsha Srikara, a former technical lead for HackUTD in spring 2020, started ACM Development, a group in ACM meant to promote software development through practical projects. Project Nebula started as a single project: a degree planner called Comet Planning. Aliah Shaira De Guzman started the original initiative in May 2020 as a part of the Development team. I became the director of that team (later renamed Engineering) in April 2021 and split my time between Project Nebula and overseeing the rest of the Engineering Team for several months. However, it was often difficult balancing the needs of the Engineering team with Project Nebula, which was rapidly growing into a community of dozens of contributors.

On March 9, 2022, Project Nebula's leadership and project leads met with ACM's executives to discuss separating so each group could focus on its own mission.

Now, we're becoming our own distinct group so we can continue growing while focusing on our mission. ACM will remain a part of the history of Project Nebula, but it's time for a new chapter for our products and the community we've built. This time, we will build a community in which every member is empowered to lead others and contribute their perspective in supporting a central mission: building a community of people who build tools that help others while sharing their knowledge and having fun along the way.

Nebula is ultimately an experiment in creating tools for the community but also creating a community in itself. It answers the question: can a bunch of nerds govern themselves as they learn and build things together?

Let's find out.

What Changes?

Mostly nothing.

Firstly, our name will better reflect our purpose. We've graduated from being a mere project, so our name will change to reflect that.

I think the name Nebula Labs sounds cool and pays homage to our origins while reflecting our status as a group. We incubate and maintain projects for the community as an interdisciplinary community of people who learn and build together.

Of course, nothing will be final until our contributors come to a consensus and vote on the new name, but I have a good feeling about this one!

Governance

Right now, senior leadership consists of an Executive Director, our Head of Engineering, and our Head of Product. However, as we become our own student organization, the scope of leadership will increase from focusing on solely building our projects to growing and maintaining our community overall. As such, there will be more administrative and support roles whose sole purpose will be to serve as a foundation for our projects and other initiatives, based on our desire to have contributors focus on building tools, learning skills, and teaching others.

No matter what, maintainers and contributors will be an active part of how Project Nebula operates. Everyone — whether a technical contributor or a product designer — will be strongly encouraged to participate and give feedback on how the community works.

Funding and Operations

The most notable changes will come from how our group maintains our products. In the coming months, we will secure our own funding sources to maintain our operations as a student group and as a team that builds products for the community.

Becoming our registered organization at UTD will give us programming and operations funding from the Student Organization Center. Associating with the Erik Jonsson School of Engineering and Computer Science (ECS) will give us access to additional fixed and variable funding to promote Project Nebula and have more events. (Yes, with food!)

Additionally, as we open our own bank account, we will have more flexibility to adopt alternative funding models like student donations (something UTD Grades has done in the past) and finding sponsors. In the medium-term, we will have to incorporate as a nonprofit. This will give us access to nonprofit pricing (often free) for some services like Google Workspace.

Community

Product teams will still meet regularly with the cadence they do now. We'll still have socials and other ways of maintaining our community. The Discord server will continue to serve as our hub in conjunction with our projects on GitHub and our website. Since we'll be able to reserve rooms on our own, we'll be able to host workshops to share our knowledge to help others learn topics like software engineering and UI/UX design. (Not to mention more socials!)

Our function-specific groups (Engineering, Product, Design) will now be called guilds. Like they are now, guilds will be groups of contributors who are interested. Guilds will take the lead for hosting domain-specific meet-ups and events (e.g. designers will host design-related teach-ins for the community).

Our Code

ACM UTD has agreed to give the Project Nebula maintainers full rights to the code. Before, there was some ambiguity whether ACM UTD had ownership of the code. For the code currently licensed to the Project Nebula maintainers, we will be asking the permission of all contributors to relicense the code using the MIT license to the organization we'll form so that our projects can be better maintained in the long run while still respecting the rights of all contributors.

· 7 min read
Willie Chalmers III

TL;DR

Project Nebula is an initiative by ACM Development, a group in the UT Dallas chapter of the Association for Computing Machinery. It consists of a few student developers who are building solutions to make students lives easier. We want to make some really cool things, and we're looking forward to see where this goes.

Some Backstory

Project Nebula used to be a single project: Comet Planning. Started by a former officer in ACM in the summer of 2020, it was meant to merely be a tool that helped students plan their degree plans. As simple as this was, I immediately knew this could be more than that. Additionally, I wanted to work on a personal project over the summer since I had neglected to build anything myself during freshman year of university.

During spring 2020, I was a technical coordinator for the HackUTD organizing team helping to build a website for the team and create other technical infrastructure for the event. Unfortunately, the event we planned hosting at the time - Hack to School, an education-themed event - was cancelled due to the world ending - sorry, the COVID-19 pandemic.

As the pandemic raged on, I appreciated how empowering it was to work on a tool for students when so many other opportunities had evaporated. However, the developers working on the project at the time - myself included - had much to learn about using React for front-end development, so the project took a bit longer than we expected. When the fall semester began, people's priorities changed, so the project was left with only one active developer (me). Unfortunately, I was perpetually busy with other responsiblities on top of school work which, coupled some amount of perfectionism, left me uncomfortable in releasing even a beta version of the app.

However, with ACM's spring 2021 kick-off, there was renewed interest in the project after I decided to make another sprint in development in time for kick-off. I got a landing page up and with new name and a slap of paint (well, styles) later, Project Nebula was born. Then there was hype. Comet Planning - now Project Nebula - had some steam (and expectations) behind it.

We made some headway with some of the new contributors to Comet Planning - renamed to Nebula Web - and started figuring out Nebula Data Service, our public API for UTD-related data, could work. Sunny, Saloni, Rajmeet, and Nolan joined the team, and the project had found more of its purpose.

Although much of the hype has died down, development hasn't stopped. There were some breaks in development due to spring classes being much more difficult than the fall, but things are different now.

Where We Are Now

I've recently begun rewriting Nebula Web to use Next.js. Additionally, about a month ago, I started reaching out to other UTD students at Discord to see how willing they'd be to contribute to Project Nebula. To my chagrin, there were a few who were willing to commit to the project over the summer and into the fall despite so many people being occupied with internships or other summer opportunities.

Now, our team is six strong. We have some cool people with us now:

  • Lisa Wu: Project Nebula User Experience Lead
  • Benjamin Wu: Nebula Web Front-end Developer
  • Suraj Khosla: Nebula Data Service Lead
  • Vishvak Bandi: UTD Survival Guide Lead
  • Rajmeet Juneja: Nebula Web Front-end Developer
  • Willie Chalmers III (myself): Project Nebula Lead, Nebula Web Lead

Over the summer, we'll be focusing on three projects:

  • The Nebula App, a tool to help students plan their college experiences and plan their coursework.
  • UTD Survival Guide, a personalized handbook and reference guide on how to best be a student and take advantage of opportunities at UT Dallas.
  • Nebula Data Service, a public API for student-related data that powers Project Nebula.

Additionally, we'll have two other repositories to support our projects:

  • Nebula Data Schemas, a library of shared data types for Project Nebula data meant to work with the Nebula Data Service.
  • Nebula Web Components, a custom shared component library for Project Nebula projects.

How This Will Work

Project Nebula is be an initiative that anyone with the right motivation can take part in. All students are welcome to work on Project Nebula.

Each project will have a lead maintainer who will oversee its development and be the first to respond to its concerns. The Project Nebula Lead (me) will oversee development and strategy for all the projects and be responsible for interfacing with external stakeholders.

At the moment, maintainers for Project Nebula are also members of ACM UTD. (We're still trying to work out the kinks in this arrangement.)

Project Nebula is currently a close-knit team, but we expect to take on more dedicated maintainers as we near our full public releases in the fall and gradually expand the number of projects we have over the next year.

First, we have to get our 1.0 releases out for the projects above!

Documentation will take place primarily through GitHub Discussions and GitHub Issues in addition to project-specific platforms (like a separate documentation website for the Nebula Data Service).

This website - the Project Nebula website - will be solely for documentation about project governance and general development practices/handbooks that apply across all our repositories and be targeted more for those contributing to Project Nebula.

Project Nebula-wide discussion will take place on the project-nebula Discussions forum on GitHub. Here, we'll document our brainstorming and proposals for new features so anyone can give suggestions or feedback. Additionally, we'll maintain a few channels on the ACM Discord server for things like voice chat and general inquiries, but most discussion and documentation will take place on GitHub.

On a lighter note, we're probably going to make mistakes during development - whether through unintended bugs or unfortunately-designed features. However, our hope is that by making them as transparent as possible, we won't make the same ones twice.

We plan to actively engage with the community through public forums, student outreach, and other means to build a sense of presence throughout the student body and try to build connections with existing groups to ensure the longevity of Project Nebula.

Roadmap

I want development to be as straightforward as reasonably possible, but I want to give flexibility for the developers of our projects because we are, after all, still students with other responsibilities. However, having some destination in mind helps create expectations (and some amount of motivation).

Ironically, every time I've given dates and deadlines, I've broken them. In this case, I can promise you one thing: you can expect to see some cool things at ACM's kick-off sometime around the start of the fall semester.

Instead of specific dates, I'm opting for a loosely-ordered list containing the largest milestones for Project Nebula:

  1. Launch Nebula Web soon™️ along with the Nebula Data Service
  2. Launch the UTD Survival Guide
  3. Pursue partnerships with other student groups, potentially campus departments, to gather feedback, fine-tune our projects, and determine new features or identify problem areas for students.

This way we'll all be delightfully surprised when good things happen.

In Closing

I don't want this to be merely an ACM project. The potential here for real, lasting change is too valuable to pass up.

I anticipate that the projects themselves aren't even the most valuable part of Project Nebula; the motivated and passionate community of people willing to build such projects will far outlast any individual contribution and produce so much more than a degree planning tool.

As the Project Nebula Lead, I intend to create a space where people can explore innovative solutions to real problems and exercise creativity to let people grow through building real projects. I personally still subscribe to the view that a kid with a computer and internet access can change the world. But what happens when you get a bunch of motivated people with computers and internet access together to build something?

Fireworks.

This is Project Nebula. Let's see how far this goes.