London Scala Talks: Monica McGuigan & Jamie Willis
Details
๐ The London Scala User Group is back in action! ๐
Come along to our kickoff London Scala Talks! This month, we'll be hearing from Monica McGuigan and Jamie Willis. We look forward to seeing you!
====================
*Agenda*
6:00pm - ๐ป Doors open. Come along and grab a drink!
6:30pm - ๐ฃ๏ธ Monica McGuigan: My First Year in Scala!
7:10pm - Intermission
7:20pm - ๐ฃ๏ธ Jamie Willis: Writing maintainable parsers with Parsley
8:00pm - ๐ Join us for some free food and drinks and discuss the talks! Vegetarian and gluten free options are provided. Let us know if you'd like something special - we'd be happy to accommodate!
๐ฃ๏ธ Monica McGuigan: My First Year in Scala!
Navigating the world of Scala and functional programming as a beginner can feel daunting and intimidating. A year ago, I was thrown into the deep end of Scala.
Having come out on the other side, I want to share my experience to show newcomers that theyโre not alone and can do this too!
I started my Scala journey in a junior developer role at a corporate bank after graduating with a degree in Physics. So, not only did I have the challenge of learning Scala from scratch, but I also had to apply these concepts to a domain I had no prior knowledge of. Initially, I experienced a lot of confusion and frustration, such as when my implicit encoder did not behave as I expected. However, my experienced Scala colleagues were always there to help me and quickly ease my frustrations. As a result, I want to help others avoid these pitfalls that led to a lot of wasted time for me in the beginning.
During this talk, we will cover the main Scala concepts that I have learned in the past year: what are Algebraic Data Types and how can I use them? Implicits and the issues I faced, and finally, starting out with SBT. I also want to discuss the different ways of learning Scala that I have experienced. Hopefully, after listening to me, other newcomers will feel less alone and more optimistic about diving into the exciting world of Scala!
*Monica McGuigan*
Monica is a junior Scala developer at JP Morgan, working in a team who aims to improve understanding of the banksโ data and data models.
She began her programming journey using C#, then onto a mixture C++, JavaScript and TypeScript throughout her undergraduate Physics degree. Monica is also passionate about encouraging those who do not have a Computer Science background into software development roles, as she has been able to apply her transferable problem-solving skills from a scientific discipline to programming and is really enjoying it!
๐ฃ๏ธ Jamie Willis: Writing maintainable parsers with Parsley
Over the course of my PhD, I watched hundreds of students write parsers, and distilled transferable parser combinator design patterns to fix their biggest pain-points. Not satisfied with just identifying the patterns, however, I figured out how to provide first-class support for the patterns in the Parsley Scala parser combinator library (https://github.com/j-mie6/parsley), making it easy to start using these ideas and helping guide the parser writer to make use of them from the outset. In this talk, weโll explore Parsley with some live-coding, and see how it can be used to create clean and maintainable parsers that can evolve straightforwardly by following the patterns. Parsley โcompilesโ itself to an abstract machine, which is executed, so the high-level abstractions introduced have a minimal impact on the overall running of the parser โ the result is something much more efficient than the classic scala-parser-combinators library.
*Jamie Willis*
Jamie is a (quite possibly former!) PhD student at Imperial College London interested in Scala, parser combinators, and metaprogramming. His research was to use staged metaprogramming to implement fast non-monadic parser combinator libraries in Haskell: though he hopes to soon port this work back to Scala. This is not the subject of the talk however; he also takes an interest in teaching, and how to teach parser combinators as well as how to best to write them in a maintainable way.
๐ Thanks to our partners:
ScalaJobs: https://scalajobs.com/
VirtusLab: https://virtuslab.com/
๐ฃ๏ธ Would you like to present, but are not sure how to start? Give a talk with us and you'll receive mentorship from a trained toastmaster! Get in touch and we'll get you started:
https://forms.gle/zv5i9eeto1BsnSwe8
๐ก Interested in hosting or supporting us? Please get in touch:
https://forms.gle/3SX3Bm6zHqVodBaMA
๐ All London Scala User Group events operate under the Scala Community Code of Conduct:
https://www.scala-lang.org/conduct/
We encourage each of you to report the breach of the conduct, either anonymously or by contacting one of our team members. We guarantee privacy and confidentiality, as well as that we will take your report seriously and react quickly.
https://forms.gle/9PMMorUWgBnbk1mm6
