Perl training course description A hands on introduction to programming in Perl. What will you learn Write Perl programs. Use Perl modules. Debug Perl programs. Examine existing code and determine its function. Perl training course details Who will benefit: Anyone wishing to learn Perl. Prerequisites: None although experience in another high level language would be useful. Duration 5 days Perl training course contents Introduction to Perl What is Perl? When to use Perl, downloading Perl, installing Perl, documentation, perldoc, running Perl, the Perl environment. Perl under UNIX, Perl under Windows. "Hello world". Variables Scalars, data types, $_, strings and numbers, assignment, constants, strict, scope, STDIN. Operators Number operators, string operators, precedence and associativity, converting numbers and strings, shortcut operators. Flow control Blocks, if, else, elseif, unless, foreach, while, for do, until. Regular expressions What are regular expressions? Pattern matching, Perl as a filter, file editing. Strings Comparing strings, concatenating, substrings, chomp, chop, formatting, string manipulation. Subroutines Comparing strings, concatenating, substrings, chomp, chop, formatting, string manipulation. Arrays and hashes Working with arrays, element access, push(), pop(), shift(), unshift(), <STDIN> as an array, associative arrays, hashes of arrays, hash references, arrays of hashes, hashes of hashes. Files Simple file handling, open, close, <FILEHANDLE>, <>, file tests, directory access, directory handles, database access, packing and packing binary data. I/O STDIN, STDOUT and STDERR, Command line arguments,@ARGV. Perl debugging The built in debugger, running the debugger, debugger commands, graphical debuggers. Script syntax errors, single stepping, breakpoints, watches. Packages and modules CPAN, Finding modules, installing modules, using modules, scope. Report formatting Formats, defining a format, invoking a format, field holders. Process management System interaction, system(), exec(), signals. Security issues.
Advanced Java training course description A tour of the more advanced features of Java following on from the Introduction to Java course. JDBC and JavaBeans are covered in separate courses. What will you learn Use Java to implement OOA/D. Use within Java programs - Internationalisation - Object serialisation - Reflection - RMI - Swing - JAR files Write Servlets and Java Server Pages Advanced Java training course details Who will benefit: Those wishing to program in Java. Prerequisites: Introduction to Java programming Duration 5 days Advanced Java training course contents What you should already know OO features in Java Static initialisers, object destruction, finalisation, constructor chaining, shadowing, Abstract classes and interfaces, inner classes, nested classes, member classes, local classes, anonymous classes. Internationalisation Locales, Unicode, local customs, localising messages. Object Serialisation Simple and custom serialisation, class versioning. Reflection Obtaining class and member information. RMI Restrictions, RMI architecture, Stubs, skeletons, rmic, the registry server, The RMI API. Swing An overview, examples, comparison vs. AWT, data transfer cut & paste. Servlets Servlet API, Java Web server, The servlet life cycle, chaining servlets, Hybrid servlets. JAR files and signed applet JAR files and signed applet
Linux virtualization and HA training course description The LPIC-3 certification is the culmination of LPI's multi -level professional certification program. LPIC-3 is designed for the enterprise-level Linux professional and represents the highest level of professional, distribution neutral Linux certification within the industry. LPIC-3 304 covers administering Linux enterprise-wide with an emphasis on virtualization and high availability. At SNT we have enhanced the contents of the course by covering containers. What will you learn Manage Virtual Machines. Manage containers. Manage HA clusters. Manage HA cluster storage. Linux virtualization and HA training course details Who will benefit: Linux professionals working with virtualization and/or High availability. Prerequisites: Linux network administration 2 (LPIC-2) Duration 5 days Linux virtualization and HA training course contents VIRTUALIZATION Virtualization concepts and theory Terminology, Pros and Cons of virtualization, variations of Virtual Machine monitors, migration of physical to VMs, migration of VMs between host systems, cloud computing. Xen Xen architecture, networking and storage, Xen configuration, Xen utilities, troubleshooting Xen installations, XAPI, XenStore, Xen Boot Parameters, the xm utility. KVM KVM architecture, networking and storage, KVM configuration, KVM utilities, troubleshooting KVM installations. Other virtualization solutions OpenVZ and LXC, other virtualization technologies, virtualization provisioning tools. Libvirt and Related Tools libvirt architecture, networking and storage, basic technical knowledge of libvirt and virsh, oVirt. Cloud Management Tools Basic feature knowledge of OpenStack and CloudStack, awareness of Eucalyptus and OpenNebula. Containers Containers versus VMs, Docker, Kubernetes. Load balanced clusters of LVS/IPVS, VRRP, configuration of keepalived, configuration of ldirectord, backend server network configuration. HAProxy, configuration of HAProxy. Failover clusters Pacemaker architecture and components (CIB, CRMd, PEngine, LRMd, DC, STONITHd), Pacemaker cluster configuration, Resource classes (OCF, LSB, Systemd, Upstart, Service, STONITH, Nagios), Resource rules and constraints (location, order, colocation), Advanced resource features (templates, groups, clone resources, multi-state resources), Pacemaker management using pcs, Pacemaker management using crmsh, configuration and management of corosync in conjunction with Pacemaker, other cluster engines (OpenAIS, Heartbeat, CMAN). HIGH AVAILABILITY CLUSTER STORAGE DRBD/cLVM DRBD resources, states and replication modes, configuration of DRBD resources, networking, disks and devices, configuration of DRBD automatic recovery and error handling, management of DRBD using drbdadm. drbdsetup and drbdmeta, Integration of DRBD with Pacemaker, cLVM, integration of cLVM with Pacemaker. Clustered File Systems Principles of cluster file systems. Create, maintain and troubleshoot GFS2 file systems in a cluster, create, maintain and troubleshoot OCFS2 file systems in a cluster, Integration of GFS2 and OCFS2 with Pacemaker, the O2CB cluster stack, other commonly used clustered file systems.
Integrating Linux and Microsoft course description This course is designed for the enterprise-level Linux professional and represents the highest level of professional, distribution-neutral Linux certification within the industry. LPIC-3 300 covers administering Linux enterprise-wide with an emphasis on mixed environments. What will you learn Configure and troubleshoot OpenLDAP. Use OpenLDAP as an authentication backend. Manage software packages. Use Samba - Share configuration - User and group management - Domain integration - Name services - with Linux and Windows clients Integrating Linux and Microsoft course details Who will benefit: Enterprise-level Linux professionals. Prerequisites: Delegates must have an active LPIC-2 certification to receive LPIC-3 certification, but the LPIC-2 and LPIC-3 exams may be taken in any order. Duration 5 days Integrating UNIX and Microsoft course contents OPENLDAP CONFIGURATION OpenLDAP replication Replication concepts, OpenLDAP replication, replication log files, replica hubs, LDAP referrals, LDAP sync replication. Securing the Directory Securing the directory with SSL and TLS, Firewall considerations, Unauthenticated access methods, User/password authentication methods, Maintanence of SASL user DB, certificates. OpenLDAP Server Performance Tuning Measure OpenLDAP performance, Tune software configuration to increase performance, indexes. OPENLDAP AS AN AUTHENTICATION BACKEND LDAP Integration with PAM and NSS Configure PAM to use LDAP for authentication, NSS to retrieve information from LDAP and PAM modules in UNIX. Integrating LDAP with Active Directory and Kerberos Kerberos integration with LDAP, Cross platform authentication, Single sign-on concepts, Integration and compatibility limitations between OpenLDAP and Active Directory. SAMBA BASICS Samba Concepts and Architecture Samba daemons and components, key issues regarding heterogeneous network, Identify key TCP/UDP ports used with SMB/CIFS, Knowledge of Samba3 and Samba4 differences. Configure Samba Samba server configuration file structure, variables and configuration parameters, Troubleshoot and debug configuration problems. Regular Samba Maintenance Monitor and interact with running Samba daemons, Perform regular backups of Samba configuration and state data. Troubleshooting Samba Samba logging, Backup TDB files, Restore TDB files, Identify TDB file corruption, Edit / list TDB file content. Internationalization Internationalization character codes and code pages, differences in the name space between Windows and Linux/Unix with respect to share, names, user/group/computer naming in a non-English environment. SAMBA SHARE CONFIGURATION Linux File System and Share/Service Permissions File / directory permission control, Samba interaction with Linux file system permissions and ACLs, Use Samba VFS to store Windows ACLs. Print Services Printer sharing, integration between Samba and CUPS, Manage Windows print drivers and configure downloading of print drivers, security concerns with printer sharing. SAMBA USER AND GROUP MANAGEMENT Managing User Accounts and Groups User and group accounts, mappings, user account management tools, smbpasswd, file/directory ownership of objects. Authentication, Authorization and Winbind Local password database, password synchronization, passdb backends, Convert between passdb backends, Integrate Samba with LDAP, Winbind service, PAM and NSS. SAMBA DOMAIN INTEGRATION Samba as a PDC and BDC Domain membership and trust relationships, Create and maintain a PDC and BDC with Samba3/4, Add computers to an existing domain, logon scripts, roaming profiles, system policies. Samba4 as an AD compatible Domain Samba 4 as an AD DC, smbclient, how Samba integrates with AD services: DNS, Kerberos, NTP, LDAP. Configure Samba as a Domain Member Server Joining Samba to NT4 and AD domains, obtain a TGT from a KDC. SAMBA NAME SERVICES NetBIOS and WINS WINS concepts, NetBIOS concepts, local master browser, domain master browser, Samba as a WINS server, name resolution, WINS replication, NetBIOS browsing and browser elections, NETBIOS name types. Active Directory Name Resolution DNS for Samba4 as an AD Domain Controller, DNS forwarding with the internal DNS server of Samba4. WORKING WITH LINUX AND WINDOWS CLIENTS CIFS Integration SMB/CIFS concepts, remote CIFS shares from a Linux client, securely storing CIFS credentials, features and benefits of CIFS, permissions and file ownership of remote CIFS shares. Working with Windows Clients browse lists and SMB clients from Windows, Share file/print resources from Windows, the smbclient program, the Windows net utility.
Complete VB.Net training course description A hands on introduction to programming in Visual BASIC .Net. What will you learn Build Visual BASIC applications. Build simple components Debug Visual BASIC programs. Examine existing code and determine its function. Complete VB.Net training course details Who will benefit: Anyone wishing to program in Visual BASIC. Anyone wishing to build Windows based applications. Prerequisites: None although experience in another high level language would be useful. Duration 5 days Complete VB.Net training course contents Writing your first program Visual Studio, forms designer, running VB programs, the UI, properties, writing the code. Toolbox Controls Basic use, input controls, ActiveX controls. Menus and Dialog Boxes Menus, Dialog Box controls, event procedures. Visual Basic .NET variables and operators Variables, I/O, data types, constants, operators, Math Methods, precedence. Decision Structures and Loops and Timers Event-Driven programming, Ifâ¦Then, Select Case, Forâ¦Next Loops, Timer Control. Debugging Visual Basic .NET Programs Break Mode, watch & command windows. Structured Error Handling Try...Catch, Finally, Err Object, retry periods. Modules and Procedures Standard modules, public variables, procedures. Arrays and Collections to Manage Data Fixed-Size & dynamic Arrays, ReDim Preserve, object collections, Controls Collection. Text Files and String Processing Text Box object, Text String methods, sorting. Automating Office Applications Application objects, automation in VB, the Object Browser, the Process Component. Deploying Visual Basic .NET Applications Planning a deployment, ways to deploy an application, deployment projects, options. Managing Windows Forms Forms, positioning, manipulation, adding controls, organizing controls, Startup Object. Adding Graphics and Animation Effects System.Drawing namespace, coordinates, SystemPaint Event, animation, transparency. Inheriting Forms and Creating Base Classes Inheriting forms, inheritance picker, base classes and inheritance, classes in projects. Working with Printers PrintDocument class, Text Box object, Print Preview and Page Setup Dialog Boxes. Database programming with ADO.NET Databases, ADO.NET, Data Adapters, Datasets, Bound & Navigation Controls. Displaying database records, formatting DataGrid cells, updating the database. Displaying HTML Documents Using IE IE Object, Internet Controls, IE Events. Web Forms for Interactive Web Applications ASP.NET, Web Forms vs. Windows Forms, HTML controls, web applications, event procedures for web forms controls.
Network management technologies course description A comprehensive tour of the available network management technologies available for todays networks. The course starts with basic tools such as syslog along with Python network automation. SNMP is then covered with the *flow technologies and streaming telemetry. Configuration management with ansible, Python, NETCONF and RESTCONF is then studied. The final part of the course looks at SDN. Hands on sessions are used throughout to reinforce the theory rather than teach specific manufacturer equipment. Note that sections are available as individual courses. What will you learn Evaluate network management technologies. Evaluate network management technologies. Recognise the weaknesses of SNMP versus NETCONF and streaming telemetry. Explain the role of NETCONF and RESTCONF. Compare & contrast *flow and streaming telemetry. Explain the role of SDN in network management. Automate network configuration with ansible and Python. Network management technologies course details Who will benefit: Those wishing to manage networks. (Previous Python experience is NOT needed) Prerequisites: Intro to data comms Duration 5 days Network management technologies course content Basic network management Network management What is network management? Benefits, issues. FCAPS model. Fault management, Configuration management, accounting, performance, security. What to manage, what not to manage. Managing network devices, managing servers. Monitoring networks Traditional network tools Ping..., SSH, syslog, TFTP for configurations. nmap. Wireshark. CLI. Web based management. Splunk. Nessus, snort, Kali. Hands on syslog, network inventories. Network automation using the CLI Programming and automating networks, netOps. Python, Git. Python network modules, SSH, paramiko, netmiko. EVE-NG. Hands onPython network modules. Structured versus unstructured data Problems with automation and unstructured data. XML, JSON, YAML. The role of YANG. Hands on Parsing data. SNMP SNMP architecture, SNMP MIBs, SMI, the SNMP protocol, polling security. Configuring SNMP. SNMPv1, v2, v3, SNMP security. Which version should you use? MIBs and MIB structure. mib-2, extra parts of mib-2, Private enterprise MIBs. Summary: What SNMP is good/bad at. Hands on Configuring agents and a NMS. MIB browsing. Server management Microsoft, Linux, application polling. WMI vs SNMP. Hands on: Application polling. Performance management *flow Polling, push vs pull, netflow, sflow, IPFIX, *flow. Flows. Where to monitor traffic. Comparing *flow with SNMP. Architecture: Generators and collectors. When flows are exported. NetFlow reporting products. SolarWinds. Hands on Netflow configuration. Collectors. Streaming telemetry Model driven telemetry, periodic/on change. Structured data. Telemetry protocol stack. gRPC and gNMI. Protobuf. gNMI operations. Telemetry architecture. Telegraf, databases, Grafana. Hands on Telemetry example. Configuration management Configuration management tools Chef, puppet, ansible, saltstack. Ansible architecture, controlling machines, nodes, agentless, SSH, modules. Inventories, playbooks, modules, network modules, jinja2 templates. Hands on Network configuration with ansible. NETCONF What is NETCONF? Protocol stack, Data stores, traffic flows, validating configurations, rollback. YANG data models and how YANG is used by NETCONF. XML. Explorers and other tools. Hands on anx, Python and NETCONF. RESTCONF The REST API, HTTP, What is RESTCONF? Tools including Postman. Comparison with NETCONF. Hands on Configuration with RESTCONF. Python network automation: configuration SSH issues. Using structured data. Jinja2. ncclient, requests, NAPALM, Nornir. Automated testing. Hands on Python network device configuration with nornir. Software Defined Networks and orchestration Classic SDN What is SDN? benefits. SDN architecture. SDN applications, SDN switches, SDN controllers, Network Operating Systems. Control plane, data plane. Northbound interfaces. SDN components. Southbound interfaces. OpenFlow. ONF, OpenFlow ports, Flow tables. Network virtualization Virtual networks, virtual switches, NfV. Service chaining. NfV and SDN. SDN implementations Classic SDN, Hybrid SDN, SDN via APIs, SDN via overlays. Data centre SDN, VXLAN, Service Provider SDN, SD WAN, Enterprise SDN, WiFi. SDN and open source OpenDaylight, OpenVSwitch, Open Networking Forum, Open Network Operating System. Hands onOpenStack. SD-WAN What is SD-WAN? Architecture: Edge, gateway, orchestrator, controller. Overlay and underlay. Use of MPLS, 4G/5G. Benefits and features. Secure Access Service Edge (SASE).
UNIX Virtualization and High Availability course description This course covers administering UNIX enterprise-wide with an emphasis on virtualization and high availability. What will you learn Manage Virtual Machines. Manage containers. Manage HA clusters. Manage HA cluster storage. UNIX Virtualization and High Availability course details Who will benefit: Enterprise-level UNIX professional. UNIX professionals working with virtualization and/or High availability. Prerequisites: Linux network administration 2 (LPIC-2) Duration 5 days UNIX Virtualization and High Availability course contents VIRTUALIZATION Virtualization concepts and theory Terminology, Pros and Cons of virtualization, variations of Virtual Machine monitors, migration of physical to VMs, migration of VMs between host systems, cloud computing. Xen Xen architecture, networking and storage, Xen configuration, Xen utilities, troubleshooting Xen installations, XAPI, XenStore, Xen Boot Parameters, the xm utility. KVM KVM architecture, networking and storage, KVM configuration, KVM utilities, troubleshooting KVM installations. Other virtualization solutions OpenVZ and LXC, other virtualization technologies, virtualization provisioning tools. Libvirt and Related Tools libvirt architecture, networking and storage, basic technical knowledge of libvirt and virsh, oVirt. Cloud Management Tools Basic feature knowledge of OpenStack and CloudStack, awareness of Eucalyptus and OpenNebula. Containers Containers versus VMs, Docker, Kubernetes. Load balanced clusters of LVS/IPVS, VRRP, configuration of keepalived, configuration of ldirectord, backend server network configuration. HAProxy, configuration of HAProxy. Failover clusters Pacemaker architecture and components (CIB, CRMd, PEngine, LRMd, DC, STONITHd), Pacemaker cluster configuration, Resource classes (OCF, LSB, Systemd, Upstart, Service, STONITH, Nagios), Resource rules and constraints (location, order, colocation), Advanced resource features (templates, groups, clone resources, multi-state resources), Pacemaker management using pcs, Pacemaker management using crmsh, configuration and management of corosync in conjunction with Pacemaker, other cluster engines (OpenAIS, Heartbeat, CMAN). HIGH AVAILABILITY CLUSTER STORAGE DRBD/cLVM DRBD resources, states and replication modes, configuration of DRBD resources, networking, disks and devices, configuration of DRBD automatic recovery and error handling, management of DRBD using drbdadm. drbdsetup and drbdmeta, Integration of DRBD with Pacemaker, cLVM, integration of cLVM with Pacemaker. Clustered File Systems Principles of cluster file systems. Create, maintain and troubleshoot GFS2 file systems in a cluster, create, maintain and troubleshoot OCFS2 file systems in a cluster, Integration of GFS2 and OCFS2 with Pacemaker, the O2CB cluster stack, other commonly used clustered file systems.
Java training course description A comprehensive introduction of the Java language and environment. It is important to note that the course will assume that the delegates are already familiar with the C language as this enables more advanced features of the Java language to be covered in the course. The course will also give an overview of areas related to programming in Java. What will you learn Describe the Java architecture. Write Java applets and applications. Debug Java programs. Examine existing code and determine its function. Use multimedia extensions, the awt, multithreading, exceptions within Java Java training course details Who will benefit: Those wishing to program in Java. Prerequisites: Complete C programming Duration 5 days Java training course contents Review of UNIX fundamentals What is Java? What Java is, history of Java, reasons for success. The Java Virtual Machine, Bytecodes, getting up and running with Java, Java resources. Simple Java applications. C features in Java Java data structures, Java flow control, differences from C, arrays, strings and packages. OO features in Java Java classes and objects, inheritance, overloading, packages. Differences from C++. Java applets Applications vs. applets, HTML, the applet tag, applet methods, life cycle, testing and debugging. Multimedia applets Images, sounds, fonts, colours and animation. Java products The JDK in detail, other development environments. Javabeans and JDBC overviews. Abstract Window Toolkit JFC and Swing versus AWT. Event handling (JDK 1.1), GUIs, panels, buttons, lists, scrollbars, text areas, frames⦠Exception handling and multithreading Handling exceptions. Starting, pausing, stopping threads, producers, consumers, monitoring. More standard classes Java file I/O, Streams, The system class. The networking model, java.net classes. Security and Java Types of attack, the security manager, craplets, securing the network. Integrating legacy code with Java
Windows PowerShell training course description This course is intended for IT Professionals who are already experienced in general Windows Server and Windows Client administration, and who want to learn more about using Windows PowerShell for administration. No prior experience with any version of Windows PowerShell, or any scripting language, is assumed. This course is also suitable for IT Professionals already experienced in server administration, including Exchange Server, SharePoint Server, SQL Server, System Center, and others. What will you learn Work with Windows PowerShell pipeline. Query system information by using WMI and CIM. Work with variables, arrays, and hash tables. Write advanced scripts in Windows PowerShell. Administer remote computers. Use advanced Windows PowerShell techniques. Windows PowerShell training course details Who will benefit: IT professionals. Prerequisites: Supporting Windows Server Duration 5 days Windows PowerShell training course contents Getting started with Windows PowerShell Overview and background of Windows PowerShell, Understanding command syntax, Finding commands. Hands on Configuring Windows PowerShell console & ISE application. Hands on Finding and running basic commands, Using the About files. Cmdlets for administration Active Directory administration cmdlets, Network configuration cmdlets, Other server administration cmdlets. Hands on Windows Administration. Creating and managing Active Directory objects, Configuring network settings on Windows Server, Creating a web site. Working with the Windows PowerShell pipeline Understanding the pipeline, Selecting, sorting, and measuring objects, Filtering objects out of the pipeline, enumerating objects in the pipeline, Sending pipeline data as output. Hands on Using the pipeline. Selecting, sorting, and displaying data. Hands on Filtering objects. Hands on Enumerating objects. Hands on Sending output to a file. Exporting user information to a file. Understanding how the pipeline works Passing the pipeline data, Advanced considerations for pipeline data. Hands on Working with pipeline parameter binding. Predicting pipeline behaviour. Using PSProviders and PSDrives Using PSProviders, Using PSDrives. Hands on Using PSProviders and PSDrives Creating files and folders on a remote computer, Creating a registry key for your future scripts, Create a new Active Directory group. Querying system information by using WMI and CIM Understanding WMI and CIM, Querying data by using WMI and CIM, Making changes with WMI/CIM. Hands on Working with WMI and CIM. Querying information by using WMI, Querying information by using CIM, Invoking methods. Working with variables, arrays, and hash tables Manipulating variables, arrays and hash tables. Hands on Working with variables, Using arrays, Using hash tables. Basic scripting Introduction to scripting, Scripting constructs, Importing data from files. Hands on Basic scripting. Setting a script, Processing an array with a ForEach loop, Processing items by using If statements, Creating a random password, Creating users based on a CSV file. Advanced scripting Accepting user input, Overview of script documentation, Troubleshooting and error handling, Functions and modules. Hands on Accepting data from users. Querying disk information from remote computers, Updating the script to use alternate credentials, Documenting a script. Hands on Implementing functions and modules. Creating a logging function, Adding error handling to a script, Converting a function to a module. Administering Remote Computers Using basic Windows PowerShell remoting, Using advanced Windows PowerShell remoting techniques, Using PSSessions. Hands on Using basic remoting. Enabling remoting on the local computer, Performing one-to-one remoting, Performing one-to-many remoting. Hands on Using PSSessions. Using implicit remoting, Managing multiple computers. Using background jobs and scheduled jobs Using background jobs, Using scheduled jobs. Hands on Using background jobs and scheduled jobs. Starting and managing jobs, Creating a scheduled job. Using advanced Windows PowerShell techniques Creating profile scripts, Using advanced techniques. Hands on Practicing advanced techniques. Creating a profile script, Verifying the validity of an IP address, Reporting disk information, Configuring NTFS permissions, Creating user accounts with passwords from a CSV file. Hands on Practicing script development (optional)
Complete VBA programming training course description This course helps you extend the capabilities of the entire Office suite using Visual Basic for Applications (VBA). Even if you have no programming experience, you'll be automating routine computing processes quickly using the simple, yet powerful VBA programming language. We start at the beginning to get you acquainted with VBA so you can start recording macros right away. You'll then build upon that foundation to utilize the full capabilities of the language in Word, Excel, Outlook, and PowerPoint. What will you learn Record, write and run macros. Work with VBA Editor. Use the huge library of built-in functions. Create simple dialog boxes and complex forms. Customize Word, Excel, PowerPoint, Outlook, and Access. Program the Office 2016 ribbon. Complete VBA programming training course details Who will benefit: Anyone looking to extend the capabilities of the entire Office suite using VBA. Prerequisites: None. Duration 5 days Complete VBA programming training course contents Macros and getting started in VBA VBA syntax, variables, constants, and enumerations, array variables, finding objects, methods, and properties. Working with VBA 1 VBA syntax, variables, constants, and enumerations, array variables, finding objects, methods, and properties. Decisions, loops and functions Built-in functions, creating your own functions, making decisions in your code, using loops to repeat actions. Using message boxes, input boxes, and dialog boxes Getting user input with message boxes and input boxes, creating simple custom dialog boxes, creating complex forms. Creating effective code Building modular code and using classes, debugging your code and handling errors, building well-behaved code, exploring VBA's security features. Programming the Office applications The Word object model and key objects, working with widely used objects in Word, the Excel object model and key objects, working with widely used objects in Excel, the PowerPoint object, model and key objects, working with shapes and running slide shows, the Outlook object model and key objects, working with events in Outlook, the Access object model and key objects, manipulating the data in an Access database via VBA, accessing one application from another application, programming the Office 2016 ribbon.