Advanced Python training course description This course caters to network engineers aiming to enhance both their Python proficiency and network automation skills. Delving deeper into key areas such as netmiko, Nornir, and ncclient, we also focus on automating network testing and validation. Participants gain greater confidence working with Python functions, classes, objects, and error handling. The course additionally introduces more libraries like Scrapli, TTP, pyATS, Genie, pybatfish, and Suzieq, which cover parsing strategies, automation testing, validation, network analysis, observability, and telemetry. The curriculum also encompasses concurrency techniques. What will you learn Write Python modules and functions. Evaluate techniques to parse unstructured data. Use NETCONF filters. Handle Python errors effectively (try, assertâ¦). Use postman. Automate testing and validation of the network. Use scrapli, Genie, batfish and Suzieq. Advanced Python training course details Who will benefit: Network engineers. Prerequisites: Python for network engineers Duration 5 days Advanced Python training course contents Review CLI, NETCONF, RESTCONF, structured versus unstructured data, gNMI and when to use which. PEP 8. Naming conventions. Packages, modules, Classes and methods. The scrapli library. Netmiko versus scrapli. Hands on: scrapli, Dictionaries versus Regular Expressions. Modules and Functions Writing your own modules, containers versus packages, virtual environments. Best practices, calling functions, writing your own functions. Parameters, arguments. Named arguments, dictionaries as arguments. Builtins. Docstrings. Main. __name__, __main__ . Program arguments. Hands on: Getting interfaces, showing interface status using Netmiko and functions. Using dictionaries as arguments. Writing your own modules. Parsing strategies Turning unstructured data into structured data. textfsm, PyATS Genie parser, NAPALM getters, Template Text Parser. Hands on: Genie parser, TTP. Accessing structured data with lists and dictionaries. Classes, objects and Python Python classes in Genie, PyEZ and others . Hands on: studying network automation classes, objects, methods and attributes. Configuration management - more nornir, ncclient, requests Nornir tasks. Nornir results, Nornir functions, Nornir plugins. Nornir processors. YANG, YANG models, pyang. NETCONF hello. Capabilities. Schemas. Filters. Subtrees. XPATH. Exploring available YANG data models. NETCONF and network wide transactions. Asserting NETCONF capabilities. Configuration types. Locking configurations, commits. NETCONF data stores. Netconf-console. RESTCONF differences from NETCONF. URI construction. Postman. More XML and JSON. Git and configuration versions. Hands on: Nornir and Jinja2. Exploring available models, NETCONF filters. Using postman. Python error handling and debugging Context handlers, try, assert, logging, pdb, pytest, unit testing, chatgpt. Hands on: Writing code with each of the error handling methods, investigating what happens on an error. Use chatgpt to debug your code. Python Automation Testing Testing and validation. pyATS, Genie. Testbed file. Genie parse, genie learn, genie diff. Genie conf, Genie ops, Genie SDK, Genie harness. Xpresso. Hands on: Using Genie for state comparisons of the network. Network analysis Batfish, pybatfish, configuration analysis, analysing routing, analysing ACLs. Pandas. Pandas dataframe. Filtering and selecting values of interest. Hands on: Use Batfish to analyse network snapshots, find network adjacencies, flow path analysis. Network observability Suzieq, using docker, using as a package. Sqpoller, suzieq-gui, suzieq-cli, sq-rest-server. Namespaces and seeing devices, network state and Asserts. Time based analysis, snapshots and changes. Hands on: Suzieq: Gathering data from the network, analysing data from the network. Network state assertion. Telemetry gRPC, gNMI. CAP, GET, SET. Subscriptions. Model Driven telemetry. Hands on: Analysing telemetry data with Python. Concurrency asyncio, threads, processes. Nornir concurrency. Scrapli and netmiko concurrency. Hands on: Multiple SSH connections to devices at same time. Scarpli asyncio.
Front-line communication plays a vital role in shaping the public perception of every organisation. This course is designed to help delegates organise their ideas and communicate clearly and effectively through email. By improving written communication skills, delegates will become more concise, communicate with conviction, and foster meaningful dialogue with their audience. These skills are essential for professionals who interact with the public, as improved communication leads to greater internal and external customer satisfaction. Delegates will learn how to: Write clearly and professionally, enhancing public perception of expertise Communicate more efficiently in writing, reducing wasted time and increasing profitability Craft concise, rapport-building messages for internal and external customers, fostering productivity and a positive workplace environment Topics Covered: Benefits of using email Determining the purpose of an email Steps to take before writing Inflection in written messages Effects of instant messaging and text messaging on communication Basic email structure and planning Writing effective subject lines Paragraph structure and organisation Including relevant details and summarising problems effectively Proper use of CC and BCC fields Why typing in all caps is considered shouting! Proofreading techniques This Email Etiquette course is a 90-minute interactive virtual session. Upon registration, delegates will receive online login instructions prior to the class date. This format allows delegates to enhance their skills conveniently from their home or office while improving their professional communication abilities.
Four weeks of revision exercises, study stories and feedback exchange for flash fiction authors.
SNMP training course description A hands-on generic look at the technical operation of SNMP. The course starts with an overview of all the components, which make up SNMP. Hands on starts early with configuration of a managed network. The major versions of SNMP are then put into perspective followed by a look at the SNMP protocol. MIBs are then studied both from the perspective of reading MIBs and writing MIBs. The course finishes with a look at the security implications of SNMP. What will you learn Describe the SNMP architecture. Analyse SNMP packets. Recognise the MIB structure. Describe the SMI. Recognise the strengths and weaknesses of SNMPv2 and SNMPv3. SNMP training course details Who will benefit: Network administrators. Network operators. Programmers writing MIBs and agents. Prerequisites: TCP/IP Foundation for engineers Hands on experience of an SNMP management station would also be beneficial. Duration 3 days SNMP training course contents Network management What is network management? Benefits, issues. What is SNMP? SNMP architecture, SNMP MIBs, SMI, the SNMP protocol, polling security, alternatives to SNMP: CMIP, web based management. Configuring SNMP Auto discovery for management stations, NMS configuration, agent configuration, traps. Hands on Configuring agents and an NMS. SNMP background SNMP history, RFCs, standards, SNMP protocol versions, SNMPv1, SNMPv2, SNMPv3, SNMP SMI versions, which version should you use? Futures. SNMPv1 packets SNMP in the 7 layer model, port numbers, general packet format, BER, GET, GET-NEXT, tables, SET, TRAP, bandwidth issues, in band versus out of band management. Hands on Analysing SNMPv1 packets. SNMPv2 packets SNMPv2 improvements, error handling, GETBULK, v2traps, INFORM. Hands on Analysing SNMPv2 packets. SNMPv3 packets SNMPv3 packet format, use of SNMPv2 messages, REPORT PDU. MIB structure The internet MIB branch, standard mib-2, extra parts of mib-2, private enterprise MIBs, loading extra MIBs. Hands on MIB browsing. mib-2 The mib-2 groups, system group, interfaces group, IP group, ICMP group, TCP group, UDP group, transmission group, SNMP group, RMON. Hands on mib-2 browsing in detail. SMI The MIB layout, obtaining a private enterprise number, MIB definitions, IMPORT, Module identity, Textual conventions, object definitions, notifications, compliance statements, object groups, base SMI data types, application data types, scalars, instances, tables, table definition, writing agents, SMIng. SNMP security Community strings, SNMPv1 and SNMPv2c security practices, SNMPv3 security, SNMPv3 architecture, SNMP applications, the SNMP engine, the EngineID, security fields in SNMPv3 packets, USM, authentication, encryption, timeliness, VBAC, SNMPv3 configuration.
MySQL for developers training course description This MySQL Developers training course is designed for MySQL Developers who have a good understanding of a MySQL database and experience of using SQL commands. The course provides further practical experience in more advanced MySQL commands and SQL statements including Stored Routines, Triggers and Event Scheduling. What will you learn Provide the skills needed to write more advanced queries and database maintenance statements on a MySQL database. Use advanced features of the MySQL Client. Use advanced data types. Manage the structure of databases and tables. Manage and using indexes. Write complex SQL query statements. Use advanced SQL expressions. Use advanced SQL functions. Perform advanced Insert, Update, Delete, Replace and Truncate Operations. Use user variable syntax and properties. Import and export data from within MySQL. Import and export data from the command line. Perform complex joins to access multiple tables. Perform complex subqueries. Create, manage and us views. Use prepared statements. Create and use stored routines. Create and use triggers. Obtain database metadata. Optimize queries. Work with the main storage engines. Debug MySQL applications. MySQL for developers training course details Who will benefit: MySQL Developers who have a basic understanding of a MySQL database and SQL commands as covered on the Introduction to MySQL course. Prerequisites: MySQL foundation Duration 5 days MySQL for developers training course contents Introduction Administration and Course Materials, Course Structure and Agenda, Delegate and Trainer Introductions. Client/server concepts MySQL client/server architecture, Server modes, Using client programs, Logging in options, Configuration files, Precedence of logging in options Hands on Using client/server The MySQL client program Using MySQL interactively, The MySQL prompts, Client commands and SQL statements, Editing, Selecting a database, Help, Safe updates, Using script files, Using a source file, Redirecting output into a file, Command line execution, Mysql output formats, Overriding the defaults, Html and xml output, MySQL Utilities. Hands on Using the MySQL client program Data types Bit data type, Numeric data types, Auto_increment, Character string data types, Character sets and collation, Binary string data types, Enum and Set data types, Temporal data types, Timezone support, Handling Missing Or Invalid Data Values, SQL_MODE options. Hands on Using data types Identifiers Using Quotes with identifier naming, Case sensitivity in Identifier naming, Qualifying columns with table and database names, Using reserved words as identifiers, Function names Hands on Using identifiers Databases Database properties, Creating a database, Selecting a database, Altering databases, Dropping databases, Obtaining database metadata, The SHOW command, The INFORMATION_SCHEMA database, The SHOW CREATE command Hands on Using databases Tables and indexes Table properties, Creating tables, Create table using Select or Like, Temporary tables and memory tables, Altering tables, Adding columns, Changing column widths and types, Renaming columns, Dropping columns, Adding constraints, Dropping constraints, Renaming tables, Change the table storage engine, Multiple alterations, Dropping tables, Emptying tables, Obtaining table metadata, Show create table, The information_schema, Index introduction, Structure of a mysql index, Creating and dropping indexes, Creating an index, Altering a table to add an index, Specifying index type, Dropping indexes, Obtaining Index Metadata. Hands on Creating, altering and dropping tables/indexes Querying for data The SQL select statement and MySQL differences, Advanced order by, Order by and collation, Order by with enum datatype, Order by with Set datatype, Ordering with distinct and group by Special features of union, Limit and order by clauses, Group By clause, Group_concat, Using Rollup in a Group By clause. Hands on Querying for data SQL Expressions and functions Components of expressions, Nulls, Numeric expressions, String expressions, Temporal expressions, Comparison functions, Flow control functions, Numeric functions, String functions, Temporal functions. Hands on Using expressions and functions Updating data Update operations and privileges, Inserting rows, Insert using a set clause, Inserting duplicate values, Replacing rows, Updating rows, Update using the order by and limit clauses, Deleting rows, The delete and truncate statements. Exercise: Inserting, updating, replacing and deleting data Connectors MySQL client interfaces, MySQL connectors, Oracle and community conectors, Connecting to MySQL server using Java and PHP connectors, MySQL and NoSQL, Innodb integration with memcached. Obtaining database metadata What is metadata?, The mysqlshow utility, The show and describe commands, Describing tables, The information_schema, Listing tables, Listing columns, Listing views, Listing key_columns_usage. Hands on Obtaining database metadata Debugging Mysql error messages, The show statement, Show errors, Show count(*) errors, Show warnings, Show count(*) warnings, Note messages, The perror utility. Hands on Debugging Joins Overview of inner joins, Cartesian product, Inner joins with original syntax, Non equi-join, Using table aliases to avoid name clashes, Inner Joins With ISO/ANSI Syntax, Outer Joins, Left outer joins, Right outer joins, Full outer joins, Updating multiple tables simultaneously, Updating rows in one table based on a condition in another, Updating rows in one table reading data from another, Deleting from multiple tables simultaneously, Deleting rows in one table based on a condition in another. Hands on Coding joins Subqueries Types of subquery, Multiple-column subqueries, Correlated subqueries, Using the ANY, ALL and SOME operators, Using the EXISTS operator, Subqueries as scalar expressions, Inline views, Converting subqueries to joins, Using subqueries in updates and deletes. Hands on Coding subqueries Views Why views are used, Creating views, View creation restrictions, View algorithms, Updateable views, Altering and dropping views, Displaying information about views, Privileges for views. Hands on Using views Import and Export Exporting using SQL, Privileges required to export data, Importing using SQL, Messages when loading data, Privileges required to load data, Exporting from the command line, Mysqldump main options, Importing from the command line, Mysqlimport main options. Hands on Importing and exporting User variables and prepared statements Creating User variables, User variables in a select, Prepared statements, The prepare statement, The execute statement, The deallocate statement, Using prepared statements in code, with connectors. Hands on Using variables and prepared statements Introduction to stored routines Types of stored routines, Benefits of stored routines, Stored routine features, Differences between procedures and functions, Introduction to the Block, Declaring variables and constants, Assigning values to variables, Definer rights and invoker rights, Using SELECT in stored routines, Altering and dropping stored routines, Obtaining stored routine metadata, Stored routine privileges and execution security. Hands on Writing simple stored routines Stored routines - program logic The IF .. THEN .. ELSEIF construct, The CASE statement, The basic loop, The while loop, The repeat loop, The iterate statement, Nested loops. Hands on Writing stored routines with program logic Stored routines - exception handlers and cursors Dealing with errors using Exception handlers, Cursors, What is a cursor?, Cursor operations, Declaring cursors, Opening and closing cursors, Fetching rows, Status checking. Hands on Writing stored routines with program logic Procedures with parameters Creating procedures with parameters, Calling Procedures With Parameters. Hands on Writing stored routines with parameters Functions What is a function?, The create function statement, Executing functions, Executing functions from code, Executing functions from SQL statements, The deterministic and SQL clauses. Hands on Writing functions Triggers Trigger creation, Restrictions on triggers, The create trigger statement, Using the old and new qualifiers, Managing triggers, Destroying triggers, Required privileges. Hands on Writing triggers Basic optimizations Normalisation of data to third normal form, Using indexes for optimization, General query enhancement, Using Explain to analyze queries, Choosing an INNODB or MYISAM storage engine, Using MySQL Enterprise Monitor in query optimization. Hands on Making use of basic optimizations More about indexes Indexes and joins Hands on Investigating indexes and joins
Python training course description This Python course focusses on teaching Python for use in network automation and network DevOps. We focus on getting delegates up and running with Python and network automation as quickly as possible rather than making them great programmers. In other words we concentrate on enabling delegates to use network automation libraries such as netmiko, NAPALM and Nornir, and APIs such as NETCONF and RESTCONF rather than enabling delegates to produce object oriented programs. Hands on sessions use Cisco and Juniper devices. What will you learn Run Python programs. Read Python programs. Write Python programs. Debug Python programs. Automate network tasks with Python programs. Configure network devices with Python. Collect data from network devices with Python. Python training course details Who will benefit: Network engineers. Prerequisites: TCP/IP Foundation Duration 5 days Python training course contents What is Python? Programming languages, Why Python? Python in interactive mode, Python scripts, ipython, Python version 2 versus version 3. A simple Python script. Comments. Hands on Installing Python, Hello world. A network example On box vs off box Python. telnet, ssh, NETCONF, HTTP, APIs, manufacturers and API support, analysis of a simple telnetlib program. Hands on Using Python to retrieve the configuration from a network device. Using wireshark to analyse the actions. Python basics I/O, operators, variables and assignment, types, indentation, loops and conditionals. Hands on Modifying the telnet program, changing configurations on a network devices. Functions, classes and methods What are functions, calling functions, builtin functions, useful builtin functions, file handling, classes, objects, creating instances. Hands on Storing configurations in files, configuring devices from files, using an inventory file to work on multiple devices. Libraries and modules Modules, files and packages, import, from-import, Python standard library, other packages, pip install, executing other programs. Managing python libraries. Hands on Using pip, installing and using ipaddress, subprocess to access netsnmp. For the more advanced, using the sockets library. Paramiko and netmiko SSH, enabling SSH on devices, keys. Paramiko versus netmiko, example scripts. pexpect. Hands on Configuring VLANs from Python. pySNMP Gathering facts using previous methods, SNMP review, pySNMP GET, pySNMP and SNMPv3. easySNMP library. Hands on Walking a MIB from Python. NETCONF What is NETCONF? Enabling NETCONF on devices, A first ncclient script, device handlers, get_config, edit_config, copy_config, delete_config, commit, validate, pyEZ, utils_config, utils.sw. Hands on Configuration using ncclient and PyEZ. This session is expanded for those interesting in JunOS automation. Manipulating configuration files Builtin functions, string handling. Unicode. Sequences, strings, lists, tuples. Dictionaries. TextFSM. Regular expressions. JSON, YAML, XML, YANG, Jinja2, templates. Hands on Jinja2 templating with Python to configure network devices. NAPALM Getters, configuration operations, supported devices, NAPALM transport, Config-replace, Config-merge, Compare config, Atomic changes, rollback. Example NAPLAM scripts. Hands on Using NAPALM to gather facts, Using NAPALM for configuration management REST and RESTCONF What is REST, HTTP methods, GET, POST, cURL, Postman, Python requests library. RESTCONF, a RESTCONF example. Hands on Modifying a configuration using RESTCONF. Scapy What is scapy, Scapy in interactive mode, Scapy as a module. Hands on Packet crafting from Python. Warning Errors and exceptions, Exception handling, try, except. Memory management. Garbage collection. Context management, With. Hands on Improving Python code. Nornir What is Nornir? A network automation framework, inventories, connection management and parallelization. Nornir architecture and other libraires. Hands on Setting up nornir, nornir fact gathering, nornir tasks. Optional Writing your own functions, Writing your own classes. pyntc. Hands on Writing reusable code.
Canelo Publishing Masterclasses. Book your space to peek behind the scenes of a trade publisher. Learn about the different roles and departments, how books are made and published, and how publishers interact with readers and booksellers. Hear what it takes to ensure your book gets published and becomes a hit. Learn about the key things a publisher looks for when they consider submissions or publish books. Canelo will cover questions commonly asked, as well as answering your questions live. The winners of the I Am In Print Novel Award 2023 will also be announced!
KNOW THE RULES! POOR GRAMMAR SHOWS A LACK OF ATTENTION TO DETAIL AND ULTIMATELY CAN SLOW DOWN COMMUNICATIONS AS WELL AS PRODUCTIVITY. Business people who know grammar judge others based on their correct (or incorrect) usage. Be the professional who is able to be clear and correct in writing. Business Grammar & Usage: ENGLISH BOOT CAMP is the answer for today’s business competitive environment. Interactive instruction and collaboration with your fellow attendees means that you will master the skills and apply your new knowledge to the classroom exercises and activities. When you return to work, you’ll have new confidence about what is right and wrong, when it comes to writing. Attendees Will Be Able To: Know the Parts of Speech and their correct uses; Understand Sentence Structure, including applying rules for Subject-Verb and Pronoun-Antecedent Agreement; Be able to create Plurals and Possessives accurately and with certainty; Review and use the rules of Spelling, Mechanics (Capitalization, Abbreviation, Number Use), and Punctuation; Create original email / documents to employ newly-learned class material. Online Format—Business Grammar and Usage is a 4-hour interactive virtual class for up to ten people. Register for this class and you will be sent ONLINE login instructions prior to the class date. It was great to have the opportunity to learn some new techniques and to gain more awareness of how I present myself. The most immediately applicable uses have been in reducing my “ums” and “ahs” and in trying to come to my point in a more succinct way. I’ve been cultivating this awareness in one-on-one settings; meetings and individual conversations. Christina Vargas
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.
Today, everyone is a publisher. Whether you're filling your company blog with compelling ideas, producing newsletters to engage your customers, packing your social media feeds with engagin content, or crafting insightful posts to push your personal professional profile – you need to use storytelling to engage your audience. In this workshop we'll break down the key ingredients that make content engaging. We'll go through a proven framework for taking ideas from initial spark, through developing a unique angle, to idenitfying the ideal format for execution. We'll discuss the purpose of the content you have in mind, and look at how your can plan a strategy to publish regularly and measure the results. This is a fully interactive online workshop, so be prepared to join discussions and develop your own content ideas. Takeaways Understanding the needs of your target audience. Identifying the Subject, Angle and Format. Cheap (or free!) tools to create professional content. Useful systmes for publishing regularly, and keeping the work manageable. Knowing where to publish on the web, social media and other platforms. Promoting your content, and getting feedback. Delivery We deliver our courses over Zoom, to maximise flexibility. The training can be delivered in a single day, or across multiple sessions. All of our courses are live and interactive – every session includes a mix of formal tuition and hands-on exercises. To ensure this is possible, the number of attendees is capped at 16 people. Tutor Alan Rutter is the founder of Fire Plus Algebra. He is a specialist in communicating complex subjects through data visualisation, writing and design. He teaches for General Assembly and runs in-house training for public sector clients including the Home Office, the Department of Transport, the Biotechnology and Biological Sciences Research Council, the Health Foundation, and numerous local government and emergency services teams. He previously worked with Guardian Masterclasses on curating and delivering new course strands, including developing and teaching their B2B data visualisation courses. He oversaw the iPad edition launches of Wired, GQ, Vanity Fair and Vogue in the UK, and has worked with Condé Nast International as product owner on a bespoke digital asset management system for their 11 global markets. Testimonial “The EMpower Network commissioned the content creation workshop to understand how to communicate effectively with a wide range of stakeholders. In light of covid-19, it’s more important than ever to communicate clearly especially as we’ve moved to remote meetings. The workshop was very insightful and Alan was a very engaging speaker making sure all attendees contributed and worked through real-life examples. Attendees praised the usefulness of the workshop and especially liked the content generation framework with one saying 'It has changed the way I think about communicating and given me a toolkit that I will use in both my work and personal projects'.” Shade Nathaniel-Ayodele | EMpower Network, Southwark Council