On September 10th, the Qubit Bot robotics team had the privilege of hosting a virtual outreach event with Eder Weber, a Principal Software Design Engineer at All Web Leads Inc. Organized by Coach Vik, this event provided a deep dive into the world of software engineering, covering everything from the software development lifecycle to the critical role of documentation and team collaboration. The Qubit Bot team also showcased their robot, discussing their experiences in FIRST FTC (For Inspiration and Recognition of Science and Technology - FIRST Tech Challenge) and how they’re preparing for the upcoming season.
Introduction to Eder Weber
Eder Weber's journey in the world of software engineering is nothing short of inspiring. Having started his career in 2007 after graduating from Texas State University with a degree in Computer Science, Eder has worked on various large-scale software projects and has gained invaluable experience in the field. His passion for programming emerged as a teenager, and since then, he has honed his skills, working on projects that range from developing software to maintaining systems at All Web Leads. Eder’s unique journey—from Mexico to the U.S., where he first discovered his love for computers—was an inspiring narrative for the Qubit Bot team, many of whom are considering STEM-related careers.
The Value of Software Engineering
Eder began by distinguishing between software engineering and programming. While programming focuses on writing code, software engineering encompasses a broader spectrum of activities, including the design, development, and long-term maintenance of software systems. His emphasis on the collaborative nature of software engineering resonated with the Qubit Bot team, especially as they work on building a robot that requires both hardware and software integration.
Eder’s explanation of the Software Development Life Cycle (SDLC) provided valuable insights into how engineering teams handle large, complex systems over time. The SDLC is a multi-step process that involves gathering requirements, writing code, testing, and deploying software, followed by updates as needed. For the Qubit Bot team, this cycle mirrored their robot-building process, from brainstorming initial designs to testing the robot’s performance during competitions.
Learnings from Eder’s Experience
The Qubit Bot team found several key takeaways from Eder’s talk, especially his emphasis on:
Documentation
Eder highlighted the importance of clear, comprehensive documentation. Whether it's for software, CAD designs, or outreach projects, maintaining detailed records ensures that teams can build upon previous work, avoid past mistakes, and provide future teams with a roadmap for success. The Qubit Bot team plans to implement this by documenting all phases of their robot development—from design and coding to testing and building.
Agile Methodology
Eder discussed how his team at AWL uses Agile methodologies, working in two-week sprints to adapt to changes quickly. This approach encourages continuous improvement and flexibility, ensuring that software stays up-to-date with evolving user needs. For the Qubit Bot team, adopting a similar Agile approach during their robot development process could help them iterate on designs and test their robot more efficiently throughout the season.
Effective Communication
Team collaboration was a recurring theme during Eder’s talk. In software engineering, communication is key to ensuring that team members can collaborate effectively on large projects. This is equally true for the Qubit Bot team, where coding, building, and driving must come together seamlessly for a successful season.
Debugging
Eder described debugging as an essential skill for any engineer, likening it to detective work. Whether fixing software bugs or troubleshooting hardware malfunctions, the ability to identify and solve problems is crucial. The Qubit Bot team can apply this lesson by enhancing their debugging practices, which will be crucial when they test their robot under real-world conditions.
Incorporating Structured Processes
The team learned the importance of adopting a clear and structured process for developing their robot. Just as Eder’s team follows the Software Development Life Cycle (SDLC), The Qubit Bot team can create a similar workflow. From brainstorming ideas, writing code, and testing, to deploying updates, having a structured cycle will help ensure consistency and quality throughout the season.
Leveraging AI and ML in Robotics
Eder's brief insights into experimenting with AI to generate code sparked ideas for the team. Integrating AI and ML into robotics is a challenging yet promising frontier, and the Qubit Bot team is determined to explore these technologies further. Eder’s experience will guide them as they work to implement machine learning models into their robot’s autonomous functions.
Applying the Lessons to FIRST FTC Season
As the Qubit Bot team prepares for the upcoming FTC season, Eder’s insights will help guide their approach to robot development. By incorporating thorough documentation, maintaining clear communication within the team, and adopting an Agile mindset, they will be better equipped to handle the challenges of designing and building a competitive robot. Additionally, Eder’s advice on debugging will prove invaluable as the team navigates the inevitable technical hurdles that come with building a complex machine.
The event was a meaningful experience for the Qubit Bot team, who left with a deeper understanding of the software engineering process and how it can be applied to their robotics journey. As they continue to explore new technologies and techniques, including AI and machine learning, they are well on their way to building an innovative robot for the season ahead.
Comments