On Saturday, June 2, 2018, I had the chance to participate in the .NET Core Community online Hackathon.

As I got up really early this Saturday morning, I took the opportunity to participate. My goal was to see something new and learn a bit about how .NET Core is built and gain some new experience.

I heard about the online Hackathon on a tweet of Karel Zikmund

Then reading about it on the Github page linked to the tweet I decided to participate.

I wanted to start with a really small thing because I wasn’t sure about the time I had, and I wanted to be sure to finish it!

I decided to go with CoreFX because it seemed easier than CoreCLR. I also had a look to CoreFxLab. And I might implement something there later as there is some migration to Benchmark.DotNet which I would also like to learn a bit about.

I joined the gitter chat which proved to be really helpful.

Then I picked the issue #19624, Remove conditional compilation in System.Diagnostics.Tracing from CoreFX.

I went and started to read contribution guide and started by installing the tooling, making a fork and clone of the CoreFX repo! All went quite well, even if the documentation could be improved in some places.

I tried to have the tests running inside Visual Studio, but after some pains and no success with ReSharper and Visual Studio, I asked some help on the gitter which Viktor Hofer provided kindly. You need to use the command

Running tests from MSBuild
msbuild /t:RebuildAndTest

By running the tests I found an issue with one tests and quickly guessed that it was because my Windows 10 Pro installation is in en-US and I set my first day of the week to Monday! So I reported the issue on Github. The issue went through a discussion in the team and was finally fixed after being first rejected. I have to say that I agree that when someone clones a repository and run the tests, then everything should be working even in a weird setting like mine.

Back to my pull request, Remove FEATURE_ETLEVENTS conditional compilation which was super easy, nothing really hard when you just need to remove conditional compilation. I just had to disable some Visual Studio plugin which format the code, especially removing extra spaces at the end of lines, which I was surprised to see on some files.

Finally after reviews and final approval from Stephen Toub the pull request was merged and will be part of .NET Core 3.0!

Pull Request merged

So in the end, I was able to fix one issue due for the hackathon, created one issue which was fixed by the team and had some fun and some learning participating in this online Hackathon!

Thanks for organizing it and thanks to the people from the team which was present and helped us!