1/1/2018

ndc
conference
london
2018

Day 1

I still can’t believe I am actually going to attend NDC London, it’s been such a pleasingly unexpected surprise from the very beginning when I first got the news that I was selected to receive the final prize.

And now that the day has finally come I am here in the busy Victoria Station, hurriedly walking towards the NDC venue which this year is the beautiful QEII Centre in the heart of Westminster.

Everything feels amazing, weird, and thrilling at the same time and I’m looking forward to discovering all about the latest tech gadgets and devices, as well as meeting cool people who are passionate about Technology as I am.

I’m truly excited about the upcoming React Workshop I am going to attend since it’s actually one of the Front-End technologies I’ve been enjoying working on the most during the past few months, and the opportunity to learn something more about it from Jake Ginnivan is great.

This React Workshop is actually going to last for 2 days (till January 16th), which means it’s going to be a complete and detailed full immersion into this powerful JS library with a clear focus on the best practices.

Here I am now staring in awe at the beautiful Westminster Abbey, which is just next to the NDC venue (i.e. the QEII Convention Centre).

The surroundings are so charming and beautiful that it almost doesn’t feel real to be in such a context for this event.

I then proceed and walk towards QEII to check in and head to the 4th floor, to the “Burns” room (N.d.A. each room takes its name from a famous British author) where the Workshop is going to take place.

Jake is a good teacher from the beginning: he is very professional and prepared and knows everything about the React JS environment and all the best practices to make code faster and more reliable.

He gives us a mission: our task is to recreate the NDC agenda webpage using React.

Luckily, though, he’s always there ready to help us when we face any problems in structuring our application and he assists us during the whole process by giving us examples and extra challenges to implementing inside the Web App.

Unsupported block type: quote

Sir Arthur C. Clarke

Day 2

Today the pace gets increasingly faster and we continue our React Workshop journey by approaching new complex concepts and topics such as "Routing", which is a practice whose aim is to better distribute the components’ logic inside Single Page Applications and we also dive into “Redux”, which is a tool whose purpose is to allow for more solid state management.

It’s definitely challenging to catch up with so many new inputs, but Jake is always there to explain and help us understand the nitty-gritty making the process enjoyable.

React is such a very powerful JS library with impressive potential, even though the learning curve is pretty steep for those who aren’t familiar with JavaScript and its syntax.

<br>

Day 3

Today is the first actual day of NDC and I am absolutely thrilled about all the upcoming talks and great people who are going to present their ideas regarding innovative topics in the realm of Technology.

37 is the number of different countries represented this year at NDC London.

The first speaker is Felienne, Assistant Professor at Delft University of Technology, who’s going to provide insights to answer the tough question:

What is programming anyway?

Her speech was truly inspirational and unconventional (she’s so funny and down-to-earth), and she talked about the ups and downs of her journey as a Ph.D. Candidate and the research she carried on regarding the conception of Spreadsheets as an actual programming tool, which even though turned out to be a failure (since she realized she wasn’t genuinely interested in pursuing this kind of project) was ultimately what led her to find her real passion.

Not only it was an engaging and motivational story, but it involved a good deal of food for thought since it aimed at re-thinking and re-shaping the functional aspect of programming with the purpose of reaching out to people who could feel intimidated by it if we were to stick to the narrow perspective of Software Development as a mere tool for an elite of gifted people.

That’s why Felienne made it her mission to overturn this clichĂ© of programming as a branch of pure application of logic and technical rigidity to solve complex problems.

She is helping children all over the world to learn programming (using the MIT open source language Scratch) in a fun and intuitive way so that they can all begin to familiarize themselves with the tools in a more playful way but with an eye on the structure and reusability of the various programming blocks to optimize the simple logic behind them.

Felienne’s speech lightened up a whole new and refreshing perspective for me since I can really relate to the feeling of being overwhelmed and not feeling like programming is a good choice, (I’ve always struggled with Maths myself and never been really good at it) and the idea of re-defining this conception, and to realize that multiple types of intelligence can actually take advantage of programming in different ways was enlightening.

So thank you Felienne, it’s **empowering** to be able to finally break those barriers and know that it is possible to actively contribute to the Tech Industry in many ways without having to constrain ourselves into a specific role.

The day moves on pretty fast and since we only have a 20min time window between any two conferences, it’s vital to properly manage your time and find out which cool topics are the ones you’d like to hear more about...

The **food** is insanely **delicious** though, and with every break, we are welcomed with some tasty dishes and sweet treats (each day 6 different menu choices representing a different country are available)!

Later on, I then proceed to attend the next talks and listen to Brock Allen (.NET, Web Dev & Security Expert) and Dominick Baier (Identity & Access Control Consultant) speaking about Implementing Authorization in Web Applications & APIs.

They explore patterns, and anti-patterns and provide solutions to possible exploitable techniques on the topic of Authorization and get into the details with great precision.

So I am then surprised by the “Power of Composition” thanks to a great speech by Scott Walschin, who has just finished writing a new book about the elegance and practicality of Functional Programming using F#.

But the day is not over yet and in the afternoon I am able to explore the concept of “Immutability” applied to Programming thanks to Kevlin Henney, who delivers a great speech about how to **reduce state mutability** in code and why this is so important.

  • Jasmine Greenway is the next speaker and she talks about her experience as a teacher at La Guardia Community College (Queens, NYC) which involved teaching young students with no previous programming experience the basics of HTML5, CSS3, and JavaScript in order to build simple Applications.
  • She brought up interesting examples from her personal experience (how she perceived herself as a student and how she consequently interacted with the people around her) and also explained how empathy and soft skills are vital aspects of any aspiring teacher.

    But this evening NDC doesn’t simply end with the last conference because an amazing cruise on the River Thames has been organized, which involves both the NDC participants and all the speakers.

    Now that I look back on it I realize it’s actually been one of the most incredible nights I’ve ever had: spending a few hours cruising on a boat on the Thames and being able to admire London during night-time with all of its vibrant lights and all of the modern and ancient buildings is the scenario for memorable moments.

    On top of that, being able to connect with different people and hear about their stories and experiences in such a context revealed to be even more unique and was the perfect conclusion for a special day like this one.

    ## Day 4

    Today is the second official day of NDC London and many inspiring talks are scheduled for the day.

    We start off with a very inspiring talk by **Alex Ellis** and Scott Hanselman who perform a live demonstration on stage about how to build a Raspberry Pi Kubernetes Cluster running .NET Core.

    They provide a detailed explanation of how they managed to build such a sophisticated and fully functional real server using only a stack of six Raspberry Pis piled each on top of the other.

    The whole audience is wildly entertained and engaged by the talk, since being able to admire the effort and sophistication put into the realization of such a piece of Technology with a budget of less than 300\$ is undoubtedly phenomenal.

    After the talk, everybody is eager to try and build their own Raspberry PI cluster server (myself included since I own one but never figured out how to effectively use it!), and we immediately start googling every resource related to this project and to Open Faas (Alex Ellis is its creator).

    Open Faas is indeed a framework for building serverless functions on top of containers (its GitHub repo has 8394 stars), and during the speech, we were introduced to its various functionalities and to the whole environment needed to set it up.

    Next up is **Kesha Williams**, Full-stack Software Developer and Inventor of SAM (a predictive policing machine learning algorithm inspired by Minority Report that predicts the likelihood of crime).

    She introduces us to the project by explaining how Minority Report (her favorite movie ever) gave her the right inspiration and determination to create such a sophisticated product, which is capable of detecting the likelihood of crime using data imported from the Georgia Police Department.

    With just a simple tweet SAM (n.d. A Suspicious Activity Monitoring) is able to predict whether the person captured by the image sent with the tweet is likely to be a potential criminal.

    It uses AI to analyze the photo and processes it to find facial features which relate to suspicious traits in a target individual.

    Needless to say that this proves to be a very inspiring talk, thanks to the in-depth explanation of the SAM case study and all the tools Kesha used to build it (it relies on AWS and uses Python for the algorithmic predictive model).

    During the afternoon I was very curious to attend the talk “Hack Your Career” by **Troy Hunt**, who talked about his life experience as a Software Developer and about the choices he made that eventually led him to become a successful entrepreneur (he is a well-known for the popular tool “Have I been pawned?”, and for sharing his knowledge about Security both with his Pluralsight courses and blog posts).

    He gave some clever insights about the best strategies to follow in order to have a successful and meaningful career (e.g. the importance of branding oneself, the creation of value, and leadership), one whose aim is to positively impact the world by sharing knowledge and being persistent to ambitious goals.

    The afternoon proceeds as usual with a rapid pace and Machine Learning is the topic I am able to learn about thanks to Tess Ferrandez-Norlander, a brilliant developer from Microsoft who introduces the topic of ML and its incredible implications in today’s world.

    The last speech of the day is given by Sam Aaron, the creator of Sonic Pi, which is a great coding-based Music software (written using Ruby) whose ease of use makes it accessible to anybody who is interested in building original music tracks even if they’re lacking programming skills.

    He performs an amazingly entertaining live demonstration about how the software works, and how to mix the various sounds and effects in order to produce and compose a pleasing symphony.

    One of the best aspects of this product is that it’s actually completely free (I downloaded it straight after the conference!)

    This evening the NDC Party concludes such an intense day of technical presentations on a lively and sparkly note, which invades the whole QEII center making a wonderful atmosphere.

    Day 5 - The Last Day of NDC

    I can’t believe it’s already almost over.

    Time went by so quickly that I just didn’t realize that today is the last day I’ll be spending here at the QEII center, in the heart of beautiful Westminster.

    The atmosphere, the great people I’ve met, the speakers, the countless start-up stands, the delicious food, and the common passion for innovation and technology all make for a unique combination of elements.

    A pure and vibrant interconnected space where everything seemed to be possible and indeed, it has been possible for me to experience all of this thanks to Keyzo’s NCW Competition.

    During his talk named “Web Apps can’t really do that, can they?”, Steve Sanderson shows how he was able to create a fully functional environment that runs pure C# code directly in the browser with almost no lags nor latencies.

    This incredible live demonstration leaves everybody in awe since no such thing ever seemed to be remotely possible due to the nature of C# as a language (and its intrinsic complexity), and the many quirks coming from the nature of JavaScript’s behavior in the browser (a language which splits Developers in a love/hate relationship).

    It definitely looks like a very promising project which I hope is going to be further enhanced since it could potentially open up a whole new horizon for the world of Software Development.

    But our final day at NDC isn’t over yet and so we move on with the first-afternoon talk which is a nice co-hosted Q&A session with Troy Hunt, Felienne, Jon Skeet, and Scott Hanselman who share their opinions and thoughts about many subjects related to the world of Technology in its many forms and answer questions from the crowd.

    They’re all very down-to-earth and attuned to the audience and so they manage to give insightful and witty remarks concerning controversial topics which usually cause a lot of arguing in the Tech community (e.g. Ethics & Professionalism in Computer Science, how to handle behavioral and business problems and difficult situations).

    Next up is a very original and inspiring talk (Mötley CrĂŒe and Mödern JavaScript) by Eric Brandes who’s a JavaScript expert with very solid and wide knowledge about the JS environment and its latest trends and front-end libraries.

    That’s why in his talk he explicitly addresses some of the most common misconceptions about JavaScript as a language and also unravels the truth about the countless new JS frameworks which have been popping up lately that in his view have only contributed to causing even more confusion in the whole Web Development scene.

    To make his point even clearer he adopts some really cool metaphors inspired by images from famous Heavy Metal bands and showcases the actual “winners” and “losers” in the JS world in a funny and engaging way.

    Last but not least is the talk by Marcin Moskala and Igor Wojda about Kotlin, a language that has lately been gaining so much popularity in the Programming world and which is considered the next Android language.

    I was very curious to have an overview of the main features and the general syntax of Kotlin as a programming language, and I have to say that this talk exceeded my expectations in that it covered many more topics (some very advanced ones!) than I had imagined.

    What a weird feeling now as I am walking away from Room 4, where the last talk has just taken place.

    It is actually hard to finally say Goodbye and leave QEII after having spent some memorable days in such an amazing place.

    As I walk past the door and go out of the building headed to St. James’ Park station, I can’t help but recollect all the fresh memories coming from these past few days and it’s wonderful to realize how they make into a perfect “collage” made of emotions, thoughts, images, considerations and inspirational words.

    That’s the reason why I say **thank you**.

    Thank you Keyzo for giving me this opportunity.

    It’s been extraordinary and I will never forget how impactful this experience has been for me, and how it contributed to motivating me, even more, to pursue a career in the world of Technology.