Reality Hack Is Over

Phew!

5 days have passed, and it feels like it’s been a year, and at the same time, I cannot believe it’s already the next week. Weird but fun time travel experience!
I decided to join a project about a pitch training game. The idea is to make it fun to practice pitch recognition, which is essential for musicians of all sorts. The team was a fun group of very different people:

  • Arguing about UX and complaining about Unity - me
  • Development - a professional Unity developer from Chicago
  • UX & Design - a talented design student from Providence
  • Video editing & inspiration - video production expect from California
  • Idea, sound production, development - a Berklee college student.

Here are a few tips for people interested in hackathons:

Experience does not matter

You will learn right there. Don’t ever think twice about participating because of a lack of expertise. There are a lot of students, and as long as you can learn, you’ll be fine. On my team, the 22 years old musician from Berklee was doing a better job of coding in Unity than I - a software engineer with 15 years of experience.

Take it easy

Hackathons are stressful enough, so you don’t need to put extra pressure on yourself. I made a mistake worrying too much about it, so I could not sleep very well and I was very anxious.
Being in this state significantly reduces your productivity. You should rather take a deep breath and focus on having fun. In the end, I could see that people with this mindset not only won the hackathon but also enjoyed doing it more.

Meet people and make friends

The event is full of talented and passionate people, and it felt very good to be in this kind of environment. Having plenty of networking activities helped me to meet different people a lot. We had lectures on the first day, lunches, dinners, and dedicated networking parties. A lot of people are very introverted, so you need to make the first steps talking to someone most of the time, but it’s very rewarding.
Now I have new friends from all over the world, cannot wait to hang out or create new projects with them!

Select a project carefully

Make sure the project fits one of the categories perfectly. Our idea was in the middle of the categories, and even having a very complicated beautiful game might not win you anything just because you didn’t do what you were asked for.
On the other hand, I saw a lot of interest in so-so projects that were very on target.

You need to ship it

Make sure you limit your scope and deliver something working rather than spending time on a very ambitious project that won’t run in the end. Some teams even made a bad git commit last minute, ruined their application, and could not recover before the judging time. Some teams had a beautiful idea but spend too much time on insignificant details, failed to create an MVP first.
A simple prototype is enough as long as it runs, I believe it’s just a checkmark on the attestation list, and it looked like every team that managed to show at least something working, made it to the semi-finals.

Prepare your development environment in advance

I’ve had my brand new MacBook Pro and I headed to the MIT campus with confidence. I had Unity installed in case I had to use it, I’ve even watched a few tutorials, and I felt good about it. Also, I’ve spent some time playing with WebXR technology, which I’ve already used in the past, and it seemed like nothing changed since then, so I felt pretty confident about that technology.
First of all, you have to use Unity for 90% of VR/AR projects, many people only know Unity and it makes more sense to use the most common platform. Also, it seems to be the most powerful tool (it does not mean it’s a good tool though). It turned out my Unity was not the latest version. By the time I came to the event they released the 2020.3.32 version, and I had the 2020.3.31. Unity builds are not very compatible with each other, and my teammates had to download an older version since they only had the latest installed.
A few hours later I had to admit, Unity was not really working on my Mac with an M1 processor. It would crash all the time, and some features just didn’t even work at all. So I had to use a PC provided by the hackathon, which first of all a nightmare if you like Mac… I won’t even start it, but you know what I mean. And then I had to downgrade my Unity on that PC as well. And surprisingly MIT has a super slow internet connection - it literally took 2 hours to download 3Gb Unity distributive. Isn’t it a place where the Internet began? :)
Ok, now you all have your Unity the same version, it’s working, very good. However, you also need an SDK to work with a specific AR/VR headset. And here we go, it’s not possible to configure these SDKs working in Unity unless you spend a few hours googling, and asking around for help. We were developing for Magic Leap, and they had about 5 people from Magic Leap to help hackers with the setup. Some of the problems they helped us with eventually, some - not. I ended up deleting the MagicLeap controller from the scene every time I wanted to test something because it would not compile on my machine. It compiled on others, fortunately.

Overall, I believe I spend a whole day and a half only dealing with my environmental problems. I think it would help if I downloaded and configured every possible SDK in advance. Also, you have to have a PC for serious VR/AR development.

Conclusion

Next time it will be better. Or it won’t be - now I’m not sure if I ever will be able to spend a whole week playing with technology on a hackathon. I hope I will!

Check out the winners.

comments

comments powered by Disqus