Software Development From A to Z

We use software every day – operating systems, applications, document editing programs, home banking – but have you ever wondered who creates software and how it’s created? This book guides you through the entire process, from conception to the finished product with the aid of user-centric design theory and tools.

Featured book: Software Development From A to Z: A Deep Dive into all the Roles Involved in the Creation of Software

Spring Security

In Spring Security LiveLessons, Rob and Josh will teach you how to leverage both built-in and custom authentication and authorization in Spring Security. They also discuss the common exploits and how Spring Security can defend against them, how to easily test a Spring Security application, and how to properly design your code.

Featured video: Spring Security

Building a Culture to Support Inclusive Design

Register now for the next ACM Learning Webinar, "Building a Culture to Support Inclusive Design," presented on Thursday, March 7 at 12 PM ET/9 AM PT by Jen Devins, Google Accessibility UX Lead and Nithya Sambasivan, Senior User Experience Researcher at Google. Eve Andersson, Director of Google AI and ACM Professional Development Committee Chair, will moderate the questions and answers session. Continue the discussion and checkout further resources on ACM's Discourse Page.

Image of Jen Devins

IT Project Management Essentials: Initiating and Planning IT Projects

If you want your IT project to complete successfully, you need to get it off to a good start. This course describes how to initiate an IT project effectively. It then focuses on three key areas of planning – developing a work breakdown structure, schedule planning, and cost planning.

Featured course: IT Project Management Essentials: Initiating and Planning IT Projects

Learning Path: Scala: Scala Programmer - Beginner to Expert!

Build classes that compose one or more traits for complete reusability, or create new functionality by fusing them at instantiation. Save time and trouble by using Scala to build object-oriented, functional, Reactive, and concurrent applications. Harness the power of Scala for highly scalable and distributed, microservice- based applications.

Featured resource: Learning Path: Scala: Scala Programmer - Beginner to Expert!

The Bayesian Zig Zag

View the most recent ACM Learning Webinar, "The Bayesian Zig Zag: Developing Probabilistic Models Using Grid Methods and MCMC," on demand. The talk was presented by Allen Downey, Professor of Computer Science, Olin College. Continue the discussion and checkout further resources on ACM's Discourse Page.

Image of Allen Downey

Designing an ML-Minded Product and a Product-Minded ML System

View the ACM Learning Webinar, "Designing an ML-Minded Product and a Product-Minded ML System," on demand. Grace Huang, data science manager at Pinterest, led the discussion. Ankur Teredesai, co-founder and CTO of KenSci, moderated the talk and questions from the audience. Continue the discussion and check out further resources on ACM's Discourse Page.

Image of Grace Huang

From Media to Meaning: Classic Machine Learning

Check out the first ACM TechTalk with Blaise Agüera y Arcas, Distinguished Scientist at Google AI, where he leads a team that works on intersections of neural nets and neuromorphic AI. In this talk, Blaise examines the recent revolution in deep networks which has enabled the use of classic machine learning techniques to go from media to meaning. Among the topics Blaise covers are neural nets, generative adversarial techniques, and the ethical implications of these new technologies.

Image of Blaise Agüera y Arcas

ACM Distinguished Speakers Program

The Distinguished Speakers Program (DSP) is one of ACM's most valued outreach programs, providing universities, corporations, event and conference planners, and local ACM chapters with direct access to top technology leaders and innovators from nearly every sector of the computing industry. ACM will cover the cost of transportation for the speaker to travel to your event.