My 2022 In Programming
2022 is coming to an end, and I’ve wanted to write a summary of some of the programming projects I’ve worked on this year. Enjoy!
SelfieSat is a small CubeSat developed and built by OrbitNTNU. At the start of the year, I worked as an On-Board Computer Engineer on the SelfieSat project. I helped out programming the obc_deploy program, the first program that runs on the satellite after deployment. I also worked on a couple of smaller commands that the On-Board Computer would need to support.
I developed software in C for the satellites’ custom (Linux-like) OS. The operating system was created by a previous student, Erlend. It is called ErlendOS, and to my knowledge, it is used nowhere else. This can cause tedious debugging sessions, especially for an inexperienced C developer like me. Still, overall it went well and has been an amazing project to be a part of!
SelfieSat was launched on 25 May 2022, and we traveled to Cape Canaveral in Florida to see the launch live! The launch was hands down one of the most incredible things I have ever seen. It only got better once we established contact with the satellite on 29 August! Having written code that now floats around in space is bonkers to think about.
We successfully took and transmitted the first image from SelfieSat on 6 December. Great way to end the year!
Working on the app Oslonøkkelen has continued to be really fun. I continued working as a frontend developer, building and maintaining a CMS for the app throughout most of 2022. I’ve been working with the frontend stack of TypeScript, React, Redux and Sass. Working on a project that started a couple years back can sometimes be noticeable (code-wise). While the rest of the team took their summer vacation, I got the time to do some good old refactoring. Removing thousands of lines of code is always fun!
In September, I switched from frontend to iOS development. Since the switch, I’ve learned a ton. It has been challenging, and I still feel lost sometimes, but overall I’m thrilled to work as an iOS developer. I’m enjoying Swift, and getting new features out to production is super fun. I sometimes miss working with the familiar web, but I’m excited to continue working with iOS in 2023.
My friend Gerhard and I bought 500 computer mice and have been selling them from our website, duckmouse.no. We have created the website using Gatsby and Tailwind, and a backend using Go and Stripe. Selling the mice has been great fun!
I got to hold a four-day git course with my friend Carl at the start of the fall semester at NTNU. We held a two-day lecture about git for all of the first-year students of Informatikk and Datateknologi. It was my first time lecturing, and I’m happy that I got the chance to try it out!
I’m in my second year at NTNU, studying for a bachelor’s degree in computer science. Throughout 2022 I’ve only had two courses that involve any programming. What’s really disappointing is that both of the programming courses focus on teaching JavaFX. I’m still not convinced that learning programming by attending university is engine backed.
However, I had an enjoyable theoretical course, TDT4120 - Algorithms and Datastructures. The lecturer was great, and I found the curriculum very interesting. However, memorizing various algorithms and their use cases for an exam did not feel very productive, but I’m overall happy with the course.
I keep rewriting this website, changing both its tech and design. During 2022 I have iterated through many implementations. I’ve tried out Jekyll, Hugo, Blot, and Next. I landed on Astro, which has been fantastic to work with. Without loading the images, the current size of this website is a mere 22KB. I am happy with how it has turned out, and I hope some time passes before I grow tired of this design as well.
In February, I got the chance to switch from embedded development to creating a new web team for OrbitNTNU. Leading a small team of frontend developers was a great experience. We created a modern website using Gatsby, Tailwind, and Sanity.
Those were the big ones, but I’ve worked on some more minor stuff as well:
I did a freelance project, building the landing page for Tycho Space Technologies.
I created a website for my friend Krister, but he has since scrapped my work and decided to build a new website from scratch all by himself, which is really cool!
My friend Leif and I created ov-bot, a Slackbot that checks whether Omega Verksted is open. Currently, while writing this post, it is closing in on over a thousand uses 🚂
Throughout the summer, I created a hand-drawn app using React Native. A very silent launch and a lack of advertising resulted in few users. I plan on working more on this next year.
2022 has been a great year, and I’m excited to continue my programming journey throughout 2023. A key takeaway from this year is that working on multiple projects at once is very challenging, especially when switching between languages and technologies. I often miss the days when I worked full-time and was immersed in just one project.
My main goal for 2023 is to continue learning and improving as an iOS developer. I also want to find a web project that I can contribute to. Those are my priorities as of now, at least.
And for a goal that is not programming related, I want to move abroad during 2023. I have already started looking at different possibilities, making me excited for the year to come.
Happy New Year! 🎆