• [WebDev] Clean Architecture and Software Craftsmanship with TypeScript

    We'll be teaming up with https://logicroom.co/ for an evening on Clean Architecture and Software Craftsmanship. *Talks* Matt (Clean Architecture for the ‘Unwashed’ in Typescript and React): Bloated code bases make it hard for developers to work out ‘where’ to put ‘what’ code. It is all too common to see code bases littered with meaningless variables loaded onto framework properties, long winding functions that serve multiple purposes and badly named files. Using techniques from `The Clean Architecture (TCA): A Craftsman's Guide to Software Structure and Design by Robert (Uncle Bob) Martin, Matt will show steps that any developer can start taking to break their code into multiple files with more clearly defined roles. By using this common architectural framework for building apps developers will leverage greater flexibility and less brittleness. *Pete (Becoming a Software Professional)* : This talk is about the most important things Pete has learned about being a software professional. From his days as a frustrated employee developer fed up working with spaghetti code to setting up a business and working out what it would take to hire and bring out the best in a team of developers who want to deliver the cleanest of code with the minimum of fuss. As an added bonus Pete will also introduce his thoughts on gaining better focus and more energy and using physiological techniques. *Bios* Matt: Matt is a software developer who moved from an enterprise team to work with Logic Room in 2018. He is interested in writing scalable JavaScript and TypeScript architecture which allows easier comprehension and modification for Logic Rooms client full stack apps. He is an advanced practitioner of Logic Rooms methodologies; The Clean Architecture (TCA) for JavaScript and Test Driven Development Simplified (TDDS). Pete: Pete is the founder of Logic Room who has a deep interest in ensuring Logic Rooms client apps can change as fast as their clients business does. He helps the team at Logic Room make space to be able to work to the highest levels of professionalism, ensuring both process and methodology can work in unison to deliver results. *About Logic Room* Logic Room is a JavaScript and TypeScript Software consultancy that helps companies build scalable, stable and testable apps. They work as a company’s team or as an extension of their team. They provide development services, consultancy and strategic technology advice for teams. The frameworks they know and love are Node, React, Angular and React Native. Agenda: 18:30 Food and networking 19:00 - 20:00 : Pete (Becoming a Software Professional) 20:00 - 21:00 : Matt (Clean Architecture for the ‘Unwashed’ in Typescript and React)

  • ML: Introduction and Codelab for Starcraft II

    Spaces Reading

    We are very excited to have Gema Parreño over in Reading all the way from Madrid to show us how to create a deep reinforcement learning (DRL) agent for StarCraftII!! She has a lot of experience in this area and is very kindly sharing it by creating a detailed codelab; after an introductory talk she will walk us through the codelab so we can actually get some hands-on experience. For those who want to follow please bring your laptops. If you don't know anything about RL this is a really good way to find out how it works, why people work on it, and what the challenges are so come along and listen. StarCraft is a challenging real time strategy game and is used as a testbed for many research groups working on reinforcement learning and various aspects of ML. You may have heard of AlphaStar ( if you want to read more see https://deepmind.com/blog/alphastar-mastering-real-time-strategy-game-starcraft-ii/) recently from Deepmind. This talk and lab will give you some idea of how to get started with a complex environment where you can try out your own ideas. Gema will also be able to give you insights into what is hard and how people try to tackle these hard problems. Agenda: 18:30 - Food, drinks, networking 19:00 - Gema (@soygema) - Introduction to reinforcement learning and the StarCraft II Learning environment 19:50 Short break 20:00 - Gema - Codelab - a hands on approach with the Starcraft II environment. 21: 00 - Event close BIO : Gema Parreño is Data Scientist at BBVA Innovation Labs. She designed DeepAsteroid, a Neural net architecture able to predict asteroids impact on earth . The project was selected among the 25th most innovative in the world and in between the 5th of the best use of data in NASA Space Apps Challenge 2016 and selected as one of the cases of use for TensorFlow in Google I/O 2017. She currently contributes to several open source projects having machine learning at their core. More at https://github.com/soygema https://twitter.com/SoyGema Requirements for codelab: https://github.com/SoyGema/pysc2_StarcraftII_codelab/blob/master/pysc2_codelab_material/requirements.txt Starcraft takes quite a while to install so you need to do that before you get here if you want to participate, else you can just watch and make notes and try it at home!

  • Cloud Study Jam - ML and Kubernetes

    UTC Reading

    Want to get started on the Google Cloud, but don't know where to begin? Join us for our Cloud Study Jam! Get official Google training, a $55+ value, free of charge. Together we'll work through several Google Cloud labs. You will get hands-on experience with Kubernetes and Machine Learning. Then after our live session, you will have free access to more labs you can finish at home. Complete all labs in the quest and earn a Google-hosted badge for your online profile, and additional 30 days access to the training platform to compete any labs you want. Bring a laptop and charger (PC, Mac or Chromebook)! The labs will run on all of the latest versions of the popular browsers. For the best experience, make sure your laptop has Firefox or Chrome installed. Don’t forget your charger. Choose from either of the two Study Jams below: ML Study Jam labs: Overview: http://bit.ly/sj-ml1 Details: https://google.qwiklabs.com/quests/34 * Introduction to SQL * BigQuery Qwik Start * Cloud ML Engine Qwik Start * Google Cloud Speech API * Google Genomics Kubernetes Study Jam labs: Overview: http://bit.ly/sj-k8s1 Details: https://google.qwiklabs.com/quests/29 * Kubernetes in the Google Cloud * Introduction to Docker * Hello Node Kubernetes * Managing Deployments Using Kubernetes Engine * Build a Slack Bot Agenda: 18:30 Arrive, food, drinks and setup 19:00 Overview of how the quests work and how to get the most out of them. Setup and start working on the quests 20:00 Check-in: feedback and problems raised/solved. Continue with labs. 21:00 Wrap up - setup working groups if desired.

  • [Cloud] Solving Reliability Fears with SRE/Don't lose your data- or your sanity

    What can I say? It's the event we've been wanting to pull together for a while. Now it's happening on 4th March in Reading. The subject is Site Reliability Engineering, a very important aspect of hosting reliable, predictable services. We have two Googlers coming to present topics and it promises to be another great night. NOTE: This is a Monday evening at Central Working. It's also Florian's return to Reading :-) 1. Anton Tolchanov (@iamknyar) | Solving Reliability Fears with SRE We will describe the key principles behind Site Reliability Engineering and discuss how they can be used in practice to run reliable systems. Bio: Despite getting a degree in business administration, Anton has been working with software his whole career. He has been a Site Reliability Engineer at Google since 2014. His interests, hobbies and personal traits are not something he'd like to disclose in a public bio, but he'll be happy to tell you his secret to good scrambled eggs. 2. Florian Rathgeber (@frathgeber) | Don't lose your data - or your sanity Data loss or corruption is a horror scenario for any service. This talk will provide some best practices for maintaining your data integrity (and your sanity) and make data loss less likely. Bio: Florian defected from academia after a PhD in computational science at Imperial to build data pipelines for meteorological data at the European Centre for Medium-range Weather Forecasts (ECMWF) for 3 years before joining Google as a Site Reliability Engineer (SRE) on Google Cloud. At evenings and weekends he cycles to many more meetups than is healthy and tries to excite kids, women and underrepresented minorities about technology. Agenda: 18:30 - Food, drinks, networking 19:00 - Anton Tolchanov (@iamknyar) | Solving Reliability Fears with SRE 20:00 - Florian Rathgeber (@frathgeber) | Don't lose your data - or your sanity 21: 00 - Event close We look forward to seeing you there!!

  • Google Hash Code | Reading 2019

    Polly Vacher Building

    Google Hash Code 2019 - sign up today! Think you could optimize the layout of a Google Data Center? How about scheduling a fleet of drones to make deliveries around the world? Tackle an engineering problem from Google during Hash Code, our team programming competition. Are you up for the challenge? More detail to follow. Event brought to you in collaboration with our friends at Reading University Hacking.

  • [WebDev] What is Kotlin and why should you use it. With live coding demo.

    We promised a Kotlin evening and we're finally delivering it. Ruslan Zaharov a self-confessed Kotlin Konvert will be hosting the session and taking us through his experiences with the language. Agenda: - What is Kotlin and why should you use it. - Live demo for a small but real project written in Kotlin Abstract: Kotlin is gaining popularity after its bright debut in the Android ecosystem. As it attracts more attention, it is possible to find it not only in the mature world of the JVM, but also in some very different ecosystems such as Javascript and Native. In this talk, Ruslan is going to introduce the kool Kotlin features and how they allow writing less error-prone, more concise and most importantly - maintainable kode. During his live coding session, he will demonstrate how to build a basic but real service, embracing some of the most compelling features of the language Bio: Mainly working in startups holding CTO/team lead positions. Ruslan has been working in software development for more than 10 years and has gained a lot of experience in various technologies. Through his day job and many side projects he has built Android apps, websites, tooling, bots, scrapers and data processors. Obsessed with types but pragmatic, he advocates concise, strict, business-efficient code whilst applying a lean software development approach. Agenda: 18:30 Food and networking 19:00 - 20:00 : What is Kotlin and why should you use it. 20:00 - 21:00 : Live demo for a small but real project written in Kotlin

  • [WebDev] Native mobile applications with JS and User experience design

    First listed event for GDG & Freecodecamp study group of 2019. Once again at the fantastic Spaces offices in the centre of Reading. It's within easy walking range of the station and all of the town centre car parks. It's a double header with Joe Fazzino and Rob Sutcliffe. ----------------------------------------------------------------- Title: Building true native mobile applications with JavaScript Synopsis: The web is accelerating at a great pace with things like Progressive Web Applications, Service Workers, et al. Despite this, users just aren't used to treating websites like normal applications on their phone so more often than not they turn to the App Store or the Google Play Store. Wouldn't it be great if there were a way that you could make a real native application for Android and iOS (maybe more?) without having to deal with, the "should I learn Swift or Objective C" or "do I really have to write Java" debates. Enter React Native, an open source framework for building native applications in JavaScript/React, created by Facebook. In this session I'm going to introduce you to React Native, show you why it's a bit more special than some other similar technologies you may also have heard of. After some slides I'll show some cool examples and talk through the code so by the end of it you can come away with an understanding of why React Native is becoming such a sought after skill for developers (especially within start up culture). How it can possibly work, and how you can start creating awesome applications that you can publish on the App Store and Google Play Store. Bio: Joe is a final year student at the University of Reading studying Computer Science. He has worked with React Native for 2 years and has taken an app from start to publication to help students find people to live with. Joe has experience with GraphQL, NodeJS and a cornucopia of front end tools. Find his blog at https://joefazzino.me and his twitter at https://twitter.com/purefazz. ----------------------------------------------------------------- Confused About User Experience Design? Don't know your Design Thinking from your Human Centred Design? You're not alone! This will be a safe space where you can admit that you don't think writing something on a post-it note makes it any more innovative. Designing an application is a relatively new challenge and the processes we use to solve our problems have evolved like crazy. Some have genuinely changed the world and other may have even ruined it. This session will introduce you to these processes and their outcomes, to the people who found new ways of working and the current struggles we still have today. The goal is to give you a curiosity to find out more about using design process to solve problems in your life or work and to give you a vocabulary to communicate design better with others. Rob Sutcliffe Rob is a designer and front-end developer with over 10 years experience. Over those years he has worked in startups, multinationals, managed design teams and consulted fortune 500 companies. He got his degree in Graphical Communications from The University College of The Creative Arts. And more recently Rob has started writing about and teaching design skills. He believes that it's best to be exposed to a range of environments and people to improve his craft. In fact the only thing in common in each of the places he has worked is... no one seemed to know what they were saying, when they said "UX"! Agenda: 18:30 Food and networking 19:00 - 19:55 : Joe Fazzino - Building true native mobile applications with JavaScript 20:00 - 21:00 : Rob Sutcliffe - Confused About User Experience Design?

  • [Cloud] Focus on your code, not infrastructure with Cloud Functions and kNative

    It looks like we've all been good girls and boys because Santa is bringing us an absolutely top billing in the Christmas run up. There will be mince pies and prizes for the best Christmas jumpers. Martin Omander (Cloud Developer Advocate at Google) After rave reviews from Silicon Valley and New York. Reading is being given a chance to listen to Martin's talk. Title: Focus on your code, not infrastructure, with Google Cloud Functions Description: In this talk, we will follow the story of the fictional startup "In Jest", publishers of an app that tells jokes. At first, the developers at "In Jest" need to get a minimum viable product up and running in an hour. As their business grows they will have to integrate with Google Sheets, databases, analytics systems, marketing systems and so on. We will see the 100 lines of code needed to make this happen, without having to worry the team about servers and data centres. Henry Bell & Justin Grayston (DevOps Product Specialists @ Google) Title: Knative -- the why, what and when Taking a look at why Knative exists, what it is and when you might decide to make it part of your stack. We'll walk through the nuts and bolts and demo some of its features. Agenda: 18:30 Food and networking 19:00 - 20:00 : Martin Omander (Google) 20:00 - 21:00 : Henry Bell & Justin Grayston (Google)

  • [IoT] Google IoT Workshop - “Hey Google, what is the temperature at home?”

    James Coggan (GDE IoT) will be hosting and running us through a set of labs. “Hey Google, what is the temperature at home?” “Hey Google, turn the light on at home” Android Things gives you the ability to connect all your IoT devices! You can write Android Things code the same way you would write and Android application. In this workshop you are going to have access to an Android Things development kit, where you will connect it to some sensors and actuators, after that connect it to Firebase and the Google assistant, giving you the ability to know the temperature at your house, turn the lights on, etc In this workshop we will be using Android Studio to edit our code and run the applications on the Android Things device. To download it open thins link: https://developer.android.com/studio/ Please also make sure you bring your USB-C to USB converter if you have a new Macbook, and of course your laptop charger.

  • [ML] Generative Adversarial Networks and Building an Automated Bitcoin Trader

    Join us for a special ML focused event where we look at some of the issues and latest research in the area of GANs and then dive under the hood of a bitcoin trader using ML. This event contains a mixture of ML research and implementation, both going in depth with experienced speakers who are excited to share their knowledge so please join us for a very interesting evening!! Agenda: 18:30 Food, drinks, networking 19:00 Michael Arbel - GAN’s and their stability issues (training) + the latest advances to make training more stable. 20:00 Bret Colloff - Building an Automated Bitcoin Trader with Machine Learning Talk 1: "GAN’s and their stability issues (training) + the latest advances to make training more stable" There has been an explosion of interest in generative adversarial networks (GANs) over the last few years. These models allow approximate samples from a complex high-dimensional target distribution, using a model distribution, where estimation of likelihoods and exact inference are not tractable. GANs have yielded very impressive empirical results, particularly for image generation, far beyond the quality of samples seen from most earlier generative models. These excellent results, however, have depended on adding a variety of methods of regularization and other tricks to stabilize the notoriously difficult optimization problem of GANs. Still, the reason why these additional tricks are needed is not completely understood. In the present work we shade some light on the reasons such instabilities occur and provide a principled method for regularization when the Maximum Mean Discrepancy is used as a loss. Experimental results show that the proposed regularization leads to stable training and outperforms state-of-the art methods on image generation. Speaker Bio: Michael Arbel Michael is a Ph.D. student at the Gatsby Computational Neuroscience Unit under the the supervision of Arthur Gretton. Prior to that he graduated from Ecole Polytechnique with a major in Applied Mathematics and got a Masters Degree in Machine Learning at Ecole Normal Supérieure. He also worked as a Computer Vision Engineer at Prophesee where he developed tracking algorithm for event based sensors. His interested in unsupervised learning methods (both parametric and non-parametric) and in the theoretical foundations of deep-learning. Talk 2: "Building an Automated Bitcoin Trader with Machine Learning" Summary This talk explores the process of building an automated, machine learning driven trading platform that is connected to cryptocurrency exchanges from inception to live testing. It will cover; monitoring the system and interacting with the live system with a chat interface through Telegram, examining the required knowledge, decisions, and mistakes that arise in developing the system. Technologies applied We'll be touching on Python, Docker, Numpy & Sklearn, Keras, PubSub, Cloud Storage, Kubernetes Main topics: • Basic currency trading and indicators, and turning these into features. • Building a Neural Network in Keras with different layers. • Designing and implementing a scalable cloud platform to operate from. Speaker Bio: Bret is a software developer working at Hu:toma AI on the APIs and core platform. He started as a developer/tester at Microsoft working on games and switched to streaming TV before moving to Ericsson and then Hu:toma. He is also a hobbyist in other aspects of development such as machine learning with an interest in scalable cloud-based systems and functional programming