Be a real master of the C programming language, and the art of problem solving using effective approaches of programming
Duration 4 Days 24 CPD hours This course is intended for This course is geared for experienced skilled Java developers, software developers, data scientists, machine learning experts or others who wish to transtion their coding skills to Scala, learning how to code in Scala and apply it in a practical way. This is not a basic class. Overview Working in a hands-on learning environment led by our expert instructor you'll: Get comfortable with Scala's core principles and unique features, helping you navigate the language confidently and boosting your programming skills. Discover the power of functional programming and learn techniques that will make your code more efficient,maintainable, and enjoyable to write. Become proficient in creating dynamic web applications using the Play Framework, and easily connect to databases with the user-friendly Slick library. Master concurrency programming with Akka, empowering you to build scalable and fault-tolerant applications that excel in performance. Enhance your testing skills using ScalaTest and ScalaCheck, ensuring the reliability and quality of your Scala applications, while having fun in the process. Explore the fascinating world of generative AI and GPT technologies, and learn how to integrate them into your projects,adding a touch of innovation and intelligence to your Scala solutions. If your team requires different topics, additional skills or a custom approach, our team will collaborate with you to adjust the course to focus on your specific learning objectives and goals. Discover the power of Scala programming in our comprehensive, hands-on technical training course designed specifically for experienced object-oriented (OO) developers. Scala is a versatile programming language that combines the best of both OO and functional programming paradigms, making it ideal for a wide range of projects, from web applications to big data processing and machine learning. By mastering Scala, you'll be able to develop more efficient, scalable, and maintainable applications. Fast Track to Scala Programming for OO / Java Developers is a four day hands-on course covers the core principles of Scala, functional programming, web application development, database connectivity, concurrency programming, testing, and interoperability between Scala and Java. Additionally, you'll explore cutting-edge generative AI and GPT technologies, learning how to integrate them into your Scala applications for intelligent suggestions or automation. Throughout the course you?ll explore the latest tools and best practices in the Scala ecosystem, gaining valuable knowledge and experience that can be directly applied to your day-to-day work. With 50% of the course content dedicated to hands-on labs, you'll gain practical experience applying the concepts you've learned across various projects, such as building functional web applications, connecting to databases, designing modular components, and implementing concurrency. Upon completing the course, you'll have a solid understanding of the language and its features, empowering you to confidently apply your new skills in data science and machine learning projects. You'll exit well-prepared to create efficient, scalable, and maintainable Scala applications, regardless of the complexity of your projects. Introduction to Scala Scala features and benefits Comparing Scala with Java and other OO languages Installing Scala and setting up the development environment Object-Oriented Programming in Scala Classes and objects Traits, mixins, and inheritance Companion objects and factories Encapsulation and polymorphism Functional Programming Basics Pure functions and referential transparency Higher-order functions and currying Immutability and persistent data structures Pattern matching and recursion Having Fun with Functional Data Structures Lists, sets, and maps in Scala Folding and reducing operations Stream processing and lazy evaluation For-comprehensions Building Web Applications in Functional Style Introduction to Play Framework Functional web routing and request handling JSON handling with Play-JSON Middleware and functional composition Connecting to a Database Introduction to Slick library Database configuration and setup Querying and updating with Slick Transactions and error handling Building Scalable and Extensible Components Modular architecture and design patterns Dependency injection with MacWire Type classes and type-level programming Implicit parameters and conversions Concurrency Programming & Akka Introduction to Akka framework and Actor model Actor systems and message passing Futures and Promises Supervision and fault tolerance Building Confidence with Testing Introduction to ScalaTest and ScalaCheck Unit testing and property-based testing Test-driven development in Scala Mocking and integration testing Interoperability between Scala and Java Calling Java code from Scala Using Java libraries in Scala projects Converting Java collections to Scala collections Writing Scala code that can be called from Java Using Generative AI and GPT Technologies in Scala Programming Overview of GPT and generative AI Integrating GPT with Scala applications Use cases and practical examples
Duration 5 Days 30 CPD hours This course is intended for In order to be successful in this course you should have incoming hands-on experience with another programming language. This course is not for non-developers or new developers. Possible roles that may attend this course include: Software Developers: Professionals who have been working with other programming languages and want to expand their skillset by learning Java and its object-oriented features. Web Developers: Those who work on web applications and want to enhance their back-end development capabilities with Java. Mobile App Developers: Developers who wish to enter the world of Android app development, where Java is a widely used language for creating mobile applications. Overview This 'skills-centric' course is about 50% hands-on lab and 50% lecture, designed to train attendees in core OO coding and Java development skills, coupling the most current, effective techniques with the soundest industry practices. Our engaging instructors and mentors are highly experienced practitioners who bring years of current 'on-the-job' experience into every classroom. Working in a hands-on learning environment, guided by our expert team, attendees will learn to: Understand what OO programming is and what the advantages of OO are in today's world Work with objects, classes, and OO implementations Understand the basic concepts of OO such as encapsulation, inheritance, polymorphism, and abstraction Understand not only the fundamentals of the Java language, but also its importance, uses, strengths and weaknesses Understand the basics of the Java language and how?it relates to OO programming and the Object Model Learn to use Java exception handling Understand and use classes, inheritance and polymorphism Understand and use collections, generics, autoboxing, and enumerations Become familiar with the concept of functional programming using Lambda Expressions Process large amounts of data using the Stream API introduced in Java 8 Discover the new Date/Time API Use the JDBC API for database access Work with annotations Take advantage of the Java tooling that is available with the programming environment being used in the class Java 8 Features: Lambda Expressions, Method and Constructor references, The Streams API, Collectors, The Optional class Geared for experienced developers, Basic Java Programming for Developers New to OO, this hands-on, workshop-style course will provide you with an immersive learning experience that will expand your skillset and open doors to new opportunities within the ever-growing technology landscape. Mastering Java and its powerful capabilities will provide you with the competitive edge you need to stand out in today's fast-paced development world. Working in a hands-on learning environment led by our expert coach, you?ll thoroughly explore the foundations of the Java platform, essential programming concepts, and advanced topics, ensuring you acquire a strong understanding of the language and its ecosystem. The object-oriented programming principles taught in this course promote code reusability and maintainability, enabling you to streamline development processes and reduce long-term costs. As you progress through the course, you will also gain familiarity with using an IDE, enhancing your development workflow and collaboration with other Java developers, enabling you to integrate seamlessly into new projects and teams. You?ll also gain practical experience in applying the concepts and techniques learned, solidifying your newly acquired skills and facilitating their direct application in real-world scenarios. You?ll exit this course empowered to create robust, scalable, and efficient Java-based applications that drive innovation and growth for your organization The Java Platform The Java Platform Lifecycle of a Java Program Responsibilities of JVM Documentation and Code Reuse Using the JDK Explain the JDK?s file structure Use the command line compiler to compile a Java class Use the command line Java interpreter to run a Java application class The IntelliJ Paradigm Introduce the IntelliJ IDE The Basics of the IntelliJ interface IntelliJ Projects and Modules Creating and running Java applications Writing a Simple Class Write a Java class that does not explicitly extend another class Define instance variables for a Java class Create object instances Primitives vs Object References Implement a main method to create an instance of the defined class Adding Methods to the Class Write a class with accessor methods to read and write instance variables Write a constructor to initialize an instance with data Write a constructor that calls other constructors of the class to benefit from code reuse Use the this keyword to distinguish local variables from instance variables Object-Oriented Programming Real-World Objects Classes and Objects Object Behavior Methods and Messages Inheritance, Abstraction, and Polymorphism Encapsulation Inheritance Method Overriding Polymorphism Essential Java Programming Essential Java Programming Language Statements Arithmetic operators Operators to increment and decrement numbers Comparison operators Logical operators Return type of comparison and logical operators Use for loops Switch Expressions Switch Expressions and yield Using Strings and Text Blocks Create an instance of the String class Test if two strings are equal Get the length of a string Parse a string for its token components Perform a case-insensitive equality test Build up a string using StringBuffer Contrast String, StringBuffer,and StringBuilder Compact Strings Text Blocks Specializing in a Subclass Constructing a class that extends another class Implementing equals and toString Writing constructors that pass initialization data to parent constructor Using instanceof to verify type of an object reference Pattern matching for instanceof Overriding subclass methods Safely casting references to a more refined type Fields and Variables Discuss Block Scoping Rules Distinguish between instance variables and method variables within a method Explain the difference between the terms field and variable List the default values for instance variables Final and Static fields and methods Local Variable type inference Using Arrays Declaring an array reference Allocating an array Initializing the entries in an array Writing methods with a variable number of arguments Records Data Objects in Java Introduce records as carrier of immutable data Defining records Java Packages and Visibility Use the package keyword to define a class within a specific package Discuss levels of accessibility/visibility Using the import keyword to declare references to classes in a specific package Using the standard type naming conventions Visibility in the Java Modular System Correctly executing a Java application class The Java modular system Defining Modules Inheritance and Polymorphism Write a subclass with a method that overrides a method in the superclass Group objects by their common supertype Utilize polymorphism Cast a supertype reference to a valid subtype reference Use the final keyword on methods and classes to prevent overriding Interfaces and Abstract Classes Define supertype contracts using abstract classes Implement concrete classes based on abstract classes Define supertype contracts using interfaces Implement concrete classes based on interfaces Explain advantage of interfaces over abstract classes Explain advantage of abstract classes over interfaces Static, default and private methods in interfaces Sealed classes Introduce Sealed classes The sealed and permits modifiers Sealed Interfaces Exception Handling Introduction to Exception Handling Introduce the Exception architecture Defining a try/catch blocks Checked vs Unchecked exceptions Exceptions Defining your own application exceptions Automatic closure of resources Suppressed exceptions Handling multiple exceptions in one catch Helpful Nullpointers Enhanced try-with-resources Java Developer's Toolbox Developing applications Introduce the wrapper classes Explain Autoboxing and Unboxing Converting String representations of primitive numbers into their primitive types Defining Enumerations Using static imports Deprecating methods Advanced Java Programming Introduction to Generics Generics and Subtyping Bounded Wildcards Generic Methods Legacy Calls To Generics When Generics Should Be Used Lambda Expressions and Functional Interface Understanding the concept of functional programming Writing lambda expressions Understanding functional interfaces Collections Provide an overview of the Collection API Review the different collection implementations (Set, List and Queue) Explore how generics are used with collections Examine iterators for working with collections Using Collections Collection Sorting Comparators Using the Right Collection Lambda expressions in Collections Bonus Topics: Time Permitting Streams Understanding the problem with collections in Java Thinking of program solutions in a declarative way Use the Stream API to process collections of data Understand the difference between intermediate and terminal stream operations Filtering elements from a Stream Finding element(s) within a Stream Collecting the elements from a Stream into a List takeWhile and dropWhile intermediate operations Collectors Using different ways to collect the items from a Stream Grouping elements within a stream Gathering statistics about numeric property of elements in a stream
The Fitness Instructor course is designed to provide a deep understanding of the scientific and theoretical aspects of fitness training. Starting with an introduction to the fundamental concepts of fitness training, this course guides you through the critical areas of anatomy and physiology, essential for any aspiring fitness professional.
Duration 3 Days 18 CPD hours This course is intended for Anyone starting to write SAS programs Overview Use SAS Studio and SAS Enterprise Guide to write and submit SAS programs. Access SAS, Microsoft Excel, and text data. Explore and validate data. Prepare data by subsetting rows and computing new columns. Analyze and report on data. Export data and results to Excel, PDF, and other formats. Use SQL in SAS to query and join tables. This course is for users who want to learn how to write SAS programs to access, explore, prepare, and analyze data. It is the entry point to learning SAS programming for data science, machine learning, and artificial intelligence. Essentials The SAS programming process. Using SAS programming tools. Understanding SAS syntax. Accessing Data Understanding SAS data. Accessing data through libraries. Importing data into SAS. Exploring and Validating Data Exploring data. Filtering rows. Formatting columns. Sorting data and removing duplicates. Preparing Data Reading and filtering data. Computing new columns. Conditional processing. Analyzing and Reporting on Data Enhancing reports with titles, footnotes, and labels. Creating frequency reports. Creating summary statistics reports. Exporting Results Exporting data. Exporting reports. Using SQL in SAS Using Structured Query Language in SAS. Joining tables using SQL in SAS. Additional course details: Nexus Humans SAS Programming 1 - Essentials training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the SAS Programming 1 - Essentials course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Duration 70 Days 420 CPD hours Cisco Learning Library: Networking offers a subscription to all Cisco core online networking training, including product training, technology training, and certifications such as Cisco Routing and Switching, Wireless, Design, and Network Programmability.This comprehensive technical training library includes full-length, interactive certification courses, additional product and technology training with labs, and thousands of reference materials. Networking Library Certification Courses CCNA Implementing and Administering Cisco Solutions (CCNA) v1.0 CCNP Enterprise Implementing and Operating Cisco Enterprise Network Core Technologies (ENCOR) v1.0 Implementing Cisco Enterprise Advanced Routing and Services (ENARSI) v1.0 Implementing Cisco SD-WAN Solutions (SDWAN300) v1.0 Designing Cisco Enterprise Networks (ENSLD) v1.0 Designing Cisco Enterprise Wireless Networks (ENWLSD) v1.0 Implementing Cisco Enterprise Wireless Networks (ENWLSI) v1.1 Implementing Automation for Cisco Enterprise Solutions (ENAUI) v1.0 CCIE Enterprise Infrastructure Implementing and Operating Cisco Enterprise Network Core Technologies (ENCOR) v1.0 CCIE Enterprise Wireless Implementing and Operating Cisco Enterprise Network Core Technologies (ENCOR) v1.0 Product and Technology Training Implementing and Administering Cisco Solutions (CCNA) v1.0 Developing Applications and Automating Workflows Using Cisco Core Platforms (DEVASC) v1.0 Developing Applications Using Cisco Core Platforms and APIs (DEVCOR) v1.0 Developing Solutions Using Cisco IoT and Edge Platforms (DEVIOT) v1.0 Implementing DevOps Solutions and Practices Using Cisco Platforms (DEVOPS) v1.0 Developing Applications for Cisco Webex and Webex Devices (DEVWBX) v1.0 Implementing Automation for Cisco Enterprise Solutions (ENAUI) v1.0 Implementing Automation for Cisco Collaboration Solutions (CLAUI) v1.0 Implementing Automation for Cisco Data Center Solutions (DCAUI) v1.0 Implementing Automation for Cisco Security Solutions (SAUI) v1.0 Implementing Automation for Cisco Service Provider Solutions (SPAUI) v1.0 Introducing Automation for Cisco Solutions (CSAU) v1.0 Cisco Certified Technician Supporting Cisco Routing and Switching Network Devices (RSTECH) v3.0 Implementing and Operating Cisco Enterprise Network Core Technologies (ENCOR) v1.0 Implementing Cisco Enterprise Advanced Routing and Services (ENARSI) v1.0 Implementing Cisco SD-WAN Solutions (SDWAN300) v1.0 Designing Cisco Enterprise Networks (ENSLD) v1.0 Implementing Cisco Enterprise Wireless Networks (ENWLSI) v1.1 Cisco NCS 2000 Deploying 96-Channel Flex Spectrum (OPT201) v3.0 Cisco Digital Network Architecture Implementation Essentials (DNAIE) v2.0 Understanding Cisco Industrial IoT Networking Foundation (INFND) v1.0 Programming Use Cases for Cisco Digital Network Architecture v1.0 (DNAPUC) v1.0 Engineering Cisco Meraki Solutions Part 1 (ECMS1) v1.0 Deploying Cisco SD-Access (ENSDA) v1.1 Cisco SD-WAN Operation and Deployment (ENSDW) v1.0 Introduction to Cisco IOS XR (IOSXR100) v2.0 Cisco IOS XR System Administration (IOSXR200) v1.1 Cisco IOS XR Basic Troubleshooting (IOSXR201) v1.1 Cisco ASR 9000 Series IOS XR 64-Bit Software Migration and Operational Enhancements (IOSXR211) v1.0 Cisco IOS XR Layer 3 VPN Implementation and Verification (IOSXR301) v1.1 Cisco IOS XRMulticast Routing Implementation and Verification (IOSXR302) v1.1 Cisco IOS XR Broadband Network Gateway Implementation and Verification (IOSXR304) v1.0 NSO Essentials for Programmers and Network Architects (NSO201) v3.0 Cisco NSO Administration and DevOps (NSO303) v3.0 Cisco Optical Technology Advanced (OPT300) v2.0 Implementing Segment Routing on Cisco IOS XR (SEGRTE201) v2.0 Operating and Implementing Cisco WAN Automation Engine (WAE200) v3.0 Implementing Cisco Virtual Wide Area Application Services (VWAAS) v1.0 Configuring and Operating Cisco EPN Manager (EPNM100) v3.0 Cisco Elastic Services Controller (ESC300) v2.0 Product and Technology Training Deploying Cloud Connect Solutions with Cisco Cloud Services Router 1000V (CLDCSR) v1.0 Implementing Cisco Multicast (MCAST) v2.0 Cisco Prime Central Intermediate ? Administration and Operations (CPCI-AO) v1.0 Cisco Prime Network Intermediate ? Administration and Operation (CPNI-AO) v1.1 Cisco Prime Provisioning (CPP) v6.5 Cisco Prime Performance Manager (CPPERF) v1.0 Implementing Cisco Catalyst 9000 Switches (ENC9K) v1.0 Cisco Aggregation Services Router 9000 Series Essentials (ASR9KE) v6.0 Network Convergence System 5500 Series Router (NCS5500HW) v1.0 Cisco DNA Center Fast-Start Use Cases (A-SDA-FASTSTART) Getting Started with DNA Center Assurance (A-DNAC-ASSUR) v1.0 Overview of Cisco DNA Center Fast Start Use Cases for System Engineers (P-SDA-SYSEF) Planning and Deploying SD-Access Fundamentals (For Customers) (CUST-SDA-FUND) v1.0 Preparing the Identity Services Engine (ISE) for SD-Access (For Customers) (CUST-SDA-ISE) v1.0 SD-Access 1.2 Update Supplement (A-SDA-12UPDT) The SD-WAN Mastery Collection - Getting Started (For Customers) v1.0 (A-SDW-START) The SD-WAN Mastery Collection - Deploying the Data Plane (For Customers) v1.0 (A-SDW-DATPLN) The SD-WAN Mastery Collection - Developing the Overlay Topology (For Customers) v1.0 (A-SDW-OVRLAY) The SD-WAN Mastery Collection - Managing the Application Experience (For Customers) v1.0 (A-SDW-APPEXP) The SD-WAN Mastery Collection - Bringing Up the Control Plane Devices (For Customers) v1.0 (A-SDW-CTRPLN) Securing Branch Internet and Cloud Access with Cisco SD-WAN (A-SDW-BRSEC) Programming for Network Engineers (PRNE) v1.0 Cisco Optical Technology Intermediate (OPT200) v2.0 Advanced Implementing and Troubleshooting MPLS VPN Networks (AMPLS) BGP Bootcamp (BGP) Building Core Networks with OSPF, IS-IS, BGP and MPLS Bootcamp (BCN) Configuring BGP on Cisco Routers (BGP) v4.0 Implementing Cisco MPLS v3.0 Internetworking Technology Overview (ITO) Introduction to IP Multicast Bootcamp Introduction to IPsec VPN Bootcamp (IPsec VPN) Introduction to IPv6 Bootcamp (IPv6) Introduction to MPLS-VPN Bootcamp (MPLS-VPN) LAN Switching Bootcamp (LAN-SW) RP Bootcamp Troubleshooting for Network Support Engineers
Duration 4 Days 24 CPD hours This course is intended for This course is geared for experienced skilled Java developers, software developers, data scientists, machine learning experts or others who wish to transtion their coding skills to Scala, learning how to code in Scala and apply it in a practical way. This is not a basic class. Overview Working in a hands-on learning environment led by our expert instructor you'll: Get comfortable with Scala's core principles and unique features, helping you navigate the language confidently and boosting your programming skills. Discover the power of functional programming and learn techniques that will make your code more efficient, maintainable, and enjoyable to write. Become proficient in creating dynamic web applications using the Play Framework, and easily connect to databases with the user-friendly Slick library. Master concurrency programming with Akka, empowering you to build scalable and fault-tolerant applications that excel in performance. Enhance your testing skills using ScalaTest and ScalaCheck, ensuring the reliability and quality of your Scala applications, while having fun in the process. Explore the fascinating world of generative AI and GPT technologies, and learn how to integrate them into your projects, adding a touch of innovation and intelligence to your Scala solutions. If your team requires different topics, additional skills or a custom approach, our team will collaborate with you to adjust the course to focus on your specific learning objectives and goals. Discover the power of Scala programming in our comprehensive, hands-on technical training course designed specifically for experienced object-oriented (OO) developers. Scala is a versatile programming language that combines the best of both OO and functional programming paradigms, making it ideal for a wide range of projects, from web applications to big data processing and machine learning. By mastering Scala, you'll be able to develop more efficient, scalable, and maintainable applications. Fast Track to Scala Programming for OO / Java Developers is a four day hands-on course covers the core principles of Scala, functional programming, web application development, database connectivity, concurrency programming, testing, and interoperability between Scala and Java. Additionally, you'll explore cutting-edge generative AI and GPT technologies, learning how to integrate them into your Scala applications for intelligent suggestions or automation. Throughout the course you?ll explore the latest tools and best practices in the Scala ecosystem, gaining valuable knowledge and experience that can be directly applied to your day-to-day work. With 50% of the course content dedicated to hands-on labs, you'll gain practical experience applying the concepts you've learned across various projects, such as building functional web applications, connecting to databases, designing modular components, and implementing concurrency. Upon completing the course, you'll have a solid understanding of the language and its features, empowering you to confidently apply your new skills in data science and machine learning projects. You'll exit well-prepared to create efficient, scalable, and maintainable Scala applications, regardless of the complexity of your projects. Introduction to Scala Scala features and benefits Comparing Scala with Java and other OO languages Installing Scala and setting up the development environment Object-Oriented Programming in Scala Classes and objects Traits, mixins, and inheritance Companion objects and factories Encapsulation and polymorphism Functional Programming Basics Pure functions and referential transparency Higher-order functions and currying Immutability and persistent data structures Pattern matching and recursion Having Fun with Functional Data Structures Lists, sets, and maps in Scala Folding and reducing operations Stream processing and lazy evaluation For-comprehensions Building Web Applications in Functional Style Introduction to Play Framework Functional web routing and request handling JSON handling with Play-JSON Middleware and functional composition Connecting to a Database Introduction to Slick library Database configuration and setup Querying and updating with Slick Transactions and error handling Building Scalable and Extensible Components Modular architecture and design patterns Dependency injection with MacWire Type classes and type-level programming Implicit parameters and conversions Concurrency Programming & Akka Introduction to Akka framework and Actor model Actor systems and message passing Futures and Promises Supervision and fault tolerance Building Confidence with Testing Introduction to ScalaTest and ScalaCheck Unit testing and property-based testing Test-driven development in Scala Mocking and integration testing Interoperability between Scala and Java Calling Java code from Scala Using Java libraries in Scala projects Converting Java collections to Scala collections Writing Scala code that can be called from Java Using Generative AI and GPT Technologies in Scala Programming Overview of GPT and generative AI Integrating GPT with Scala applications Use cases and practical examples Additional course details: Nexus Humans Fast Track to Scala Programming Essentials for OO / Java Developers (TTSCL2104) training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the Fast Track to Scala Programming Essentials for OO / Java Developers (TTSCL2104) course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Duration 3 Days 18 CPD hours This course is intended for Developers who have some familiarity with serverless and experience with development in the AWS Cloud Overview In this course, you will learn to: Apply event-driven best practices to a serverless application design using appropriate AWS services Identify the challenges and trade-offs of transitioning to serverless development, and make recommendations that suit your development organization and environment Build serverless applications using patterns that connect AWS managed services together, and account for service characteristics, including service quotas, available integrations, invocation model, error handling, and event source payload Compare and contrast available options for writing infrastructure as code, including AWS CloudFormation, AWS Amplify, AWS Serverless Application Model (AWS SAM), and AWS Cloud Development Kit (AWS CDK) Apply best practices to writing Lambda functions inclusive of error handling, logging, environment re-use, using layers, statelessness, idempotency, and configuring concurrency and memory Apply best practices for building observability and monitoring into your serverless application Apply security best practices to serverless applications Identify key scaling considerations in a serverless application, and match each consideration to the methods, tools, or best practices to manage it Use AWS SAM, AWS CDK, and AWS developer tools to configure a CI/CD workflow, and automate deployment of a serverless application Create and actively maintain a list of serverless resources that will assist in your ongoing serverless development and engagement with the serverless community This course gives developers exposure to and practice with best practices for building serverless applications using AWS Lambda and other services in the AWS serverless platform. You will use AWS frameworks to deploy a serverless application in hands-on labs that progress from simpler to more complex topics. You will use AWS documentation throughout the course to develop authentic methods for learning and problem-solving beyond the classroom. Introduction Introduction to the application you will build Access to course resources (Student Guide, Lab Guide, and Online Course Supplement) Thinking Serverless Best practices for building modern serverless applications Event-driven design AWS services that support event-driven serverless applications API-Driven Development and Synchronous Event Sources Characteristics of standard request/response API-based web applications How Amazon API Gateway fits into serverless applications Try-it-out exercise: Set up an HTTP API endpoint integrated with a Lambda function High-level comparison of API types (REST/HTTP, WebSocket, GraphQL) Introduction to Authentication, Authorization, and Access Control Authentication vs. Authorization Options for authenticating to APIs using API Gateway Amazon Cognito in serverless applications Amazon Cognito user pools vs. federated identities Serverless Deployment Frameworks Overview of imperative vs. declarative programming for infrastructure as code Comparison of CloudFormation, AWS CDK, Amplify, and AWS SAM frameworks Features of AWS SAM and the AWS SAM CLI for local emulation and testing Using Amazon EventBridge and Amazon SNS to Decouple Components Development considerations when using asynchronous event sources Features and use cases of Amazon EventBridge Try-it-out exercise: Build a custom EventBridge bus and rule Comparison of use cases for Amazon Simple Notification Service (Amazon SNS) vs. EventBridge Try-it-out exercise: Configure an Amazon SNS topic with filtering Event-Driven Development Using Queues and Streams Development considerations when using polling event sources to trigger Lambda functions Distinctions between queues and streams as event sources for Lambda Selecting appropriate configurations when using Amazon Simple Queue Service (Amazon SQS) or Amazon Kinesis Data Streams as an event source for Lambda Try-it-out exercise: Configure an Amazon SQS queue with a dead-letter queue as a Lambda event source Writing Good Lambda Functions How the Lambda lifecycle influences your function code Best practices for your Lambda functions Configuring a function Function code, versions and aliases Try-it-out exercise: Configure and test a Lambda function Lambda error handling Handling partial failures with queues and streams Step Functions for Orchestration AWS Step Functions in serverless architectures Try-it-out exercise: Step Functions states The callback pattern Standard vs. Express Workflows Step Functions direct integrations Try-it-out exercise: Troubleshooting a Standard Step Functions workflow Observability and Monitoring The three pillars of observability Amazon CloudWatch Logs and Logs Insights Writing effective log files Try-it-out exercise: Interpreting logs Using AWS X-Ray for observability Try-it-out exercise: Enable X-Ray and interpret X-Ray traces CloudWatch metrics and embedded metrics format Try-it-out exercise: Metrics and alarms Try-it-out exercise: ServiceLens Serverless Application Security Security best practices for serverless applications Applying security at all layers API Gateway and application security Lambda and application security Protecting data in your serverless data stores Auditing and traceability Handling Scale in Serverless Applications Scaling considerations for serverless applications Using API Gateway to manage scale Lambda concurrency scaling How different event sources scale with Lambda Automating the Deployment Pipeline The importance of CI/CD in serverless applications Tools in a serverless pipeline AWS SAM features for serverless deployments Best practices for automation Course wrap-up Additional course details: Nexus Humans AWS Developing Serverless Solutions on AWS training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the AWS Developing Serverless Solutions on AWS course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Duration 5 Days 30 CPD hours This course is intended for This course is designed for students who want to learn the R programming language, particularly students who want to leverage R for data analysis and data science tasks in their organization. The course is also designed for students with an interest in applying statistics to real-world problems. A typical student in this course should have several years of experience with computing technology, along with a proficiency in at least one other programming language. Overview In this course, you will use R to perform common data science tasks.You will: Set up an R development environment and execute simple code. Perform operations on atomic data types in R, including characters, numbers, and logicals. Perform operations on data structures in R, including vectors, lists, and data frames. Write conditional statements and loops. Structure code for reuse with functions and packages. Manage data by loading and saving datasets, manipulating data frames, and more. Analyze data through exploratory analysis, statistical analysis, and more. Create and format data visualizations using base R and ggplot2. Create simple statistical models from data. In our data-driven world, organizations need the right tools to extract valuable insights from that data. The R programming language is one of the tools at the forefront of data science. Its robust set of packages and statistical functions makes it a powerful choice for analyzing data, manipulating data, performing statistical tests on data, and creating predictive models from data. Likewise, R is notable for its strong data visualization tools, enabling you to create high-quality graphs and plots that are incredibly customizable. This course will teach you the fundamentals of programming in R to get you started. It will also teach you how to use R to perform common data science tasks and achieve data-driven results for the business. Lesson 1: Setting Up R and Executing Simple Code Topic A: Set Up the R Development Environment Topic B: Write R Statements Lesson 2: Processing Atomic Data Types Topic A: Process Characters Topic B: Process Numbers Topic C: Process Logicals Lesson 3: Processing Data Structures Topic A: Process Vectors Topic B: Process Factors Topic C: Process Data Frames Topic D: Subset Data Structures Lesson 4: Writing Conditional Statements and Loops Topic A: Write Conditional Statements Topic B: Write Loops Lesson 5: Structuring Code for Reuse Topic A: Define and Call Functions Topic B: Apply Loop Functions Topic C: Manage R Packages Lesson 6: Managing Data in R Topic A: Load Data Topic B: Save Data Topic C: Manipulate Data Frames Using Base R Topic D: Manipulate Data Frames Using dplyr Topic E: Handle Dates and Times Lesson 7: Analyzing Data in R Topic A: Examine Data Topic B: Explore the Underlying Distribution of Data Topic C: Identify Missing Values Lesson 8: Visualizing Data in R Topic A: Plot Data Using Base R Functions Topic B: Plot Data Using ggplot2 Topic C: Format Plots in ggplot2 Topic D: Create Combination Plots Lesson 9: Modeling Data in R Topic A: Create Statistical Models in R Topic B: Create Machine Learning Models in R