After looking at the interview process from the perspective of the interviewee, this post is going to look at things from the other side. Essentially, if you have a position you need to hire for, know that this decision comes with great responsibility. You’re bringing a new a human into the fold of your company (or bringing someone from a different part of the company onto your team), and this often has long-term, meaningful consequences.»
Tobias wrote a nice post about the low level rendering of our UI. If you haven’t checked it out already, go ahead and do so, it introduces some interesting concepts.
To follow up, I wanted to say a little bit about the more high-level part of the UI, since that’s what has been occupying my mind the last few weeks.»
Full disclosure: I can sometimes be a bit of a glutton for punishment.
This trait has allowed me to endure and sometimes even enjoy being interviewed for a job… weird, I know. I think it’s because my nature—specifically, to meet new people and learn about new problems that need solving—continues to entice me. But interviews aren’t for everyone, and a few close friends of mine absolutely dread it.»
The activity of programming is sometimes divided into high-level system architecture and low-level implementation — the idea being that an experienced programmer can create a high-level design of a system and then hand it over to a more junior programmer for coding. Thus, we get two separate worlds, one of design specifications and UML diagrams and one of actual programming.»
Over the years we have used a lot of different frameworks for creating user interfaces for various editors: wxWidgets, WinForms, WPF, QT, Chromium/HTML5 and others. To be honest we’ve never really liked any of them. Most of them feel bloated and they usually drag in huge dependencies. And when they don’t behave or perform as expected it can be very hard to navigate, debug and understand these monster frameworks.»