Wednesday, June 25, 2014

Why Your Embedded Device needs an Operating System

Overview: This webinar makes the case that, for all but the smallest 8-bit microcontroller-based systems, an operating system of some form makes sense. We begin by defining the problem: how can we most effectively organize the software/firmware of an embedded device to maximize performance within the constraints of the provided hardware? 

We'll examine the polling loop model and analyze its shortcomings. Then we'll look at asynchronous hardware interrupts and see that they are the source of much of the complexity of device-based software. The real-time operating system will be introduced as a way to abstract out the inherent complexity of asynchronous interrupts. We'll then dive into the characteristics and features of operating systems: the tasking model, the scheduler, inter-task communication and synchronization, timing, and of course interrupt handling. We'll consider the problems of sharing resources among multiple tasks. We'll discuss the distinction between an operating system and a kernel. FreeRTOS, a small Open Source kernel, will serve as the model for this entire section.

Next we'll explore design considerations for an OS-based system. How to partition the problem into tasks. We'll look at the idea of dynamic task creation, that is, creating and destroying tasks while the system is running. Solving the resource sharing problem sometimes introduces problems of its own. We'll look at two of these problems, priority inversion and deadly embrace, and assess tech-niques for dealing with them.

Finally, we'll survey some other popular operating systems, both Open Source and pro-prietary, to see where they fit in the grand scheme of things.

Why should you attend: If you're designing and building embedded devices, you really should consider basing the firmware on a real-time operating system (RTOS). Especially in this age of "the Internet of Things", the need for low latency, and in many cases deterministic, response becomes ever more important. Polling loops just can't keep up. The operating system model has a number of advantages. It tends to make systems more modular and reliable. Code breaks down into smaller, more comprehensible units. It scales well. The ultimate result is faster, more efficient software development.

An operating system isn't as mysterious as you might think. It is based on relatively straightforward design principles. It may take some effort to master programming for an OS, but once you do you'll wonder why you wasted time coding polling loops. And operating systems don't always require excessive resources either. Free RTOS, for example, will even run on PIC microcontrollers.

Areas Covered in the Session:

  • Background
    • Nature of Device Programming
    • Polling Loop
    • What is an interrupt
  • Introducing Multi-tasking Operating Systems
    • What is a task?
    • Inter-task Communication and Synchronization
    • Managing Time
    • Handling Interrupts
  • Designing with a Multi-tasking OS
    • Task Partitioning
    • Dynamically Creating Tasks
    • Problems with Solving the Resource Sharing Problem
  • Survey of Multi-tasking Operating Systems
    • Open Source
    • "Kind of" Open Source
    • Commercial/Proprietary

Who Will Benefit:

  • Embedded engineer
  • Software engineer
  • Firmware engineer
  • System architect
  • Engineering Manager

What's New in Windows Server 2012?

Overview: Just like every new operating system, compared to its predecessor Windows Server 2012 includes several enhancements. But this time it's different. Windows Server has so many new features that it will make your head spin. 

This Webinar will focus on some of the exciting new features in Windows Server 2012. If you are a network or server administrator, you will appreciate the new Server Manager Dashboard. From BitLocker to Smart Cards and from DNS to RDP, Windows Server 2012 is loaded with new, exciting features that are "worth the price of admission" as they say.

You can pick any feature like virtualization or Active Directory Domain Services (AD DS) and discover that they include some major overhaul to the way these services worked in the previous edition. While the new Windows 8 lookalike interface may be intimidating to some, after you attend this Webinar you should be very comfortable working with the new interface because, among other things, we will go over the various navigation components of the operating system.

Why should you attend: What do you get when 10,000 engineers work on developing a software product for four years? Windows Server 2012, of course. There are literally hundreds of new features in this exciting version of server operating system. Before you deploy Windows Server 2012 in your environment, take a closer look at the new features presented in this Webinar.

Did you know that the new PowerShell 3.0 in Windows Server 2012 has 2400 new command lets, compared to 200 in Windows Server 2008? And when Hyper-V is enabled, Windows Server 2012 supports 320 logical processors, compared to 64 in Windows Server 2008. The list goes on. Unfortunately, we won't have time to talk about every new feature in this edition but you will learn to appreciate the new features that we will be able to cover in this Webinar.

The biggest changes in Windows Server 2008 are in the hypervisor and virtualization. Some people have predicted Windows Server 2012 to be "VMware killer." Whether that's true or not, only time will tell. However, the excitement around Windows Server 2012 is obvious when you hear the terms such as "VMware killer" and "game-changing." Even the critics have given this edition of Windows Server high marks.

Areas Covered in the Session:

  • The New Windows Server 2012 Interfaces
  • Navigating the Server
  • Sign Out, Shutdown, & Restart
  • Server Manager Dashboard
  • Windows Server 2012 Storage Spaces
  • What are Server Groups?
  • The New File Explorer
  • What's New in Virtualization?
  • What's New in the File System?
  • What's New in RDP?
  • What's New in SMB Support?
  • What's New in Active Directory?
  • What's New in DNS?
  • What's New in BitLocker?
  • What's New in Smart Cards?
  • What's New in Security Auditing?
  • What's New in File Storage?
  • What's New in Task Manager?

Who Will Benefit:

  • Network Administrator
  • Systems Administrator
  • Active Directory Administrator
  • Network Engineer

Real-time Monitoring your Organization Against Threats

Overview: Monitoring traffic is crucial and is often mandatory (e.g.: NERCii). Filtering and blocking malicious traffics is often optional, but I usually suggest IPS to detect and block threats in incoming/outgoing traffics from boundaries of critical perimeters (e.g.: Internet to Intranet, Intranet to critical perimeter gateways), but never in electronic security perimeters (ESP) where blocking valid traffics could lead to various operational disaster scenarios. Real-time monitoring of firewalls and other security sensors is required to rapidly detect and initiate response to cyber incidents. 

Security and Compliance involve by default: exception, justification and compensatory measures. In all organizations, there are situations where it is considered more secured with reason to not apply any changes to a specific system (ex.: a HSM bank system remain usually unchanged, mainframes and Unix systems are other examples, especially in industrial organizations (ex.: in the energy sector, Technical Feasibility Exceptions (TFE) can justify the exemption of running a protective control such as an anti-malware or applying any update like system or firmware update, etc.).

Security Paradigm 

Despite it is usually considered unsecured to keep a system unchanged, as previously explained, it is sometimes the only way to keep it to an acceptable security posture considering the potential impacts of loss, especially when systems are isolated and very critical. In those situations, a justification (e.g.: ticket, derogation, statement of applicability, etc.) must be provided in order to document the reasons and duration of the exception in time.

An organization can be compliant and secure while system are unchanged during a long period of time (e.g.: years) and it is important to understand this reality in large corporations conducting critical activities. Not all systems can remain secured while unchanged, usually systems isolated in restricted networks or not interconnected to a computer network are valid examples.

Why should you attend: All organizations are facing various types of threats. Threats can come from inside, outside your organization or from both. This article focus on monitoring informational resources against all types of threats threatening your critical functions supported by electronic assets such as servers, desktops, switches, routers, firewalls, etc. Organizations are getting more and more interconnected and thinking that the obscurity can be considered as a security control is similar to me to ignoring the new reality of Interconnected Networks and the risk surrounding the Internet.

Areas Covered in the Session:

  • Layer 2 and Layer 3 monitoring
  • Technical difference between internal and external threats
  • Real life example of a man in-the-middle attack on Internal network demonstrated
  • Capture internal traffic with packet sniffer
  • Steal username and password on the network
  • Traffic redirection and routing hijacking on internal network
  • Example of solution to detect and correct ARP table while poisoned on a critical system

Who Will Benefit:

  • Architect
  • System Administrator
  • Threats & Vulnerabilities Director
  • Risk Management Specialists
  • Risk Advisors
  • Auditor
  • Security Specialists

Developing for Google Glass with Xamarin, C# and the Glass Development Kit

Overview: This webinar will explain how to design and implement applications for Google Glass using the Glass Development Kit (GDK) with Xamarin.Android and C#. The GDK is an Android SDK add-on that contains APIs for android specific capabilities. Xamarin.Android is a toolset that allows .NET code in C# to run on Android devices and which provides the power of the C# language and .NET framework while not limiting any device capabilities and significantly greater productivity than native development for Glass. 

The webinar will start with a brief overview of the Glass device to familiarize those who have not used the device, followed with an overview of design principles for services that run on the device to provide user experience. These patterns can feel different to many developers coming from desktop or non-Android environments, so this will familiarize the attendee with how the Glass user expects their experience. We will then dive directly into coding for the device using Xamarin.Android and C# using Visual Studio 2013. I'll demonstrate how to get a basic static card application created and running on the device and which is activated by voice command from the home screen of Glass. To that application we will add menus to demonstrate how to allow the user to navigate in the application.

Next I'll demonstrate how to implement a "Live Card", where content is continuously updated through the operation of background services. This will include demonstrating dynamic update of the display and interaction / touch gesture recognition from the user. I'll then demonstrate how to work with several additional sensors / devices in the Glass, including the Camera and Voice Recognition services. I'll demonstrate how to take pictures with Glass and recognize scanned data, as well as how to integrate free-form voice recognition into your application. The next demonstration will explain how to use positioning and navigation services within your application.

The final demonstration will show how to leverage several capabilities of .NET on Glass, specifically demonstrating the integration of real-time bidirectional web messaging with SignalR into your Glass application and services. This in of itself may singly provide the greatest benefit to creating applications for Glass through the ability to instantly collaborate between Glass users and real-time data sources. At completion of the webinar I intend that the participant will have come away with a broad understanding of how to get started with Glass development, which having given practical demonstration of the main capabilities of the device to provide distinct user experiences. Through these demonstrations and the user of C#/Xamarin.Android, I am confident that the participant will be able to get a significant jumpstart on Glass development, and while at the same time come away with and understanding of how to leverage Xamarin.Android to rapidly create applications on other Android devices.

Why Should you Attend: Google glass represents a radical departure in usability of computing systems. Glass is the first effective wearable computing system that also provides high-quality media integration and network connectivity. But the device is highly misunderstood. Most people do not know what the Glass' capabilities are, or perhaps more importantly are not. And many questions exist. What is the interaction model with the device? What are the applications like? What tools do I use to build applications for glass? How can people/employees use the glass to their benefit, and how do I create applications to enable them?

Google Glass development represents a new model of application development, one where users have an intimate relationship with content that is specialized to their specific experience, which is based upon their immediate context, and with natural interaction patterns to seamless experiences provided by multiple services on the device. The design model for applications on Glass are a radical departure from established practices, forcing designers and coders to think in new patterns for obtaining and presenting information to users.

Glass opens up many new opportunities for those who understand how to utilize and develop for the platform. This seminar will give you this understanding, and will also explain how to leverage your existing investment in using .NET to create these new experiences.

Areas Covered in the Session:

  • Overview of Google Glass
  • Xamarin Development Tools for Android
  • Application Design for Glassware: Timelines with Static and Live Cards
  • Patterns: Periodic Update, Ongoing Tasks and Immersions
  • Creating your first GDK application with a Static Card and Voice Command
  • Implementing a live card with a backing service
  • Application Navigation with Menus
  • Implementing Touch Gestures
  • Voice interaction and recognition
  • Using the camera
  • Displaying web based content and media
  • Utilizing location and navigation services
  • Real-time collaboration with SignalR

Who Will Benefit:

  • CTO
  • CIO
  • IT VP and Development Managers
  • Application / Software Architects
  • Application / Software Developers and Engineers

IT Financial Management: It is Not Just Cost Cutting

Overview: When you talk with most IT Organizations about Financial Management, the discussion quickly turns into one of budgets and cost-cutting. But that is not the way it should be. I have seen an IT Organization receive approval for a $50M increase in the middle of a corporate wide expense reduction. How? Simple, they were able to clearly demonstrate how their IT budget was being spent in support of specific Business Initiatives.

When a new Business Initiative arose that required funding, IT let the Business decide where to cut. Instead IT received additional funds to support the new Business. You will learn the basics on creating a Financial Management system that links IT spending directly to approved Business Initiatives. It will also teach you how to change the discussion from cost-cutting to business functional support.

Why Should you Attend: If you are interested in discovering a better way to negotiate funding with your Business, you should attend this webinar.
  • Does your Business Unit keep giving your work without any additional funding?
  • Are you constantly being asked to report on how you are spending money?
  • Are you unable to obtain funds to maintain your infrastructure at current levels?
  • Are you constantly being asked to cut your budget without any reduction in workload?

Areas Covered in the Session:
  • Create a Financial Management System based on business initiatives
  • Conduct discussions with Business Units based on business requirements and priorities and not just total IT spending.
  • Ensure your Organization understands the necessity of accurately recording and categorizing expenses.
  • To move from just Cost Cutting to true Financial Management.

Who Will Benefit:
  • Directors
  • Senior Managers
  • Program Managers
  • Project Managers

John has spent over three decades in the IT services industry working for industry leaders AT&T, AT&T Solutions and British Telecom. He has led numerous multi-million dollar, multi-year outsourcing and service delivery engagements with dozens of Fortune 500 firms during his career. He has extensive experience and expertise in IT transformation efforts, outsourcing analysis, M&A integrations and service implementations. Prior to his customer-facing work, John spent many years running internal infrastructure operations and serving in senior management roles within AT&T and BT. John is a Managing Partner with The IT Transformation Institute, which is a catalyst for change, transforming the IT industry. Focused on developing leaders and creating sustainable organizations that realize the business value of their technology investments, ITTI provides a set of “transformational tools” designed to change the DNA of IT organizations. Built by practitioners, ITTI’s baselining / feedback tools, on-demand / live workshops and professional development resources give IT leaders what they need to solve today’s problems, break the dysfunctional cycles that cause tomorrow’s, and create Next-Generation IT organizations.

In his role, John works with customers to create the right mix of Seminars, Workshops and Coaching to support their unique needs. He is also responsible for the development of new services to support the ever changing business environment. John serves on the Executive Committee of the NJ SIM Chapter and the Leadership Team of itSMF NJ LIG. He is a regular contributor to CIO Insight Magazine and has been published in IT Business Edge, itSM Solutions and ITSM Portal.

Reference: https://www.eitaglobal.com/control/w_product/~product_id=300133LIVE

SharePoint Best Practices - Webinar By EITAGlobal

Overview: It is easy to use SharePoint but if you don’t follow certain guidelines and best practices you can end up wasting valuable time and resources. This Webinar will teach you the recommended way to work with SharePoint. You will benefit from over a dozen years of SharePoint experience of a Microsoft MVP and consultant to ensure your sites, lists and libraries are properly configured and secured. 

By following the best practices taught in this Webinar, you will be able to ensure that you are using the proper site template that suits your business needs, save time, work faster and smarter, avoid common pitfalls, organize your metadata and content better, enhance security of your data, and speed up the process of searching your content to get a better return on your investment.

Why should you attend: This Webinar is primarily designed for SharePoint Site Owners, Site Administrators, and Power Users but is also helpful for end users who use SharePoint on a regular basis. In this Webinar, a Microsoft Certified Trainer will teach you how to best create and manage SharePoint sites, lists, libraries, which templates to use, when to use a site versus a page, a Web part page versus a wiki page, securing content with proper permissions, when to use a file share instead of a SharePoint library, and a host of other topics.

Because the focus of this Webinar is primarily on the Site Owners and Site Administrators, best practices for installing, configuring, and managing SharePoint Server features and services are not included in this presentation. However, SharePoint Server administrators will benefit from attending this Webinar.

Areas Covered in the Session:

  • Templates
  • Libraries
  • Lists
  • Folders & Files
  • Permissions
  • Columns
  • Document Sets
  • Document IDs
  • Pages
  • Browser Support
  • Social Networking
  • Blogging
  • Search
  • Content Type
  • ……and much more

Who Will Benefit:

  • SharePoint Administrator
  • SharePoint Architect
  • Site Owner
  • Site Administrator
  • Project Manager
  • Power User
  • End User

Setting up a Linux Cross-Development Environment

Overview: This webinar shows you how to set up a Linux-based cross-development environment for doing development work on a typical ARM target board. Live demonstrations com-plement the lecture material to show you exactly how the process works. While the examples presented utilize an ARM processor, the basic concepts are applicable to any architecture. 

We'll begin by reviewing the basic cross-development paradigm and describing a typical toolchain. We'll configure the workstation's network interface to support the Network File System (NFS). We'll also need a simple serial terminal emulator for talking to the target board's boot loader. A typical ARM-based target single board computer (SBC), the Mini2440, will be intro-duced. We'll configure the board's network interface to connect with the workstation when it boots up.

Then, after reviewing the Linux notion of "mounting" file systems, we'll use NFS to mount the target board's root file system. Eclipse will be introduced to illustrate the value of an Integrated Development Envi-ronment (IDE). Eclipse is a popular Open Source project that has been adapted by several commercial tool vendors as the basis for their own IDEs. We'll demonstrate how a network-based target file system, together with Eclipse, speeds up the ed-it/compile/debug cycle.
Having built and tested a simple application program, we'll move on to review several Open Source build systems that aim to simplify the process of setting up a development environment. These packages encompass all of the elements of the environment in-cluding: tool chain, libraries, utilities in the form of BusyBox, Linux kernel, and boot loader.

Want to use Windows? Well, if you must. While it's a little more involved, it is possible to set up a usable Linux development environment in Windows. One of the problems is that Windows doesn't ship with an NFS server. We'll wrap things up then, by taking a look at a Windows-based cross-development platform.

Why should you attend: Any task is accomplished faster, easier and more efficiently with the right set of tools. Thus, when developing embedded devices with Linux, good practice requires that you have a well-structured development environment. While it may be possible to do develop-ment on the target device itself, it's usually not the most efficient or productive environment. The preferred alternative is a cross-development environment on a workstation class PC.

How or where do you get a cross-development environment? You can go to a commercial tool vendor and pay a lot of money. Or you can set one up yourself. The goal of this presentation is to show you that it's not that difficult, especially if you use one of the popular Open Source build systems. Even if your target does not use Linux, a proper Linux-based cross-development envi-ronment is still a good investment in productivity. You can just as easily use other target operating systems or program to the bare metal.

Especially if you're new to embedded development, this webinar will get you started on the right track toward greater productivity and quicker time to market.

Areas Covered in the Session:

  • Cross-development tool chains
  • Configuring the workstation for NFS
  • The target board
  • Mounting the target's root file system over the network
  • Eclipse
  • Open Source build systems
    • Yocto
    • OpenEmbedded
    • Buildroot
    • Linaro
  • What about using Windows?

Who Will Benefit:

  • Embedded engineer
  • Software engineer
  • Firmware engineer
  • System architect
  • Engineering Manager

The Big Deal with Big Data and Predictive Analytics

Overview: While I fully expect each enterprise to add its own flavor to the mix, here's one way to get the big data and predictive analytics conversation started: Big data is a collection of data from traditional and digital sources inside and outside your company that represents a source for ongoing discovery and analysis. 

Some people will constrain big data to digital inputs like web behavior and social network interactions; however most CMOs and CIOs agree that we can't exclude traditional data derived from product transaction information, financial records and interaction channels, such as the call center and point-of-sale. All of that is big data, too, even though the volume of digital data that's now growing at an exponential rate may dwarf it.

Why should you attend: Terabytes, Petabytes, Exabytes. Who can keep track? These strange terms have just begun to enter the business lexicon, but the hype surrounding them has reached a fever pitch. Big data is important because it will transform how we manage our enterprises. Like any new technology, there is a lot of confusion surrounding big data. There are endless debates about what is and isn't big data.

Senior Fellow and Chief Strategist, Melvin Greer provides clarity around big data and predictive analytics and shows how enterprises are transformed by their use. There is a growing divide between organizations' who use data effectively and those who don't. Big data means much more than a change in technology, it represents a structural transformation is how we will manage our enterprises.

Areas Covered in the Session:

  • The Big Deal with Big Data
  • Using predictive analytics to transform business
  • Big Data, Analytics And The Future Of Marketing And Sales
  • Big Data and Predictive Analytics
  • The Cloud and Big Data
  • Big Data Success Stories
  • Strategic Recommendations: What Should I do Now?

Who Will Benefit:

  • Chief Marketing Officers
  • CIO's
  • IT Architects
  • Sales Executives
  • Web Content Developers
  • Bank Executives
  • Venture Capital Analysts
  • Educators

Monday, June 16, 2014

Artificial Intelligence –advanced, yet a long way to go

Artificial Intelligence –advanced, yet a long way to go
This phrase has been around for a few years now. Artificial Intelligence is fairly self-explanatory. In very highly simplified terms, what it means is to equip machines with the intelligence needed to perform tasks on their own, without human intervention. When a machine has Artificial Intelligence, it is capable of carrying out tasks that it would not have, earlier.
Making unintelligent devices intelligent
This is, as we have seen, a rather simplistic definition. In the real world, it is the same as getting a machine that is dumb –really dumb –to do things that we humans would. Why should machines do these jobs? Simple –to reduce the work on humans. So, seen in this perspective; Artificial Intelligence can make life a lot easier. Imagine not having to go to the mall to shop and having someone (or, in this case, something) to do it for you. Or imagine not having to worry about whether you locked your house properly before you left for a tour. Or having a machine that can do the gardening for you so that you laze around. And, best of all: no questions asked! These are the kinds of applications Artificial Intelligence can create for humans.
Very, very long way to go still
But wait a minute. Have we reached a stage where humans will lose control of their destinies? The following should answer this: Machines with Artificial Intelligence can do most of what humans do. But the difference is so great and of such magnitude that even with the highest levels of intelligence a human is capable of filling a machine with; these machines studded with Artificial Intelligence have come just a small distance from where they started.
To relate it to human intelligence, it is akin to see someone evolve from the stage of being incapable of the slightest comprehension to being able to extend a hand for a handshake at the sight of a stranger. We could consider this as a kind of metaphor for the level of development and advancement Artificial Intelligence has made.  This sounds rude and could even appear humiliating to all the scientists who create Artificial Intelligence out of their own intelligence. But then, that is how far Artificial Intelligence has got. This is not to suggest that the optimum level of development has been reached. Far from it. Artificial Intelligence has always had, and continues to have the potential for changing human lives.
References:
http://ai-depot.com/Intro.html

Cloud Computing on Systems

A description of cloud computing
At its barest, cloud computing refers to having one’s data stored and accessing it online rather than on physical means such as premises and offices. So, why did the term “cloud computing” come into existence, and where is the cloud, if everything was in the Net? Simple: here, the term “cloud” refers to the Net. Then, why call the Net a cloud, when it has its own nomenclature? To find the answer to this question, let us go to those innumerable flowcharts and diagrams we used to make at presentations to drive home a point. To relate a set of distant objects to proximate ones, we used to draw the picture of a cloud to show how this cloud used to house all these smaller sets.

One source, many systems
Believe it or not, this is how the concept of using this word came into the world of cloud computing! Yes, this was considered a very relatable object to describe the way many subsets –here, meaning many individual systems –could be grouped together under an umbrella, or what we may call the cloud. This should give an idea of what cloud computing is: it is the collection of data from various systems into one common location. This location is usually away from the office premises.

Is cloud computing for you?
With the advent of cloud computing, do people need to give up the idea of local hard disc storage, or have they already done it? Not really. Many people still consider local hard disc storage far superior to cloud computing, which many see as essentially unsafe, because it stores the data of many other users along with yours. But then, experts and those in the business of cloud computing say they have put in place many safeguards for ensuring that privacy and security are not breached. Those who are convinced by this see it as a means for hassle free, space-saving storage. Others who have concerns over security despite the best assurances can continue to use local storage. It is all a matter of one’s convenience and practicality, and of course, concerns.

References:

What are Embedded Systems?

What are Embedded Systems?
Unlike most other concepts or terms in engineering; Embedded Systems as a term is a little difficult to define. The difficulty is not in getting a grasp of the concept per se, but in getting a perspective on the number of tools and products which use Embedded Systems.

A quick look at the micro and macro elements of a software device should serve as a good starting point for our understanding of Embedded Systems. Whenever you come across a device, have you wondered the nuts and bolts of it –that is, the innumerable parts that go into it? If it is a smartphone that we are thinking about, how many of us lay users have given a thought to the parts that coordinate and synchronize with each other to make the product functional? These could be both the hardware and the software that go into the device. This is what may be summarized as Embedded Systems.

A myriad of applications
Embedded Systems can consist of many applications, what are these?  When talking about Embedded Systems, one could think of anything among these:  alarm systems, answering machines, camcorders,  calculators,  automated teller machines,  cell phones,  copiers,  digital cameras,  fax machines,  home security systems,  scanners,  printers,  portable video games,  personal digital assistants,  microwave ovens,  lighting  systems,  washing machines,  and many parts of automobiles, such as transmission control and cruise control, fuel injection, anti-lock brakes, or active suspension. All these devices use Embedded Systems.
References:
http://searchenterpriselinux.techtarget.com/definition/embedded-system