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 proves to be a good teacher from the very beginning: he is very professional and prepared, and knows everything about the React JS environment and about 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 implement inside the Web App.
Today the pace gets increasingly faster and we continue our React Worskshop 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 aim is to allow for a 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.
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 about her journey as a PHD 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 realised 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 difficult 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 familiarise with the tools in a more playful way but with an eye on the structure and reusability of the various programming blocks to optimise 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 realise 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 pattern, 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 Wlaschin, 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.
But this evening NDC doesn’t simply end with the last conference because an amazing cruise on the River Thames has been organised, which involves both the NDC participants and all the speakers.
Now that I look back to it I realise 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.
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 on 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 realisation 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 favourite 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 analyse 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 which eventually led him to become a successful entrepreneur (he is 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 on 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 the Sam Aaron, the creator of Sonic Pi, which is a great coding-based Music software (written using Ruby) whose ease of use make 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 about 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 centre making a wonderful atmosphere.
Last day of NDC London.
I can’t believe it’s already almost over. Time went by so quickly that I just didn’t realise that today is the last day I’ll be spending here at QEII centre, in the heart of the beautiful Westminster.
The atmosphere, the great people I’ve met, the speakers, the countless start-up stands, the delicious food, 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 which runs pure C# code directly in the browser with almost no lags nor latencies.
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 behavioural and business problems and difficult situations).
To make his point even clearer he adopts some really cool metaphors inspired by images from famous Heavy Metal band, 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 which has lately been gaining so much popularity in the Programming world and which is considered as 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 from the building headed to St. James’ Park station, I can’t help but to recollect all the fresh memories coming from these past few days and it’s wonderful to realise 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 in motivating me even more to pursue a career in the world of Technology.