Home

Learning Bit by Bit

Hackathon
Education
.NET

An introductory course to CS fundamentals developed with .NET during Microsoft's 2021 Student Hackathon. Our passion for eduaction was one of the reasons the project was selected as the "Hack For Education" winner.

Technologies Used


  • .NET
  • C#
  • Journey

Functionality


This project was really fun to make, we were a team of 4 and all of us contributed to all the parts of the project. As we worked on it during the COVID-19 Pandemic we had lots of online meetings to design the contents of the course. We decided to make a course that would be introductory and would cover the fundamentals of computer science, but with a fast pace so that students could get just enough curiosity to keep learning on their own while covering lots of ideas that are at the core of the field. For this ideas to get stuck we decided to make the course follow a narrative and to include lots of interactive problems that they could solve on their notebooks and feel like they were discovering the ideas by themselves.

Challenges


Adopting the technology was a great challenge; for instance I hadn’t used C# before so I had to learn a programming language while trying to finish a project in a short amount of time. Moreover, Journey was relatively new so the 4 of us relied on documentation and the source code to start using it. But I think that the greatest challenge was to make the course itself, we had to decide what to include and what to leave out (mainly due to time concerns), and we had to make sure that the course was accessible to people with no prior knowledge of computer science. However, as the 4 of us were really passionate about education and we had given both programming tutoring and introductory courses on a Student Group (and Hack Club) before really helped to make the content interesting and approachable.

Future Work


Close to the end of the hackathon we were looking for a way to host the project online, so that students could use it without installing too much dependencies. However we were not able to do so in time, but I think that it would be great to find a way to deploy it or if the tooling does not exist yet to create it ourselves and contriubte to the open source community. I have also been thinking about creating a learning platform that provides lessons in a similar fashion, with interactivity, problems and a story-like approach.