The 2013 edition of DevReach
was held just a week ago. This is certainly the largest and highest quality IT event in Bulgaria (especially since there is no MS Days anymore) and probably on the Balkans. This year the event was even larger as the number of attendees reached one thousand and the number of countries represented was twenty five.
Sadly when things grow in quantity they lose quality. The new venue was not as good for the conference as the previous one but it was larger. Halls where the presentations were held were on different floors and the corridors at the main floor were too narrow and therefore constantly overcrowded. At one occasion they did not let us attend a specific lecture because there were too many people in the room and sitting on the stairs was not allowed due to fire safety rules. On the other hand the event had more raffles, games and booths than previous DevReach events. I guess this year it takes some of the charm of MS Days.
- In the keynote Todd Anglin talked a bit about shifts in the industry (i.e. web tech getting in front of everything else) and then Stephen Forte took the stage to talk about agile development for quite some time. The development methodology talks turn on my bullshit detector faster than anything else. I felt like I should stand up in the middle of the room and shout out "You suck! This is a scam! Zed Shaw is the best. Programming motherfucker!
". BTW Forte says that someone told him Bulgarians use rakia to brush their teeth where in reality it is used for massage.
- "What?!? C# Could Do That?!?" was basically a session on the "dynamic" keyword and a bit of Roslyn with some special attributes thrown in. The speaker Shay Friedman was not a bad speaker and managed to hold the attention of the audience but he did not seem to understand the topic very well and in fact his session contained things that were outright wrong. First of all he suggested that we replace overloads on types with dynamic typing which is in my opinion outrageous thing to do in C# and exactly the thing dynamic should not be used for. Furthermore at the end of the session he claimed that the DLR would handle eventual performance problems with dynamic. While this is true when using ExpandoObject he seemed to imply that this is the case for all his examples including the overloading one which would suffer absurd performance loss since instead simple operations the runtime will perform very complex reflection.
- "What's new in Win8.1" seemed like a very standard Windows 8.1 session at first and we ended up there by accident (the crowded room with fire safety rules) but it turned out to be quite hardcore in the end and presented some quite complex controls and features I did not actually know about. The speaker Gill Cleeren really knew what he was talking about.
- Understanding Dependency Injection & Writing Testable Software by the always entertaining Miguel Castro was a session pretty much described in its title. It was introductory to the topic and was trying to convince the audience that it is not very hard to start using DI. I might actually try it someday but I wonder if it has any value if I do not want to write unit tests.
repository is owned by the same guy (namely Boris Yankov) who also happens to live in Plovdiv and I had never heard of him. Obviously I made sure to meet him as soon as the next day.
- Advanced Topics in Windows 8 Programming with XAML and C# had two speakers namely Michael Crump and Carey Payette. Interestingly the session did not focus on XAML at all but on things like tile updates, notifications, etc. It was not a bad session despite the fact that it was advertised falsely. The speakers were good but they spoke in a calm way and I almost fell asleep. It was not their fault but the fact that I got up in 5:30 two days in a row.
- .NET Memory Primer by Martin Kulov was an interesting session about how the memory is managed and how the .NET garbage collector works. The first part of the session looked like a beginner's tutorial to IL because it talked more about boxing and stack vs. heap than about actual GC algorithms. The most interesting questions about how concurrent GC is able to prevent racing conditions for roots were left unanswered but I still think the session was useful because I did not know about the tools that can dump various memory information directly into the Immediate Window of Visual Studio.
- Extending XAML to Overcome Pretty Much Any Limitation by Miguel Castro was a session about value converters and behaviors used to extend the XAML platform. It was interesting and Miguel is always fun but I found some of the examples overkill when the motivation is to avoid a very small amount of code in the code behind.
As always the raffles were rigged and I did not win anything. I got the best time on a contest for controlling one of those flying drones with four rotors. Obviously I can only win when the way to win is by actually displaying skill. The narrow hallway overcrowded by people piling up for prizes that were won with luck prevented me from appearing on time for the prize (I was 2 minutes late) so they gave it to someone else. Despite the fact that they made sure I do not get any prize I would like to compliment Milestone Systems
and Doncho Angelov
for coming up with the best game on a conference I have seen. They had cameras in their office and the flying drone was there. The player controls the drone with a joystick from the conference venue while watching it via the software the company provides (they make video surveillance software). The player had to move the drone from point A to point B in the office in a certain amount of time which is not so easy since he has to look at several cameras from different angles. This is by far the best game I have seen at a conference for two reasons - first winning a prize requires that participants develop a skill and not just get lucky in a raffle and second it actually showcases the technology the company sells and is not just some random game with something cool. I wish all prizes at conferences were won like this.
Overall it was very good event and I am happy to see it grow through the years.