Haven’t written to the blog for a while (just posting links to the facebook page) – reason is the best worst: work 🙂 But indeed, this is a good kind of work. Recently, as part of a streamlining step, my team was repointed to work inside a larger organization – namely Client Platform Engineering. So, what does such a merge allows us – me – to do? What is (a) Client Platform, indeed?
Let’s dream big (I like doing that – dreaming of platforms and architectures generally makes you happy). You are developing applications for clients. You are developing a platform for building such said applications. You make it easy to comprehend but hard to cope, trying to cover all flavors – from mobile to tablet to desktop to desktops and in-between. You want to provide best of the breed in terms of performance and flexibility and nativeness; but indeed you want to keep up the good developer productivity. So what you come up with? A multi-flavored beast in my case. The product I’m maintaining is actively being developed, being backward compatible with dozen+ existing platforms, multiple form factors, and still look classy (look’n’feel is not everything but it’s something that makes sell things easier – old saying but does apply). Sometimes we are bending hard to bring in existing (legacy) codebases with ease (ease from the side of providing the backward compatibility to bring them over and the automatic live conversions to make it look and behave like the rest of the modern application pieces we have), but the flexibility we achieve on being able to bind together message buses from different platforms transparently pays off very quickly. If you are interested in participating on dreaming up such a platform, don’t hesitate – the career site awaits you 🙂
Had rather pleasent experience in the last few days – C++14 and C++17 session with Bjarne (who could introduce C++ in 4 slides, amazing skill), and a session about Optimus, which is a global project within my group to develop a new, cutting edge solution for applications across all areas of the firm, and as such it covers a number of technologies including object stores, bitemporal data representation, graph processing, query languages and UI.
I haven't been to many physical conferences recently – reason is, why should I go there? I can watch the session from a far more convenient place – my PC, my tablet, my couch. I can stop, rewind, get closed caption, take a snapshot. If it's a modern conference, I get realtime discussions, feedback, some cases can even post questions to the presenter if watching realtime. So, what do I miss if I'm watching from home? Yes, I miss the food, the clinking glasses. Yes, I miss the collaboration possibility as well. But yeah, if I'm on a conference, I'd not spend time collaborating, as I paid for it. As some of you might know, I'm planning to resurrect Architecture Forum in Hungary, and I'm struggling, in which format should I do it (btw, if you do have capacity to help in sitebuilding the design for the site, don't hesitate to contact me). So, how would your dream conference look like? Does it have many parallel sessions (like the PGSQL conference where Scott (who is my mate here) is keynoting)? Is it a virtual one? Does it have designated time and place for discussions? Or is that interweaved? Is it an unconference without long presentations (more like a meetup)?
My ideal one is a composite of all of this. Having some prerecorded sessions a few days before, have a relevant keynote. Break into 3-4 streams, each doing 15 min sessions, and probably one full hour near the end. Than give a space and time (and tools) for people to self-organize themselves. And what is yours?