Duration 4 Days 24 CPD hours This course is intended for This course is appropriate for anyone who wants to create applications or modules to automate and simplify common tasks with Perl. Overview Working within in an engaging, hands-on learning environment, guided by our expert web development, PHP practitioner, students will learn to: Create a working script that gets input from the command line, the keyboard, or a file Use arrays to store and process data from files Create formatted reports Use regular expressions Use the appropriate types of variables and data structures Refactor duplicate code into subroutines and modules What is available in the standard library Use shortcuts and defaults, and what they replace Introduction to Perl Programming Essentials is an Introductory-level practical, hands-on Perl scripting training course that guides the students from the basics of writing and running Perl scripts to using more advanced features such as file operations, report writing, the use of regular expressions, working with binary data files, and using the extensive functionality of the standard Perl library. Students will immediately be able to use Perl to complete tasks in the real world. Session: An Overview of Perl What is Perl? Perl is compiled and interpreted Perl Advantages and Disadvantages Downloading and Installing Perl Which version of Perl Getting Help Session: Creating and running Perl Programs Structure of a Perl program Running a Perl script Checking syntax and warnings Execution of scripts under Unix and Windows Session: Basic Data and I/O Numeric and Text literals Math operators and expressions Scalar variables Default values Writing to standard output Command line arguments Reading from the standard input Session: Logic and Loops About flow control The if statement and Boolean values Using unless and elsif Statement modifiers warn() and die() The conditional construct Using while loop and its variants Using the for loop Exiting from loops Session: Lists and Arrays The list data type Accessing array elements Creating arrays List interpolation Arrays and memory Counting elements Iterating through an array List evaluation Slices and ranges Session: Reading and writing text files File I/O Overview Opening a file Reading text files Writing to a text file Arrays and file I/O Using the <> operator Session: List functions Growing and shrinking arrays The split() function Splitting on whitespace Assigning to literal lists The join() function The sort() function Alternate sort keys Reversing an array Session: Formatting output Using sprintf() and printf() Report formatting overview Defining report formats The write() function Advanced filehandle magic Session: Hashes Hash overview Creating hashes Hash attributes Traversing a hash Testing for existence of elements Deleting hash elements Session: References What is a reference? The two ways to create references References to existing data References to anonymous data Dereferencing scalar, array, and ash references Dereferencing elements of arrays and hashes Multidimensional arrays and other data structures Session: Text and Regular Expressions String length The substr() function The index() and rindex() functions String replication Pattern matching and substitution Regular expressions Session: Raw file and data access Opening and closing raw (binary) files Reading raw data Using seek() and tell() Writing raw data Raw data manipulation with pack() and unpack() Session: Subroutines and variable scope Understanding packages Package and Lexical variables Localizing builtin variables Declaring and calling subroutines Calling subroutines Passing parameters and returning values Session: Working with the operating system Determining current OS Environment variables Running external programs User identification Trapping signals File test operators Working with files Time of day Session: Shortcuts and defaults Understanding $_ shift() with no array specified Text file processing Using grep() and Using map() Command-line options for file processing Session: Data wrangling Quoting in Perl Evaluating arrays Understanding qw( ) Getting more out of the <> operator Read ranges of lines Using m//g in scalar context The /o modifier Working with embedded newlines Making REs more readable Perl data conversion Session: Using the Perl Library The Perl library Old-style library files Perl modules Modules bundled with Perl A selection of modules Getting modules from ActiveState Getting modules from CPAN Using Getopt::Long Session: Some Useful Tools Sending and receiving files with Net::FTP Using File::Find to search for files and directories Grabbing a Web page Some good places to find scripts Perl man pages for more information Zipping and unzipping files
Learn how to use OneNote to create, organize and populate electronic notebooks. Course overview Duration: 4 hours OneNote is a digital notebook and can be a great way to easily take notes. Whether for meetings, on training courses or to help with to do lists. It works very much like it’s paper copy equivalent but, of course, with lots of enhanced features. Its integration with Outlook and the other office applications means you can easily take notes and link them to documents meeting details and then email them out. You can even add audio and video notes as reminders. Objectives By the end of the course you will be able to: Create and manage notebooks Add contents Tag and prioritise content Create notes from other applications Create To Do Lists and integrate into Outlook Content Using OneNote Creating notebooks Creating sections and pages Formatting pages Using page templates Creating page templates Reordering sections and pages Deleting sections and pages Creating OneNote content Adding text Bullet lists Adding tables Adding images Adding drawings Adding links Adding audio and video notes Tagging Tagging Creating custom tags Creating to-do lists Searching and filtering for tags Notes Creating quick notes Filtering them in OneNote notebooks Linked notes Outlook integration Linking to tasks in Outlook Flagging notes for follow up Inserting Outlook meeting content Taking minutes Emailing OneNote pages Send emails to OneNote
Security Management, Security Guard and Stretching Diploma Embark on a comprehensive journey into the world of Security Management and Security Guard responsibilities with our Diploma course. This program is meticulously designed to equip you with an in-depth understanding of the principles of security management and the critical role of security guards. Integrate stretching into your Security Guard routine for longevity. Learning Outcomes: Understand fundamental principles of security management. Understand principles integral to a Security Guard role. Analyse human behavior in Security Guard operations. Implement effective physical security as a Security Guard. Master security management practices for a Security Guard. Navigate legal and ethical aspects of security management. Integrate stretching into a Security Guard's daily routine. More Benefits: LIFETIME access Device Compatibility Free Workplace Management Toolkit Key Modules: Foundation of Security Management: Grasp the core principles of Security Management, understanding its paramount importance in today's security-conscious world. Identifying Threats and Vulnerabilities: Master the skill of identifying and assessing various threats and vulnerabilities, a key competency for Security Guards and managers. Mastering Physical Security: Acquire comprehensive knowledge on best practices in physical security to protect assets and personnel, essential for Security Management. Safeguarding Information: Understand the critical aspects of information security and protection strategies within the Security Guard domain. Navigating Legal and Ethical Issues: Familiarize yourself with the legal framework and ethical considerations critical in Security Management. Conducting Security Investigations: Gain insights into conducting effective security investigations, a crucial skill for Security Guards. Risk Analysis and Mitigation: Develop the ability to analyze risks and implement mitigation strategies, pivotal in Security Management. Leveraging Technology: Explore how cutting-edge technology can be utilized to enhance security measures, a technological pivot in Security Management. Operations and Maintenance: Learn about the operational aspects and maintenance requirements of security systems, key to effective Security Management. Effective Communication: Master the art of communication, essential for managing security operations and teams within the Security Guard field. Stretching: Incorporate stretching exercises to enhance longevity and well-being as a Security Guard.
Fully qualified, positive Dog Behaviourist based in Claygate, Surrey. I offer one to one Private Dog Consultations in your home, a full report, Behaviour Modification Plan and possible vet referral for all types of dog behaviour issues and specialise in foreign rescue dogs.
Duration 4 Days 24 CPD hours This course is intended for This is an introductory-level C++ programming course designed for developers with experience programming in C or other languages. Practical hands-on prior programming experience and knowledge is required. Overview This 'skills-centric' course is about 50% hands-on lab and 50% lecture, designed to train attendees in basic coding with C++, 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: Writing procedural programs using C++ Using private, public and protected keywords to control access to class members Defining a class in C++ Writing constructors and destructors Writing classes with const and static class members Overloading operators Implementing polymorphic methods in programs Writing programs using file I/O and string streams Using manipulators and stream flags to format output Using the keyword template to write generic functions and classes Writing programs that use generic classes and functions Writing programs that use algorithms and containers of the Standard Library Apply object-oriented design techniques to real-world programming problems Using algorithms and containers of the Standard Library to manipulate string data Understand how C++ protects the programmer from implementation changes in other modules of an application Using try() blocks to trap exceptions Using catch() blocks to handle exceptions Defining exceptions and using throw to trigger them Introduction to C++ Programming / C++ Essentials is a skills-focused, hands-on C++ training course geared for experienced programmers who need to learn C++ coupled with sounds coding skills and best practices for OO development. Students will leave this course armed with the required skills to put foundation-level C++ programming skills right to work in a practical environment. The central concepts of C++ syntax and style are taught in the context of using object-oriented methods to achieve reusability, adaptability and reliability. Emphasis is placed on the features of C++ that support abstract data types, inheritance, and polymorphism. Students will learn to apply the process of data abstraction and class design. Practical aspects of C++ programming including efficiency, performance, testing, and reliability considerations are stressed throughout. Comprehensive hands on exercises are integrated throughout to reinforce learning and develop real competency Moving from C to C++ (Optional) New Compiler Directives Stream Console I/O Explicit Operators Standard Libraries Data Control Capabilities Handling Data New Declaration Features Initialization and Assignment Enumerated Types The bool Type Constant Storage Pointers to Constant Storage Constant Pointers References Constant Reference Arguments Volatile Data Global Data Functions Function Prototypes and Type Checking Default Function Data Types Function Overloading Problems with Function Overloading Name Resolution Promotions and Conversions Call by Value Reference Declarations Call-by-Reference and Reference Types References in Function Return Constant Argument Types Conversion of Parameters Using Default Initializers Providing Default Arguments Inline Functions Operator Overloading Advantages and Pitfalls of Overloading Member Operator Syntax and Examples Class Assignment Operators Class Equality Operators Non-Member Operator Overloading Member and Non-Member Operator Functions Operator Precedence This Pointer Overloading the Assignment Operator Overloading Caveats Creating and Using Objects Creating Automatic Objects Creating Dynamic Objects Calling Object Methods Constructors Initializing Member consts Initializer List Syntax Allocating Resources in Constructor Destructors Block and Function Scope File and Global Scope Class Scope Scope Resolution Operator :: Using Objects as Arguments Objects as Function Return Values Constant Methods Containment Relationships Dynamic Memory Management Advantages of Dynamic Memory Allocation Static, Automatic, and Heap Memory Free Store Allocation with new and delete Handling Memory Allocation Errors Controlling Object Creation Object Copying and Copy Constructor Automatic Copy Constructor Conversion Constructor Streaming I/O Streams and the iostream Library Built-in Stream Objects Stream Manipulators Stream Methods Input/Output Operators Character Input String Streams Formatted I/O File Stream I/O Overloading Stream Operators Persistent Objects Introduction to Object Concepts The Object Programming Paradigm Object-Orientated Programming Definitions Information Hiding and Encapsulation Separating Interface and Implementation Classes and Instances of Objects Overloaded Objects and Polymorphism Declaring and Defining Classes Components of a Class Class Structure Class Declaration Syntax Member Data Built-in Operations Constructors and Initialization Initialization vs. Assignment Class Type Members Member Functions and Member Accessibility Inline Member Functions Friend Functions Static Members Modifying Access with a Friend Class Templates Purpose of Template Classes Constants in Templates Templates and Inheritance Container Classes Use of Libraries Strings in C++ Character Strings The String Class Operators on Strings Member Functions of the String Class Inheritance Inheritance and Reuse Composition vs. Inheritance Inheritance: Centralized Code Inheritance: Maintenance and Revision Public, Private and Protected Members Redefining Behavior in Derived Classes Designing Extensible Software Systems Syntax for Public Inheritance Use of Common Pointers Constructors and Initialization Inherited Copy Constructors Destructors and Inheritance Public, Protected, Private Inheritance Exceptions Types of Exceptions Trapping and Handling Exceptions Triggering Exceptions Handling Memory Allocation Errors C++ Program Structure Organizing C++ Source Files Integrating C and C++ Projects Using C in C++ Reliability Considerations in C++ Projects Function Prototypes Strong Type Checking Constant Types C++ Access Control Techniques Polymorphism in C++ Definition of Polymorphism Calling Overridden Methods Upcasting Accessing Overridden Methods Virtual Methods and Dynamic Binding Virtual Destructors Abstract Base Classes and Pure Virtual Methods Multiple Inheritance Derivation from Multiple Base Classes Base Class Ambiguities Virtual Inheritance Virtual Base Classes Virtual Base Class Information The Standard Template Library STL Containers Parameters Used in Container Classes The Vector Class STL Algorithms Use of Libraries
These events are designed to work on the ideas introduced in Level 1: Understanding & Dealing with Everyday Racism The Six Stages Framework
These events are designed to introduce the BOOK & basic ideas behind Understanding & Dealing with Everyday Racism The Six Stages Framework
These events are designed to introduce the BOOK & basic ideas behind Understanding & Dealing with Everyday Racism The Six Stages Framework
High quality specifications are of paramount importance in achieving the right technical performance and value for money. This long-established training programme has been developed to help those involved in producing specifications to create high quality documents in an organised and effective way. It provides a sound foundation for those new to the topic whilst at the same time offering new insights to those with more experience. The programme emphasises the need for a clear definition of requirements combined with the ability to communicate those requirements effectively to third parties. A structured method of preparing specifications is provided, and a range of practical techniques is presented, to enable participants to put the principles into practice. The commercial and contractual role of specifications is also addressed. The objectives of the workshop are to: Provide a clear understanding of the role and purpose of specifications Present a framework for organising and producing specifications Define the key steps involved in creating effective specifications Demonstrate methods for assisting in defining requirements Provide tools and techniques for scoping and structuring specifications Show the role of specifications in managing variations and changes to scope Present methods to assist the writing and editing of specifications Review how specifications should be issued and controlled DAY ONE 1 Introduction Review of course objectives Review of participants' needs and objectives 2 Creating effective specifications The role of specifications in communicating requirements The costs, benefits and qualities of effective specifications Understanding the differences between verbal and written communication The five key steps of 'POWER' writing: prepare-organise-write-edit-release Exercise: qualities of an effective specification 3 Step 1: Preparing to write - defining readership and purpose; the specification and the contract Designing the specifications required; applying BS 7373 Defining the purpose, readership and title of each document Effective procedures for writing, issuing and controlling specifications The roles and responsibilities of the key players Understanding contracts; the contractual role of the specification Integrating and balancing the technical and commercial requirements Writing specifications to achieve the appropriate contract risk strategy Deciding how to specify: when to use functional and technical specifications The role of specifications in managing variations and changes to scope 4 Case study 1 Teams review a typical project scenario and identify the implications for the specification Feedback and discussion 5 Step 2: Organising the specification content Defining the need and establishing user requirements Deciding what issues the specification should cover Scoping techniques: scope maps, check lists, structured brainstorming Clarifying priorities: separating needs and desires Dealing with requirements that are difficult to quantify Useful techniques: cost benefit analysis, QFD, Pareto analysis 6 Case study 2 Teams apply the scoping techniques to develop the outline contents for a specification Feedback and discussion DAY TWO 7 Step 2: Organising the specification content (cont) Deciding what goes where; typical contents and layout for a specification The three main segments: introductory, key and supporting Creating and using model forms: the sections and sub-sections Detailed contents of each sub-section Tools and techniques for outlining and structuring specifications 8 Case study 3 Teams develop the detailed specification contents using a model form Feedback and discussion 9 Step 3: Writing the specification The challenges of written communication Identifying and understanding the readers needs Choosing and using the right words; dealing with jargon Problem words; will, shall, must, etc; building a glossary Using sentence structure and punctuation to best effect Understanding the impact of style, format and appearance Avoiding common causes of ambiguity Being concise and ensuring clarity Choosing and using graphics to best effect Exercises and examples 10 Step 4: Editing the specification Why editing is difficult; how to develop a personal editing strategy Key areas to review: structure, content, accuracy, clarity, style and grammar Editing tools and techniques 11 Step 5: Releasing and controlling the specification Key requirements for document issue and control Final formatting and publication issues; document approval Requirements management: managing revisions and changes 12 Course review and action planning What actions should be implemented to improve specifications? Conclusion