Duration 3 Days 18 CPD hours This course is intended for This course is ideal for developers, engineers, and others including: Cloud administrators , Cloud solution architects , Customer sales engineers , DevOps engineers , Sales engineers , Systems engineers, Technical solutions architects. Overview After taking this course, you should be able to: Explain business and technical challenges of going to the cloud Understand benefits of an application-centric hybrid cloud multicloud management platform Navigate Cisco CloudCenter Suite architecture Understand Cisco CloudCenter Suite administrative capabilities including cloud management, multi-tenancy, governance, and policy enforcement Describe application lifecycle management and provisioning in cloud Describe how to use Cisco CloudCenter Suite to manage the workloads in multicloud The course, Mulitcloud Automation and Orchestration with Cisco CloudCenter Suite (CLDAO) v1.0 teaches you how to configure simplified orchestration and workflow automation that provides seamless integration within the Cisco© CloudCenter suite. Through lessons and hands-on experiences, you will learn to use the tools of the CloudCenter Suite to streamline business processes, automate tasks, and increase efficiency in business processes. Introducing Cisco CloudCenter Suite Action Orchestrator Cisco CloudCenter Suite Architecture Defining Action Orchestrator User Management and Security Considerations Cisco CloudCenter Suite User Management and Security Defining Cisco CloudCenter Suite Action Orchestrator Adapters Action Orchestrator Adapter Creation Examining Action Orchestrator Integrations and Supported APIs Cisco CloudCenter Suite Action Orchestrator APIs
Duration 1 Days 6 CPD hours This course is intended for This course is intended for both organizations that would like to improve the corporate communications of their employees and individuals, who take the role of Project Managers, Business Analysts, Team Leaders, Scrum Masters, Product Owners, Managers, Employees, and anyone who would like to improve their communications skills both in the personal and professional aspects. Overview Upon successful completion of this course, students will learn: what effective communications are. why they are important. how by improving communications you will be able to improve the overall execution of projects and your results in general. the specifics of online remote teamwork communications. Your employees will be equipped with knowledge of different communication techniques and styles, which will save them time to adapt to the communication style of the interlocutor and allow them to have more effective conversations both with business partners and customers, and with colleagues at work. Also, they will master the art of active listening and thus win more customers and partners. This course can be adapted to the specific needs of your organization. This course represents highly effective training on developing communication skills and teaches students how to ask correct questions and get the most from one discussion. Also, students will learn how to resolve and/or avoid conflict situations. Course Outline What is the process of effective communications? How to ask good questions and reach clear agreements? Why is listening important and how to listen actively? How to give and receive feedback? How to prepare and conduct effective meetings? Each topic includes discussions and exercises.
Duration 1 Days 6 CPD hours This course is intended for This course is intended for those who want to understand and use soft skills to communicate, problem solve, and resolve conflict. Overview Upon successful completion of this course, participants will use soft skills to more effectively interact with people and improve communication skills. In this course, participants will develop a core set of ten soft skills. Getting Started Workshop Objectives Action Plan What are Soft Skills? Definition of Soft Skills Empathy and the Emotional Intelligence Quotient Professionalism Learned vs. Inborn Traits Practical Illustration Communication Ways We Communicate Improving Nonverbal Communication Listening Openness and Honesty Practical Illustration Team Work Identifying Capabilities Get Into Your Role Learn the Whole Process The Power of Flow Practical Illustration Problem Solving Define the Problem Generate Alternative Solutions Evaluate the Plans Implementation and Re-Evaluation Practical Illustration Time Management The Art of Scheduling Prioritizing Managing Distractions The Multitasking Myth Practical Illustration Attitude and Work Ethic What Are You Working For? Caring for Others vs Caring for Self Building Trust Work Is Its Own Reward Practical Illustration Adaptibility/Flexibility Getting Over the Good Old Days Syndrome Changing to Manage Process Changing to Manage People Showing You?re Worth Your Weight in Adaptability Practical Illustration Self Confidence (Owning It) Confident Traits Self-Questionnaire Sure-fire Self-Confidence Building Tactics Build Up Others Practical Illustration Ability to Learn Wow, You Mean I?m Not Perfect? Listen with an Open Mind Analyze and Learn Clear the Air and Don?t Hold Any Grudges Practical Illustration Networking Redefine Need Identifying Others? Interests Reach Out When to Back Off Practical Illustration Wrapping Up Words From the Wise
Duration 5 Days 30 CPD hours This course is intended for This class is designed for experienced BizTalk Server Developers who have at least one year of hands-on experience developing BizTalk Server applications. Overview In this 5-day course, you will learn how to apply best practices and design patterns to build smarter BizTalk Server applications. Furthermore, this course provides extensive coverage of BizTalk Server's extensibility, including such topics as: custom functoids, custom pipeline components, and invoking external .NET methods. This course is designed specifically for experienced BizTalk Server developers and focuses on best practices & pattern-based design while pulling back the curtain on some of BizTalk Server's eccentricities. Review of BizTalk Server Fundamentals The BizTalk Server Architecture Inner Workings of the Messaging Engine Messaging Engine Deep Dive Two-way Messaging Without Orchestrations Designing and Testing Schemas Schema Design Enabling Unit Testing for BizTalk Projects Data Translation and Transformation Custom Data Transformation Creating Custom Pipeline Components Working with Message Interchanges Debatching Message Interchanges Advanced Concepts of WCF Adapters Connecting to External Systems Using WCF LOB Adapters in BizTalk Server Publishing and Consuming WCF and RESTful Services Overview of Service Integration Using WCF Implementing WCF Services Preprocessing Messages with IIS Modules Consuming Services Advanced Orchestration Communication Patterns Orchestration Engine Deep Dive Splitting and Aggregating Messages using Orchestrations Orchestration Communication Bridging the Synchronous/Asynchronous Gap Across Multiple Channels Correlating Messages in Orchestration Instances Building Convoy Orchestrations Handling Orchestration Faults and Exceptions Exception Handling in Orchestrations Implementing Transactions and Compensation Creating Transactional Processes Designing Custom Tracking Models for BizTalk Applications Introduction to Business Activity Monitoring Enabling Business Activity Monitoring Extending BAM Beyond BizTalk Building Declarative Logic Using the Business Rules Engine Concepts of Declarative Logic Fundamentals of BizTalk BRE Integrating Policies with BizTalk Advanced Concepts of the Business Rules Engine Advanced Business Rule Concepts Working with Advanced Facts Integrating Across Business Boundaries Using Parties, Roles, and EDI Port Binding Option Review Role-Based Integration What is EDI? Enabling EDI-Based Messaging
Duration 1 Days 6 CPD hours Overview Understand problems and the creative problem solving processIdentify types of information to gather and key questions to ask in problem solving Identify the importance of defining a problem correctlyIdentify and use four different problem definition toolsWrite concrete problem statementsUse basic brainstorming tools to generate ideas for solutionsEvaluate potential solutions against criteria, including cost/benefit analysis and group votingPerform a final analysis to select a solutionUnderstand the roles that fact and intuition play in selecting a solutionUnderstand the need to refine the shortlist and redefine itUnderstand how to identify the tasks and resources necessary to implement solutionsEvaluate and adapt solutions to reality This workshop will give students an overview of the creative problem solving process, as well as key problem solving tools that they can use every day. Skills such as brainstorming, information gathering, & analyzing data will be covered during class. Getting Started Workshop Objectives The Problem Solving Method What is a Problem? What is Creative Problem Solving? What are the Steps in the Creative Solving Process? Case Study Module Two: Review Questions Information Gathering Understanding Types of Information Identifying Key Questions Methods of Gathering Information Case Study Module Three: Review Questions Problem Definition Defining the Problem Determining Where the Problem Originated Defining the Present State and the Desired State Stating and Restating the Problem Analyzing the Problem Writing the Problem Statement Case Study Module Four: Review Questions Preparing for Brainstorming Identifying Mental Blocks Removing Mental Blocks Stimulating Creativity Case Study Module Five: Review Questions Generating Solutions (I) Identifying Mental Blocks Removing Mental Blocks Stimulating Creativity Case Study Module Five: Review Questions Generating Solutions (II) The Morphological Matrix The Six Thinking Hats The Blink Method Case Study Module Seven: Review Questions Analyzing Solutions Developing Criteria Analyzing Wants and Needs Using Cost/Benefit Analysis Case Study Module Eight: Review Questions Selecting a Solution Doing a Final Analysis Paired Comparison Analysis Analyzing Potential Problems Case Study Module Nine: Review Questions Planning Your Next Steps Identifying Tasks Identifying Resources Implementing, Evaluating, and Adapting Case Study Module Ten: Review Questions Creating a Performance Plan Planning the Follow-Up Meeting Celebrating Successes Identifying Improvements Case Study Module Eleven: Review Questions Wrapping Up Words from the Wise Lessons Learned
Duration 3 Days 18 CPD hours This course is intended for This course is primarily for Developers, Developer Consultants, Help Desk/COE Support, Program/Project Manager, System Administrators, System Architects, and Technology Consultants. Overview Explaining scenarios and processes in SAP NetWeaver process integrationIdentify the technical communications modes and processesExplain business scenarios and the business hierarchy used by SAP In this course, students learn how to explain scenarios & processes in SAP NetWeaver process integration. They learn how to identify the technical communications modes & processes, as well as explain business scenarios & the business hierarchy used by SAP. Integration Basics Explaining Scenarios and Processes in SAP NetWeaver Process Integration Explaining Technical Communication Modes and Processes Explaining Business Scenarios Classical System-to-System Communication Communicating Between Two SAP Systems Communicating Between Two Non-SAP Systems Communicating Using Business Application Programming Interfaces (BAPIs) Communicating Using IDocs Processing IDocs Web Services Processing HTTP Requests Describing Simple Object Access Protocol (SOAP) Basics Analyzing Different Web Services Describing Inside-Out and Outside-In Web Services Explaining Service Oriented Architecture (SOA) Integration Technologies: On-Premise Process Integration (Design Time) Processing Integration Middleware Tools (PI Dual Stack) Installing Dual-Stack or Single-Stack Options Securing Objects Creating PI Objects Explaining Design Objects Modeling PI Scenarios Creating an Integration Scenario Configuring an Integration Scenario Displaying the Configuration Objects in the Integration Directory Integration Technologies: On-Premise Process Integration (Runtime) Connecting SAP NetWeaver PI with Proxies Creating File Adapters Executing Configuration Objects Monitoring Tools Integration Technologies: On-Premise Process Orchestration (PO) Explaining Business Process Management (BPM) Explaining Process Orchestration (PO) Explaining Advanced Adapter Engine Extended (AEX) Explaining Business Rules Management (BRM) Integration Technologies: On Demand Explaining SAP HANA Cloud Integration (HCI) Describing Eclipse-Based Access Using the Web UI to Access HCI SAP NetWeaver Gateway Explaining the SAP NetWeaver Gateway Scenario Explaining the SAP NetWeaver Gateway Development View Accessing an Open Data (OData) Service Additional course details: Nexus Humans BIT100 SAP NetWeaver Integration Technology Overview training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the BIT100 SAP NetWeaver Integration Technology Overview course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Duration 2 Days 12 CPD hours This course is intended for This Introductory-level course is targeted for aspiring web developers who have software development experience or background. The course can also be adjusted for non-developers upon request. Overview This 'skills-focused' course is approximately 50% hands-on, combining expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. Our instructors are highly experienced practitioners who bring years of current 'on-the-job' experience into every classroom. Introduction to HTML5/ CSS3 and Responsive Design Basics is a hands-on basic web development course geared for developers who need to understand what the latest in web technologies and responsive design practices that are central to targeting the entire spectrum of user platforms and browsers. This comprehensive course provides a balanced mixture of theory and practical labs designed to take students through HTML5 and CSS3. Students who attend this course will leave this course armed with the new skills to design, implement, and deploy robust, flexible, and safe web applications. HTML Define HTML and review its history Look at XHTML and its relationship to HTML Identify HTML limitations and improvements HTML5 HTML5 Overview HTML5 Semantic Structure HTML5 Forms HTML5 Media Delivery CSS Learn the basics of CSS Meaning of cascading in CSS Declaring CSS within your HTML page Creating styles in an external CSS file Control how to display and position HTML elements Overriding standard tag behavior Adding new classes Using custom classes in your page CSS3 Overview What is new in CSS3 The Advantages of CSS3 Browser Support for CSS3 CSS3 Advanced Selectors Selecting Using Attributes Selecting Using DOM Structure Complex Selecting using Pseudo-Classes Selecting Using UI Components and State CSS3 Visual Effects Font Options, Opacity, and Color Distributing Content Across Columns Working with Borders and Boxes Working with Vendor Prefixes Functional Techniques HTML5 JavaScript API Cross-Domain Messaging Working with Web Storage Offline with Application Cache Geolocation: What, Why, and How Responsive Web Design (RWD) Adapting to Varying Screen Sizes Scaling Page and Text Content Scaling and Adapting for Media Options for Adjusting Media Additional course details: Nexus Humans Web Essentials | Introduction to HTML5, CSS3 and Responsive Design (TT4002) training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the Web Essentials | Introduction to HTML5, CSS3 and Responsive Design (TT4002) course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
Duration 5 Days 30 CPD hours This course is intended for Students who need to know how to implement and manage Cisco ASA 5500-X. Overview Upon successful completion of this course, students should be able to do the following:? Technology and features of the Cisco ASA? Cisco ASA product family? How ASAs protect network devices from attacks? Bootstrap the security appliance? Prepare the security appliance for configuration via the Cisco Adaptive Security Device Manager (ASDM)? Launch and navigate ASDM? Essential security appliance configuration using ASDM and the command-line interface (CLI)? Configure dynamic and static address translations? Configure access policy based on ACLs? Use object groups to simplify ACL complexity and maintenance? Use the Modular Policy Framework to provide unique policies to specific data flows? Handle advanced protocols with application inspection? Troubleshoot with syslog and tcp ping? Configure the ASA to work with Cisco Secure ACS 5.2 for RADIUS-based AAA of VPNs? Implement site-to-site IPsec VPN? Implement remote access IPsec and SSL VPNs using the Cisco AnyConnect 3.0 Secure Mobility Client? Work with the 5.x Legacy Cisco IPsec VPN client and Anyconnect VPN client? Deploy clientless SSL VPN access, including smart tunnels, plug-ins, and web-type ACLs? Configure access control policies to implement your security policy across all classes of VPN? Configure Active/Standby failover for both firewall and VPN high availability Student will gain the essential skills required to configure, maintain, and operate Cisco ASA 5500-X Series Adaptive Security Appliances based on ASA Software v9.x. Cisco ASA Essentials ? Lesson 1: Evaluating Cisco ASA Technologies ? Lesson 2: Identifying Cisco ASA Families Basic Connectivity and Device Management ? Lesson 1: Preparing the Cisco ASA for Network Integration ? Lesson 2: Managing Basic Cisco ASA Network Settings ? Lesson 3: Configuring Cisco ASA Device Management Features Network Integration ? Lesson 1: Configuring Cisco ASA NAT Features ? Lesson 2: Configuring Cisco ASA Basic Access Control Features Cisco ASA Policy Control ? Lesson 1: Cisco ASA Modular Policy Framework ? Lesson 2: Configuring Cisco ASA Connection Policy Cisco ASA VPN Architecture and Common Components ? Lesson 1: Implementing Profiles, Group Policies, and User Policies ? Lesson 2: Implementing PKI Services Cisco ASA Clientless Remote Access SSL VPN Solutions ? Lesson 1: Deploying Basic Clientless VPN Solutions ? Lesson 2: Deploying Advanced Application Access for Clientless SSL VPNs Cisco AnyConnect Remote Access SSL Solutions ? Lesson 1: Deploying a Basic Cisco AnyConnect Full-Tunnel SSL VPN Solution Cisco ASA Remote Access IPsec VPNs ? Lesson 1: Deploying Cisco Remote Access VPN Clients ? Lesson 2: Deploying Basic Cisco Remote Access IPsec VPN Solutions Cisco ASA Site-to-Site IPsec VPN Solutions ? Lesson 1: Deploying Basic Site-to-Site IPsec VPNs ? Lesson 2: Deploying Advanced Site-to-Site IPsec VPNs Cisco ASA High Availability and Virtualization ? Lesson 1: Configuring Cisco ASA Active/Standby High Availability Labs Lab 1: Prepare the ASA for Administration Lab 2: Fundamental ASA Configuration Lab 3: Network Address Translation (NAT) Lab 4: Basic Access Control Lab 5: Basic Protocol Inspection Lab 6: Licensing, ACS, and Public CA Lab 7: Basic Clientless SSL VPN Lab 8: Clientless SSL VPN - Thin Apps Lab 9: Basic AnyConnect Full Tunnel SSL VPN Lab 10: Remote Access IPSec VPN Lab 11: IPSec Site-to-Site VPN Lab 12: Active/Standby Failover
Duration 3 Days 18 CPD hours This course is intended for This course is geared for attendees with Intermediate IT skills who wish to learn Computer Vision with tensor flow 2 Overview This 'skills-centric' course is about 50% hands-on lab and 50% lecture, with extensive practical exercises designed to reinforce fundamental skills, concepts and best practices taught throughout the course. Working in a hands-on learning environment, led by our Computer Vision expert instructor, students will learn about and explore how to Build, train, and serve your own deep neural networks with TensorFlow 2 and Keras Apply modern solutions to a wide range of applications such as object detection and video analysis Run your models on mobile devices and web pages and improve their performance. Create your own neural networks from scratch Classify images with modern architectures including Inception and ResNet Detect and segment objects in images with YOLO, Mask R-CNN, and U-Net Tackle problems faced when developing self-driving cars and facial emotion recognition systems Boost your application's performance with transfer learning, GANs, and domain adaptation Use recurrent neural networks (RNNs) for video analysis Optimize and deploy your networks on mobile devices and in the browser Computer vision solutions are becoming increasingly common, making their way into fields such as health, automobile, social media, and robotics. Hands-On Computervision with TensorFlow 2 is a hands-on course that thoroughly explores TensorFlow 2, the brandnew version of Google's open source framework for machine learning. You will understand how to benefit from using convolutional neural networks (CNNs) for visual tasks. This course begins with the fundamentals of computer vision and deep learning, teaching you how to build a neural network from scratch. You will discover the features that have made TensorFlow the most widely used AI library, along with its intuitive Keras interface. You'll then move on to building, training, and deploying CNNs efficiently. Complete with concrete code examples, the course demonstrates how to classify images with modern solutions, such as Inception and ResNet, and extract specific content using You Only Look Once (YOLO), Mask R-CNN, and U-Net. You will also build generative dversarial networks (GANs) and variational autoencoders (VAEs) to create and edit images, and long short-term memory networks (LSTMs) to analyze videos. In the process, you will acquire advanced insights into transfer learning, data augmentation, domain adaptation, and mobile and web deployment, among other key concepts Computer Vision and Neural Networks Computer Vision and Neural Networks Technical requirements Computer vision in the wild A brief history of computer vision Getting started with neural networks TensorFlow Basics and Training a Model TensorFlow Basics and Training a Model Technical requirements Getting started with TensorFlow 2 and Keras TensorFlow 2 and Keras in detail The TensorFlow ecosystem Modern Neural Networks Modern Neural Networks Technical requirements Discovering convolutional neural networks Refining the training process Influential Classification Tools Influential Classification Tools Technical requirements Understanding advanced CNN architectures Leveraging transfer learning Object Detection Models Object Detection Models Technical requirements Introducing object detection A fast object detection algorithm YOLO Faster R-CNN ? a powerful object detection model Enhancing and Segmenting Images Enhancing and Segmenting Images Technical requirements Transforming images with encoders-decoders Understanding semantic segmentation Training on Complex and Scarce Datasets Training on Complex and Scarce Datasets Technical requirements Efficient data serving How to deal with data scarcity Video and Recurrent Neural Networks Video and Recurrent Neural Networks Technical requirements Introducing RNNs Classifying videos Optimizing Models and Deploying on Mobile Devices Optimizing Models and Deploying on Mobile Devices Technical requirements Optimizing computational and disk footprints On-device machine learning Example app ? recognizing facial expressions
Duration 4 Days 24 CPD hours This course is intended for This course is geared for attendees with Intermediate IT skills who wish to learn Computer Vision with tensor flow 2 Overview This 'skills-centric' course is about 50% hands-on lab and 50% lecture, with extensive practical exercises designed to reinforce fundamental skills, concepts and best practices taught throughout the course. Working in a hands-on learning environment, led by our Computer Vision expert instructor, students will learn about and explore how to Build, train, and serve your own deep neural networks with TensorFlow 2 and Keras Apply modern solutions to a wide range of applications such as object detection and video analysis Run your models on mobile devices and web pages and improve their performance. Create your own neural networks from scratch Classify images with modern architectures including Inception and ResNet Detect and segment objects in images with YOLO, Mask R-CNN, and U-Net Tackle problems faced when developing self-driving cars and facial emotion recognition systems Boost your application's performance with transfer learning, GANs, and domain adaptation Use recurrent neural networks (RNNs) for video analysis Optimize and deploy your networks on mobile devices and in the browser Computer vision solutions are becoming increasingly common, making their way into fields such as health, automobile, social media, and robotics. Hands-On Computervision with TensorFlow 2 is a hands-on course that thoroughly explores TensorFlow 2, the brand-new version of Google's open source framework for machine learning. You will understand how to benefit from using convolutional neural networks (CNNs) for visual tasks. This course begins with the fundamentals of computer vision and deep learning, teaching you how to build a neural network from scratch. You will discover the features that have made TensorFlow the most widely used AI library, along with its intuitive Keras interface. You'll then move on to building, training, and deploying CNNs efficiently. Complete with concrete code examples, the course demonstrates how to classify images with modern solutions, such as Inception and ResNet, and extract specific content using You Only Look Once (YOLO), Mask R-CNN, and U-Net. You will also build generative adversarial networks (GANs) and variational autoencoders (VAEs) to create and edit images, and long short-term memory networks (LSTMs) to analyze videos. In the process, you will acquire advanced insights into transfer learning, data augmentation, domain adaptation, and mobile and web deployment, among other key concepts. Computer Vision and Neural Networks Computer Vision and Neural Networks Technical requirements Computer vision in the wild A brief history of computer vision Getting started with neural networks TensorFlow Basics and Training a Model TensorFlow Basics and Training a Model Technical requirements Getting started with TensorFlow 2 and Keras TensorFlow 2 and Keras in detail The TensorFlow ecosystem Modern Neural Networks Modern Neural Networks Technical requirements Discovering convolutional neural networks Refining the training process Influential Classification Tools Influential Classification Tools Technical requirements Understanding advanced CNN architectures Leveraging transfer learning Object Detection Models Object Detection Models Technical requirements Introducing object detection A fast object detection algorithm ? YOLO Faster R-CNN ? a powerful object detection model Enhancing and Segmenting Images Enhancing and Segmenting Images Technical requirements Transforming images with encoders-decoders Understanding semantic segmentation Training on Complex and Scarce Datasets Training on Complex and Scarce Datasets Technical requirements Efficient data serving How to deal with data scarcity Video and Recurrent Neural Networks Video and Recurrent Neural Networks Technical requirements Introducing RNNs Classifying videos Optimizing Models and Deploying on Mobile Devices Optimizing Models and Deploying on Mobile Devices Technical requirements Optimizing computational and disk footprints On-device machine learning Example app ? recognizing facial expressions