Complete C# programming training course description This training course teaches developers the programming skills that are required for developers to create Windows applications using the C# language. Students review the basics of C# program structure, language syntax, and implementation details, and then consolidate their knowledge throughout the week as they build an application that incorporates several features of the .NET Framework. What will you learn Use the syntax and features of C#. Create and call methods, catch and handle exceptions, and describe the monitoring requirements of large-scale applications. Implement a typical desktop application. Create class, define and implement interfaces, and create and generic collections. Read and write data to/from files. Build a GUI using XAML. Complete C# programming training course details Who will benefit: Programmers wishing to learn C#. Prerequisites: Developers attending this course should already have gained some limited experience using C# to complete basic programming tasks. Duration 5 days Complete C# programming training course contents Review of C# Syntax Overview of Writing Applications using C#, Datatypes, Operators, and Expressions. C# Programming Language Constructs. Hands on Developing the Class Enrolment Application. Methods, exceptions and monitoring apps Creating and Invoking Methods. Creating Overloaded Methods and Using Optional and Output Parameters. Handling Exceptions. Monitoring Applications. Hands on Extending the Class Enrolment Application Functionality. Developing a graphical application Implementing Structs and Enums. Organizing Data into Collections. Handling Events. Hands on Writing the Grades Prototype Application. Classes and Type-safe collections Creating Classes. Defining and Implementing Interfaces. Implementing Type-safe Collections. Hands on Adding Data Validation and Type-safety to the Grades Application. Class hierarchy using Inheritance Class hierarchies. Extending .NET framework classes. Creating generic types. Hands on Refactoring common functionality into the User Class. Reading and writing local data Reading and Writing Files. Serializing and Deserializing Data. Performing I/O Using Streams. Hands on Generating the Grades Report. Accessing a Database Creating and using entity data models. Querying and updating data by using LINQ. Hands on Retrieving and modifying grade data. Accessing remote data Accessing data across the web and in the cloud. Hands on Modifying grade data in the Cloud. Designing the UI for a graphical applicatione Using XAML to design a User Interface. Binding controls to data. Styling a UI. Hands on Customizing Student Photographs and Styling the Application. Improving performance and responsiveness Implementing Multitasking by using tasks and Lambda Expressions. Performing operations asynchronously. Synchronizing concurrent data access. Hands on Improving the responsiveness and performance of the application. Integrating with unmanaged code Creating and using dynamic objects. Managing the Lifetime of objects and controlling unmanaged resources. Hands on Upgrading the grades report. Creating reusable types and assemblies Examining Object Metadata. Creating and Using Custom Attributes. Generating Managed Code. Versioning, Signing and Deploying Assemblies. Hands on Specifying the Data to Include in the Grades Report. Encrypting and Decrypting Data Implementing Symmetric Encryption. Implementing Asymmetric Encryption. Hands on Encrypting and Decrypting Grades Reports.
Programming in HTML5 with CSS course description This course provides an introduction to HTML5, CSS3, and JavaScript. It is an entry point into both the Web application and Windows Store apps training paths. The course focuses on using HTML5 / CSS3 / JavaScript to implement programming logic, define and use variables, perform looping and branching, develop user interfaces, capture and validate user input, store data, and create well-structured application. What will you learn Create and style HTML5 pages. Use JavaScript. Style HTML5 pages by using CSS3. Use common HTML5 APLs in interactive Web applications. Create HTML5 Web pages that can adapt to different devices and form factors. Enhance the user experience by adding animations to the HTML5 page. Programming in HTML5 with CSS course details Who will benefit: Website developers. Prerequisites: HTML5 development fundamentals. Duration 5 days Programming in HTML5 with CSS course contents Overview of HTML and CSS Overview of HTML, Overview of CSS, Creating a Web Application by Using Visual Studio 2012. Hands on Exploring the Contoso Conference Application. Creating and Styling HTML5 Pages Creating an HTML5 Page, Styling an HTML5 Page. Hands on Creating and Styling HTML5 Pages. Introduction to JavaScript Overview of JavaScript Syntax, Programming the HTML DOM with JavaScript, Introduction to jQuery. Hands on Displaying Data and Handling Events by Using JavaScript. Creating Forms to Collect and Validate User Input Overview of Forms and Input Types, Validating User Input by Using HTML5 Attributes, Validating User Input by Using JavaScript. Hands on Creating a Form and Validating User Input. Communicating with a Remote Data Source Sending and Receiving Data by Using XMLHTTPRequest, Sending and Receiving Data by Using jQuery AJAX operations. Hands on Communicating with a Remote Data Source. Styling HTML5 by Using CSS3 Styling Text, Styling Block Elements, CSS3 Selectors, Enhancing Graphical Effects by Using CSS3. Hands on Styling Text and Block Elements using CSS3. Creating Objects and Methods by Using JavaScript Writing Well-Structured JavaScript, Creating Custom Objects, Extending Objects. Hands on Refining Code for Maintainability and Extensibility. Creating Interactive Pages using HTML5 APIs Interacting with Files, Incorporating Multimedia, Reacting to Browser Location and Context, Debugging and Profiling a Web Application. Hands on Creating Interactive Pages by Using HTML5 APIs. Adding Offline Support to Web Applications Reading and Writing Data Locally, Adding Offline Support by Using the Application Cache. Hands on Adding Offline Support to a Web Application. Implementing an Adaptive User Interface Supporting Multiple Form Factors, Creating an Adaptive User Interface. Hands on Implementing an Adaptive User Interface. Creating Advanced Graphics Creating Interactive Graphics by Using Scalable Vector Graphics, Programmatically Drawing Graphics by Using a Canvas. Hands on Creating Advanced Graphics. Animating the User Interface Applying CSS Transitions, Transforming Elements, Applying CSS Key-frame Animations. Hands on Animating User Interface Elements. Web Sockets for Real-Time Communications Introduction to Web Sockets, Sending and Receiving Data by Using Web Sockets. Hands on Implementing Real-Time Communications by Using Web Sockets. Creating a Web Worker Process Introduction to Web Workers, Performing Asynchronous Processing by Using a Web Worker. Hands on Creating a Web Worker Process.
Ansible for engineers training course description An introduction to automation using ansible. Ansible is a general purpose IT automation platform that can be use for a number of purposes. The course covers configuration management, cloud provisioning and application deployment with ansible. Hands on sessions follow all major sections. What will you learn Install ansible. Automate tasks with ansible. Write ansible playbooks. Ansible for engineers training course details Who will benefit: Administrators and developers automating tasks. Prerequisites: Linux administration skills Duration 3 days Ansible for engineers training course contents What is ansible? The language, the engine, the framework. Uses of ansible, orchestration. Hands on Installing ansible. Ansible architecture ible architecture Controlling machines, nodes, Agentless, SSH, modules, JSON protocol. Configuration management, inventories, playbooks, modules, roles. Hands on Getting started, running ad hoc commands. Ansible and Vagrant Prototyping and testing. Hands on Using ansible with Vagrant. Ad hoc commands Parallelism, shell commands, managing files and directories, file transfer, package management, manage user and groups, deploying applications, service management, background jobs, checking log files, managing cron jobs. Hands on Using ansible with Vagrant. Playbooks ansible-playbook, users, sudo, YAML, plays, tasks, handlers, modules. Hands on Running playbooks. More playbooks Handlers, variables, environmental variables, playbook variables, inventory variables, variable scope and precedence, accessing variables, facts, ansible vault. Conditionals, wait_for. Hands on Using variables and conditions in playbooks. Roles and includes Dynamic includes, Handler includes, playbook includes. Roles, role parts: handlers, files, templates, cross platform roles, ansible galaxy. Hands on includes example, building roles. Inventories /etc/ansible/hosts, inventory variables, static inventories, dynamic inventories. Hands on Inventories and variables. Miscellanea Individual server cookbooks, Main playbook for configuring all servers. Hands onPlaybooks.
XML primer training course description This course has been designed for web and intranet developers who want to accelerate their learning of XML and its applications without the grind of book learning. Although a basic knowledge of HTML and JavaScript is assumed, it is also assumed you know very little about XML and how to use it. On completion of this course you should understand the benefits of using XML and be able to design XML solutions where applicable to your company's Internet/intranet requirements. The course will be particularly beneficial if you want to know how to communicate data to diverse applications over the Internet or company intranet. What will you learn Write XML. Debug XML. Examine existing code and determine its function. XML primer training course details Who will benefit: Anyone working with XML. Prerequisites: HTML5 development fundamentals Duration 3 days XML primer training course contents The origins of XML Markup languages, SGML, document type definitions and validity, introducing XML, IE and XML, accessing content and adding style. Basic XML XML document structure, elements and attributes, grammar, well formed documents, other XML elements and references. Document Type Definition (DTDs) Creating a DTD, basic declaration, declaring elements, content definitions, entities, entity declarations, notations, defining attributes, attribute types, forcing inclusion or exclusion of DTD sections, validation. Namespaces Declaring namespaces, scoping, removing and changing namespaces, qualified names, attribute namespaces. An introduction to schemas Constructing schemas, defining the root element and its contents,<ELEMENTTYPE>, defining root element contents, adding attributes definitions, <ATTRIBUTETYPE>, <ELEMENT>, <ATTRIBUTE>. XML & the Document Object Model (DOM) What the DOM offers, DOM and W3C. Basic DOM concepts XML documents as trees, terminology of tree elements. Key DOM Objects: The document object and its creation, base objects, IE specifics, the XML node hierarchy. Programming DOM Viewing a DOM model as XML, getting the root element of a document, iterating nodes of a DOM, basic node properties, collection objects, searching for specific values, filtering a nodelist by tagname, more filtering methods, selecting nodes from their attributes. Amending Content and Structure Creating/saving a DOM as XML, changing content/structure, dynamically building a DOM. Using ASP and other techniques ASP techniques, HTTPREQUEST object, XSL, transforming and formatting XML. Formatting Using CSS. CSS And XML. XSL Transformations - XSLT Introduction, the XSL root element, applying XSL stylesheets to XML, XSL elements and operations, instructions - creating text nodes and applying templates, a 'drill-down' approach, simple output formatting, pattern filters - patterns based on position, the Match and Select attributes and their patterns, formatting output, creating new XML in output.
Querying Microsoft SQL Server course description This course covers the technical skills required to write basic Transact-SQL queries for Microsoft SQL Server and provides the foundation for all SQL Server-related disciplines; namely, database administration, database development and business intelligence. This course helps prepare for exam 70-761. Note: This course is designed for SQL Server 2014or SQL Server 2016. What will you learn Write SELECT statements. Create and implement views and table-valued functions. Transform data by implementing pivot, unpivot, rollup and cube. Create and implement stored procedures. Add programming constructs such as variables, conditions, and loops to T-SQL code. Querying Microsoft SQL Server course details Who will benefit: Database administrators, database developers, and business intelligence professionals. SQL power users, namely, report writers, business analysts and client application developers. Prerequisites: Database fundamentals Duration 5 days Querying Microsoft SQL Server course contents Introduction to Microsoft SQL Server Management studio, creating and organizing T-SQL scripts, using books online. Hands on working with SQL Server tools. T-SQL querying Introducing T-SQL, sets, predicate logic, logical order of operations in SELECT statements, basic SELECT statements, queries that filter data using predicates, queries that sort data using ORDER BY. Hands on introduction to T-SQL querying. Writing SELECT queries Writing simple SELECT statements, eliminating duplicates with DISTINCT, column and table aliases, simple CASE expressions. Hands on writing basic SELECT statements. Querying multiple tables cross joins and self joins, write queries that use Inner joins, write queries that use multiple-table inner joins, write queries that use self-joins, write queries that use outer joins, write queries that use cross joins. Hands on querying multiple tables. Sorting and filtering data Sorting data, filtering data with predicates, filtering data with TOP and OFFSET-FETCH, working with unknown values, WHERE clause, ORDER BY clause, TOP option, OFFSET-FETCH clause. Hands on sorting and filtering data. SQL Server data types Introducing SQL Server data types, Character data, date and time data, queries that return date and time data, write queries that use date and time functions, write queries that return character data, write queries that return character functions. Hands on working with SQL Server data types. DML Adding data to tables, modifying and removing data, generating automatic column values, Inserting records with DML, updating and deleting records using DML. Hands on using DML to modify data. Built-in functions Queries with built-in functions, conversion functions, logical functions, functions with NULL, queries that use conversion functions, queries that use logical functions, queries that test for nullability. Hands on built-in functions Grouping and aggregating data Aggregate functions, the GROUP BY clause, filtering groups with HAVING, queries that use the GROUP BY clause, queries that use aggregate functions, queries that use distinct aggregate functions, queries that filter groups with the HAVING clause. Hands on grouping and aggregating data. Subqueries Self-contained subqueries, correlated subqueries, EXISTS predicate with subqueries, scalar and multi-result subqueries. Hands on subqueries. Table expressions Views, inline table-valued functions, derived tables, common table expressions. queries that use views, write queries that use derived tables, Common Table Expressions (CTEs), write queries that se inline Table valued expressions (TVFs). Hands on table expressions. Set operators The UNION operator, EXCEPT and INTERSECT, APPLY, queries that use UNION set operators and UNION ALL, CROSS APPLY and OUTER APPLY operators. Hands on set operators. Windows ranking, offset, and aggregate functions OVER, window functions, ranking functions, offset functions, window aggregate functions. Hands on; windows ranking, offset, and aggregate functions. Pivoting and grouping sets PIVOT and UNPIVOT, grouping sets, queries that use the PIVOT operator, queries that use the UNPIVOT operator, queries that use the GROUPING SETS CUBE and ROLLUP subclauses. Hands on pivoting and grouping sets Executing stored procedures Querying data with stored procedures, passing parameters to stored procedures, simple stored procedures, dynamic SQL, the EXECUTE statement to invoke stored procedures. Hands on executing stored procedures. Programming with T-SQL T-SQL programming elements, controlling program flow, declaring variables and delimiting batches, control-of-flow elements, variables in a dynamic SQL statement, synonyms. Hands on programming with T-SQL Error handling T-SQL error handling, structured exception handling, redirect errors with TRY/CATCH, THROW to pass an error message back to a client. Hands on implementing error handling. Implementing transactions Transactions and the database engines, controlling transactions, BEGIN, COMMIT, and ROLLBACK, adding error handling to a CATCH block. Hands on implementing transactions.
Zeroconf and Bonjour training course description A hands on training course focusing on Microsoft and Apple implementations of Zeroconf. The course covers all three main areas: Interface configuration, name resolution and service discovery. Hands on with Apple Bonjour and Microsoft UPnP compliment all the major theory sessions. What will you learn Explain how mDNS and LLMNR work. Explain how DNS-SD and SSDP work. Recognise the role of service discovery gateways. Zeroconf and Bonjour training course details Who will benefit: Technical staff working with Zeroconf. Developers using Zeroconf. Prerequisites: TCP/IP Foundation for engineers Duration 2 day Zeroconf and Bonjour training course contents What is Zeroconf? Zeroconf, architecture, Microsoft UPnP, Apple, Bonjour, devices, components. Home networks, enterprise networks, BYOD. Plug and play without Zeroconf DHCP, DNS, A, PTR, SRV records, DDNS. Hands on DHCP configuration. Address selection IPv4 link local addresses, IPv6 link local addresses. Hands: Addresses without DHCP. Name resolution mDNS, finding names, announcing names, .local DNS namespace, LLMNR. Hands on Names without DNS. Role of multicasting Multicast addresses, multicasts and switches, multicasts and routers. Hands on Multicasts, TTL. Service discovery DNS-SD, SRV and TXT lookups, SSDP, HTTP. Hands on Browsing for services Zeroconf in a routed environment Service Discovery gateways, configuration, service filters, DNS-LLQ, NAT-PMP. Miscellaneous Security, automatic multicast addresses, wireless auto configuration.
MySQL Performance & Tuning training course description This MySQL Performance & Tuning course is designed for Database Administrators, Application Developers and Technical Consultants who need to monitor and tune the performance of MySQL servers and databases. The course provides practical experience in monitoring and tuning MySQL servers and databases. Note: This MySQL Performance & Tuning course does not cover clustering (other than at overview level), replication or non-standard storage engines such as Falcon and PBXT. What will you learn Develop a monitoring and tuning plan Use server configuration and status variables. Identify and improve problem queries. Make efficient use of indexes. Monitor and size memory caches and locks. Tune the MyISAM and InnoDB storage engine. Evaluate the use of partitioning for performance. MySQL Performance & Tuning training course details Who will benefit: Anyone who wishes to monitor and tune MySQL performance. Prerequisites: Delegates must have a working knowledge of MySQL Database Administration Duration 3 days MySQL Performance & Tuning training course contents Introduction to performance tuning Tuning overview, Resolving performance issues, Recommended approach to tuning, Items to evaluate, Where to look, Planning a monitoring routine, Building a new database for performance, Tuning an existing database, Setting suitable goals. MySQL performance tuning tools Administration tools, the information schema, performance-related SHOW commands, benchmarking tools, the MySQL performance schema, MonYog. Hands on Obtaining performance information. Schema design Normalisation, de-normalisation, naming conventions, load generation, stress testing and benchmarking tools, selecting data types, data types, character sets, choosing storage engines. Hands on effects of design on performance. Statement tuning Overview of statement tuning, identifying problem queries, the optimizer, explain, explain extended. Hands on identifying problem queries and using explain. Indexes Index overview, Types of index, Index tuning, Indexes and joins. Hands on Indexes and performance. Server configuration and monitoring Server configuration variables, server status variables, table cache, multi-threading, connection issues, query cache. Hands on setting and interpreting server variables and caching. Locking Types of locking, locking and storage engines, effects of locking on performance. Hands on locking and performance. The InnoDB engine Transactions, crash recovery, locking, monitoring InnoDB, caches and buffers, configuring data files, configuring the log files. Hands on InnoDB configuration and performance. Other storage engines MyISAM engine, merge engine, archive engine, memory engine, blackhole engine, CSV engine, the Spider engine, the ColumnStore engine, the MyRocks engine, mixing sorage engines. Hands on storage engine performance. Overview of clustering and performance Advantages of performance, advantages of clustering, performance issues and clustering, the NDBCluster engine, the Galera cluster, the Percona XtraDB cluster, MySQL InnoDB cluster, the federated engine, the federatedX engine, overview of other high availability techniques. NOSQL and Mencached overview. Dumping and loading data SQL statements versus delimited data, parameters affecting dump performance, parameters affecting load performance. Hands on dump and load performance. Partitioned tables Partitioned tables concepts, range partitioning, hash partitioning, key partitioning, list partitioning, composite partitioning or subpartitioning, partition pruning. Hands on partitioned table performance.
About this Course Batteries are going to play an increasingly important role in the energy grid. An increasing number of developers are looking to add battery storage systems (BESS) into their existing projects. However future cash flows are highly uncertain and they are often unsure exactly how battery technology can be monetised. A strong revenue model requires stacking of different revenue sources. As the share of variable renewable sources in electricity systems further increase, battery systems are expected to play a growing role by providing frequency control and operational reserves as well as for wholesale arbitrage, while helping reduce grid integration costs. The more volatile electricity prices are, the greater the earning potential of batteries trading electricity on various electricity markets. BESS can generate revenue streams in several different ways; through a frequency response contract with the TSO, by providing grid services in other ways or by arbitrage through buying cheap power and selling power for a higher price in a liquid wholesale market. Because batteries are efficient, the round trip efficiency is also high. They can spread arbitrage trading much better than other storage types and in many cases, other asset classes. For companies that combine a battery with other tasks, for example to store power from their own panels, or to avoid a costly heavy power connection, the investment is less risky than for those that purely focus on arbitrage trading. It is uncertain whether electricity prices will fluctuate more violently in the coming years, or whether the peaks will actually level off. During this highly interactive training, the trainer will provide you with the latest insights and best practices on how to obtain the maximum economic beneï¬ts when participating with BESS in the electricity market. Training Objectives By the end of this course, the participants will be able to: Discover the different BESS battery technologies and their impact on the grid Understand the role of storage in providing flexibility to the power system Examine the potential revenue streams from BESS models Learn how profit can generated with BESS trading strategies Determine how to optimize the value from BESS projects Find out how to combine BESS with renewable PPAs Target Audience Professionals and executives from Power Utilities, Energy Companies, Financial & Investment Banks, Renewable Power Project Developers, Transmission System Operators and Energy Industry Regulators will find this training course useful. Electricity Marketing and Traders New Venture or Business Development Executives Corporate Finance and Treasury Executives Audit and Risk Management Executives Power or Utility Market Research Analysts Investment Managers for Renewable Power Projects Origination Professionals Regulation, Compliance and Documentation Officers Lawyers and Accountants Power Transmission and Distributions Engineers Trainer Our key expert is a skilled and accomplished professional with over 25 years' of extensive senior management / board level experience in the energy markets worldwide. Next to advising energy companies, banks, consultants and regulators regarding PPAs, our key expert has also conducted several highly successful training courses about Power Purchase Agreements, Power Project Finance, IPPs, and Project Risk Management to over 1,000 high level participants from Asia, Africa, Europe and Middle East. He was a member of the expert commission of the Dutch Government for 2 offshore wind parks, Hollandse Kust (zuid) Wind Farm Zone Sites 3 and 4 that advised on which of the 5 applicants did provide the best security and solutions associated with the electricity and green certificate prices, the construction and operational risks of the project. POST TRAINING COACHING SUPPORT (OPTIONAL) To further optimise your learning experience from our courses, we also offer individualized 'One to One' coaching support for 2 hours post training. We can help improve your competence in your chosen area of interest, based on your learning needs and available hours. This is a great opportunity to improve your capability and confidence in a particular area of expertise. It will be delivered over a secure video conference call by one of our senior trainers. They will work with you to create a tailor-made coaching program that will help you achieve your goals faster. Request for further information post training support and fees applicable Accreditions And Affliations
DevOps training course description This course is an introduction to DevOps. The course emphasizes communication, collaboration , integration, and automation to improve the workflow between developers and IT operations professionals. Improved workflows lead to more opportunities to design software and services in a more agile fashion. This course is a basis for discovering the most important DevOps concepts and to understand the principles and methods behind this. The course will leave you with the inspiration to be the advocate of change. What will you learn Explain DevOps principles. Describe the relationship between Agile , Lean and IT Service Management ( ITSM). Describe methods for automation and technology factors. Describe considerations when changing. Describe challenges, risks and critical success factors. DevOps training course details Who will benefit: IT development, IT operations and IT service management. Prerequisites: Introduction to data communications & networking. Duration 2 days DevOps training course contents Why DevOps? Introduction DevOps Goals DevOps Added value of DevOps Proven Results DevOps for businesses DevOps principles (The Three Ways) DevOps and other frameworks DevOps and Agile DevOps and Lean DevOps and IT Service Management DevOps culture Characteristics of a DevOps culture Organizational Considerations DevOps DevOps stakeholders DevOps roles DevOps teams DevOps organizational structures DevOps methods Continuous Integration Continuous delivery Continuous deployment Value stream mapping Kanban Theory of Constraints Improvement Kata Deming's quality circle ITSM processes DevOps and Automation Methods for DevOps automation Longevity and tools categories DevOps applications Transitioning to a DevOps culture. Implementation Challenges, risks and critical success factors Measuring DevOps successes
Total PHP training course description PHP provides for the creation of dynamic web sites. This hands on training course looks at programming with PHP with an emphasis of building dynamic websites. Forms, state management and database integration are all covered with practicals used throughout the course to reinforce theory sessions. What will you learn Create dynamic web sites using PHP. Write PHP programs. Debug PHP programs. Examine existing code and determine its function. Total PHP training course details Who will benefit: Anyone creating dynamic web sites. Prerequisites: Software development fundamentals Duration 3 days Total PHP training course contents What is PHP? PHP history, dynamic web pages, how PHP works, alternatives to PHP. Downloading and installing PHP. Installing MySQL, installing Apache, platform issues. A first PHP web page A basic PHP script, PHP page structure. PHP comments. Integrating PHP and HTML. PHP forms HTML forms, taking values from forms. PHP and HTML Page inputs, environment inputs. phpinfo(), other form elements, sticky fields, generalised code, tables, forms, form elements, style sheets, JavaScript. Variables operators and expressions Expressions, data types, assignments, scope, constants, HTTP environment variables, getting data from forms using variables. Operators Arithmetic, logical, relational, Boolean, others. Control statements Conditional: if, else, elseif, switch. Loops: while, do while, for, break, continue, exit. Functions Built in functions, declaration, arguments, scope, loading functions from other files, defaulting parameters, call by value/ name. Arrays Indexes, array initialisation, array manipulation, multi dimensional arrays, array functions. String handling What is a string, string functions, matching, extraction, replacement. String operations, cleansing, sprintf, formatting web pages, strops and others, splitting strings, REs. PHP and databases Database structure, Database APIs, MySQL, Creating tables, Editing tables, simple SQL queries using PHP, building HTML tables using SQL queries, SQL injection, security issues, error handling. File I/O Opening, reading, writing files. Permissions, ownership, locking, directories. PHP, cookies and sessions State, Cookie properties, setting cookies, retrieving cookies, expiring/deleting cookies. Sessions, session variables, session IDs. PHP and email Emailing from servers, attachments. Objects OOP, PHP classes, constructors, instances.