(CMP406) Amazon ECS at Coursera: A general-purpose microserviceAmazon Web Services
"Coursera has helped millions of students learn computer science through MOOCs ranging from Introduction to Python, to state-of-the-art Functional-Reactive Programming in Scala. Our interactive educational experience relies upon an automated grading platform for programming assignments. But, because anyone can sign up for a course on Coursera for free, our systems must defend against arbitrary code execution.
Come learn how Coursera uses AWS services such as Amazon EC2 Container Service (ECS), and Amazon Virtual Private Cloud (VPC) to power a defense-in-depth strategy to secure our infrastructure against bad actors. We have modified the Amazon ECS Agent to support security layers including kernel privilege de-escalation, and enabling mandatory access control systems. Additionally, we post-process uploaded grading container images to defang binaries.
At the core of automated grading is a general-purpose near-line & batch scheduling and execution microservice built on top of the Amazon ECS APIs. We use this flexible system to power a variety of internal services across the company including data exports for instructors, course announcement emails, data reconciliation jobs, and more.
In this session, we detail aspects of our success from implementing Docker and Amazon ECS in production, providing ideas for your own scheduling, execution and hardening requirements."
Write less (code) and build more with serverlessDhaval Nagar
Presented the Serverless Use case at the Charotar University of Science and Technology.
CHARUSAT has a very active AWS Student Community.
https://aws.amazon.com/blogs/training-and-certification/aws-academys-big-bet-on-higher-education/
The document provides an overview of setting up and managing infrastructure on Amazon ECS. It discusses setting up ECS clusters with CloudFormation templates and AWS OpsWorks, setting up container image repositories with ECR, monitoring clusters with CloudWatch, auto-scaling clusters with Auto Scaling, and service discovery options like Route 53 and Consul. It also covers security configurations, PaaS options like Elastic Beanstalk and Convox, and Remind Empire for deploying Docker images to ECS.
Microservice Architecture on AWS using AWS Lambda and Docker ContainersDanilo Poccia
This document summarizes microservice architecture on AWS using AWS Lambda and Docker containers. It discusses why organizations adopt microservices and how to design smaller loosely coupled services. It then covers how to use AWS services like EC2 Container Service, Lambda, ECS, and others to build and deploy microservices. Specific topics covered include distributed systems, security, testing, monitoring, discovery, deployment pipelines and more. Examples of Netflix and Hailo architectures on AWS are also mentioned.
Developing and deploying serverless applications (February 2017)Julien SIMON
- The document discusses developments and tools for serverless applications on AWS Lambda. It begins with an overview of new Lambda features like environment variables and Step Functions for orchestrating Lambda functions.
- Several serverless frameworks are demonstrated, including the Serverless Framework, Gordon, and Chalice, which simplify developing and deploying Lambda functions and event sources.
- The AWS Serverless Application Model (SAM) is presented as a way to bundle Lambda functions, APIs, and events using CloudFormation for simplified deployment. Additional resources on Lambda are also listed.
This document discusses continuous delivery/deployment strategies on AWS using various services. It begins with an introduction to continuous integration and continuous delivery/deployment. It then covers CD strategies such as blue-green deployments and red-black deployments. The rest of the document discusses various AWS services that can be used for application management like Elastic Beanstalk, OpsWorks, CloudFormation, and EC2 Container Service. It also covers services for application lifecycle management including CodeCommit, CodePipeline, and CodeDeploy.
Microservices on AWS using AWS Lambda and Docker ContainersDanilo Poccia
Using AWS Lambda and Docker Containers to build a Microservice Architecture on Amazon Web Services.
From the AWS User Group Hungary meeting in Budapest on Friday March 20th, 2015.
Slides for a short presentation I gave on AWS Lambda, which "lets you run code without provisioning or managing servers". Lambda is to running code as Amazon S3 is to storing objects.
(CMP406) Amazon ECS at Coursera: A general-purpose microserviceAmazon Web Services
"Coursera has helped millions of students learn computer science through MOOCs ranging from Introduction to Python, to state-of-the-art Functional-Reactive Programming in Scala. Our interactive educational experience relies upon an automated grading platform for programming assignments. But, because anyone can sign up for a course on Coursera for free, our systems must defend against arbitrary code execution.
Come learn how Coursera uses AWS services such as Amazon EC2 Container Service (ECS), and Amazon Virtual Private Cloud (VPC) to power a defense-in-depth strategy to secure our infrastructure against bad actors. We have modified the Amazon ECS Agent to support security layers including kernel privilege de-escalation, and enabling mandatory access control systems. Additionally, we post-process uploaded grading container images to defang binaries.
At the core of automated grading is a general-purpose near-line & batch scheduling and execution microservice built on top of the Amazon ECS APIs. We use this flexible system to power a variety of internal services across the company including data exports for instructors, course announcement emails, data reconciliation jobs, and more.
In this session, we detail aspects of our success from implementing Docker and Amazon ECS in production, providing ideas for your own scheduling, execution and hardening requirements."
Write less (code) and build more with serverlessDhaval Nagar
Presented the Serverless Use case at the Charotar University of Science and Technology.
CHARUSAT has a very active AWS Student Community.
https://aws.amazon.com/blogs/training-and-certification/aws-academys-big-bet-on-higher-education/
The document provides an overview of setting up and managing infrastructure on Amazon ECS. It discusses setting up ECS clusters with CloudFormation templates and AWS OpsWorks, setting up container image repositories with ECR, monitoring clusters with CloudWatch, auto-scaling clusters with Auto Scaling, and service discovery options like Route 53 and Consul. It also covers security configurations, PaaS options like Elastic Beanstalk and Convox, and Remind Empire for deploying Docker images to ECS.
Microservice Architecture on AWS using AWS Lambda and Docker ContainersDanilo Poccia
This document summarizes microservice architecture on AWS using AWS Lambda and Docker containers. It discusses why organizations adopt microservices and how to design smaller loosely coupled services. It then covers how to use AWS services like EC2 Container Service, Lambda, ECS, and others to build and deploy microservices. Specific topics covered include distributed systems, security, testing, monitoring, discovery, deployment pipelines and more. Examples of Netflix and Hailo architectures on AWS are also mentioned.
Developing and deploying serverless applications (February 2017)Julien SIMON
- The document discusses developments and tools for serverless applications on AWS Lambda. It begins with an overview of new Lambda features like environment variables and Step Functions for orchestrating Lambda functions.
- Several serverless frameworks are demonstrated, including the Serverless Framework, Gordon, and Chalice, which simplify developing and deploying Lambda functions and event sources.
- The AWS Serverless Application Model (SAM) is presented as a way to bundle Lambda functions, APIs, and events using CloudFormation for simplified deployment. Additional resources on Lambda are also listed.
This document discusses continuous delivery/deployment strategies on AWS using various services. It begins with an introduction to continuous integration and continuous delivery/deployment. It then covers CD strategies such as blue-green deployments and red-black deployments. The rest of the document discusses various AWS services that can be used for application management like Elastic Beanstalk, OpsWorks, CloudFormation, and EC2 Container Service. It also covers services for application lifecycle management including CodeCommit, CodePipeline, and CodeDeploy.
Microservices on AWS using AWS Lambda and Docker ContainersDanilo Poccia
Using AWS Lambda and Docker Containers to build a Microservice Architecture on Amazon Web Services.
From the AWS User Group Hungary meeting in Budapest on Friday March 20th, 2015.
Slides for a short presentation I gave on AWS Lambda, which "lets you run code without provisioning or managing servers". Lambda is to running code as Amazon S3 is to storing objects.
This document discusses developer tools at AWS, focusing on AWS Code services and DevOps practices. It provides an overview of DevOps concepts like continuous integration, delivery, and deployment. It then details AWS's own DevOps transformation from 2001-2009 in moving to microservices and automated pipelines. The AWS Code portfolio is introduced, including CodeCommit, CodeBuild, CodeDeploy, CodePipeline and CodeStar. Each service is briefly described in terms of its purpose and how it fits into a continuous delivery workflow.
AWS CodeStar enables developers to quickly develop, build, and deploy applications on AWS. It provides a unified user interface to manage software development activities and allows teams to collaborate securely. CodeStar projects include an integrated issue tracking dashboard powered by Atlassian JIRA to monitor application progress.
Amazon Elastic Compute Cloud (EC2) and Virtual Private Cloud (VPC) forms the backbone compute and networking platform. This webinar will show the rich range of capabilities and key functions for Elastic Compute Cloud (EC2) and Virtual Private Cloud (VPC). With this knowledge you will be able to make informed choices during the design and deployment of your cloud resources for Compute and Networking services.
Reasons to attend:
Understand how to use Amazon EC2 beyond a simple single instance use case including bootstrap & AMIs.
Learn how to create Auto Scaling configurations and the tools you need to drive Auto Scaling policies.
Learn how to use Amazon CloudWatch alarms to trigger actions with Auto Scaling.
This document discusses building a serverless data pipeline using AWS Lambda and other AWS managed services. It provides a 12 step process to create a serverless architecture that collects event data via API calls, stores it in DynamoDB, processes it with Lambda, sends it to Kinesis and Kinesis Firehose, and archives it in S3. This allows building scalable and cost-effective data pipelines and applications without having to manage any servers.
Continuous Delivery with AWS Lambda - AWS April 2016 Webinar SeriesAmazon Web Services
Managing the deployment of code to multiple AWS Lambda functions and updating your API Gateway methods can be manual and time consuming.
In this webinar, we will show you how to build a deployment pipeline to AWS Lambda using AWS CodePipeline. We will discuss how to use versioning, allowing you to better manage the different variations of your Lambda function and API Gateway methods in your development workflow, such as development, staging, and production. We will walk through how to automate the entire release process of your application from development to staging and finally to production, performing automated integration tests at each stage.
Learning Objectives:
Understand the basics of AWS CodePipeline
Learn how to version AWS Lambda functions and API Gateway methods
Build a deployment pipeline to AWS Lambda
(DVO305) Turbocharge YContinuous Deployment Pipeline with ContainersAmazon Web Services
This document outlines best practices for using containers in a continuous delivery pipeline. It recommends using containers with tools like Docker, Docker Compose, Amazon ECS, Jenkins, and AWS CodePipeline to build, test, and deploy applications. The workflow involves developing code in a source code repository, building Docker images, running tests inside containers, and deploying containers to production using Amazon ECS and AWS services for automation and orchestration of the pipeline. Demo applications and architectures are presented to illustrate container-based continuous delivery.
(DEV302) Hosting ASP.Net 5 Apps in AWS with Docker & AWS CodeDeployAmazon Web Services
The .NET Platform is undergoing a revolution with a new modularized .NET Framework and CoreCLR, a new cross platform runtime. ASP.NET 5 gives .NET developers the ability to develop and run their applications outside of Windows. In this session we will explore how to develop and deploy ASP.NET 5 applications on Windows with AWS CodeDeploy and Linux with Docker. For Docker we will explore using Docker with both Elastic Beanstalk and EC2 Container Service.
Grow and Retain Users with Analytics and Push NotificationsAmazon Web Services
In this session, we will discuss how to measure and track users' actions in your app against key metrics and trends such as new vs. returning users, app revenue, user retention, and custom in-app behavior events. We will also show you how to leverage this data to bring them back to your app by sending automatic push notifications, SMS, and emails.
AWS DevDay San Francisco, June 21, 2016.
Presenter: Richard Threlkeld
This document provides an overview and summary of DevOps, microservices, and serverless architecture. It discusses key concepts like DevOps and how it relates to software delivery. Microservices and their rise in popularity for building loosely coupled services. Serverless architecture and how it abstracts away infrastructure management. It also summarizes different AWS services that can be used to build microservices and serverless applications, like ECS, Lambda, API Gateway, and provides examples of architectures using these services.
This document summarizes an AWS User Group Italy meeting presentation about AWS Lambda.
AWS Lambda allows writing code to automatically run in response to events, allowing building applications from small functions that are triggered by changes to data in AWS services. It provides an easy way to run code without having to manage infrastructure. Lambda functions can be triggered by events in services like S3, DynamoDB, and Kinesis. With Lambda, the focus is on writing business logic rather than managing servers. Lambda automatically scales as needed to handle event loads, and customers pay only for the compute time used rather than having to pay for unused capacity. A preview of Lambda is open for people to try it out with support for S3, Kinesis and Dynam
AWS Lambda and Serverless framework: lessons learned while building a serverl...Luciano Mammino
The document discusses lessons learned from building a serverless company. It introduces Planet 9 Energy and their use of AWS Lambda and the Serverless framework. Key topics covered include security, quality assurance, developer experience, costs, and lessons learned. Some challenges discussed are debugging, API Gateway custom domains, and Lambda limitations. The document emphasizes that serverless architectures provide infinite scalability at low cost but also have some limitations that require management.
(DVO308) Docker & ECS in Production: How We Migrated Our Infrastructure from ...Amazon Web Services
This session will introduce you to Empire, a new self-hosted PaaS built on top of Amazon’s EC2 Container Service (ECS). Empire is a recently open-sourced project that provides a mostly Heroku-compatible API. It allows engineering teams to deploy and manage applications in a method similar to Heroku, but with the added flexibility and control of running your own ECS container instances. We'll talk about why Remind decided to move its infrastructure from Heroku to AWS, introduce you to ECS and the open source platform we built on top of it to make migration easier, and then we'll demo Empire to show you how you can try it today.
You have some on-premise application. Perheaps you have Wordpress/PHP or Node.js/Javascript, you like them, but you don't want to handle, some ops issues, like managing FastCGI (for PHP) or Node service.
Why don't you publish them on Azure?
Web Sites already support PHP and Node. And you can store MySql DB on ClearDb as DBaaS.
And then you can scale out your app bringing your session out the server with Redis.
And, again, you can do some worker jobs with Azure Web Jobs.
And undestand how can you use Kudu features to debug and work better with websites.
Designing the foundations of an iOS application is important to reduce the cost of maintenance and evolution. In this session we will see some best practices on how to organize iOS apps both from the point of view of the Xcode project and the source code. Based on the typical iOS client/server application, we will see how to structure the layers ranging from the user interface to the netwrok layer.
Continuous Deployment with Amazon Web ServicesJulien SIMON
This document summarizes a webinar about continuous deployment with Amazon Web Services. It defines concepts like continuous integration, continuous delivery, and DevOps. It then demonstrates how to set up continuous integration/continuous delivery pipelines on AWS using services like CodeCommit, CodeBuild, CodeDeploy, and CodePipeline. The pipelines shown include building and deploying a C library and a Java web application. Potential issues that may occur with deployments are also discussed.
Aws Lambda Cart Microservice Server LessDhanu Gupta
This document describes an AWS serverless architecture for a cart microservice using AWS Lambda, API Gateway, and DynamoDB. It includes components like API Gateway for the REST API frontend, Lambda functions to run the application code, and DynamoDB for the database. It provides instructions on setting up the resources, mapping the API to Lambda, and deploying the API for testing. The goal is to build a serverless REST API for basic cart operations like read, create, delete that avoids managing servers and scales automatically.
AWS is an elastic, secure, flexible, and developer-centric ecosystem that serves as an ideal platform for Docker deployments. AWS offers the scalable infrastructure, APIs, and SDKs that integrate tightly into a development lifecycle and accentuate the benefits of the lightweight and portable containers that Docker offers to its users. This session will familiarize you with the benefits of containers, introduce Amazon EC2 Container Service (ECS), and demonstrate how to use Amazon ECS for your applications.
AWS DevDay San Francisco, June 21, 2016.
Presenter: Asha Chakrabarty, Senior Solutions Architect
The document summarizes James Beswick's presentation on AWS re:Invent 2020 recaps for the ServerlessToronto meetup group. It highlights several new features from re:Invent including Lambda extensions and container image support, larger Lambda functions with more memory and CPUs, and other service releases. It also lists some on-demand sessions from re:Invent on serverless topics. Beswick thanks the attendees and invites them to join the ServerlessToronto community.
(DVO306) AWS CodeDeploy: Automating Your Software DeploymentsAmazon Web Services
So you’ve written some code. Now what? How do you make it available to your customers in an efficient and reliable manner? Learn how you can use AWS CodeDeploy to easily and quickly push your application updates. This talk will introduce you to the basics of CodeDeploy: key concepts, how it works, where it fits in your release process, and some deployment strategies to get you started on the right foot. We’ll walk through several demos, going from a basic sample deployment to a live update of a large multi-instance fleet, giving you a sense for how CodeDeploy can grow with your needs.
This document provides an introduction to developing native iOS apps using C# with Xamarin. It discusses:
- Using Xamarin to access the full iOS APIs from C# in Visual Studio.
- The components of a Xamarin iOS app, including the Main, AppDelegate, views and view controllers.
- Implementing navigation between views using storyboards and segues.
- Managing lists and tables using classes like UITableView, UITableViewCell, and UITableViewSource.
Apache Cordova is an open-source framework that allows developers to use standard web technologies like HTML, CSS, and JavaScript to build applications that can be deployed across various mobile and desktop platforms. It works by packaging the application's code and assets into a wrapper application that loads the content into a webview. Plugins can be added to access device capabilities. The Cordova CLI provides commands for creating, building, and running Cordova projects across platforms in a consistent way. Frameworks like Angular and UI frameworks like Ionic can be used to organize larger Cordova applications.
This document discusses developer tools at AWS, focusing on AWS Code services and DevOps practices. It provides an overview of DevOps concepts like continuous integration, delivery, and deployment. It then details AWS's own DevOps transformation from 2001-2009 in moving to microservices and automated pipelines. The AWS Code portfolio is introduced, including CodeCommit, CodeBuild, CodeDeploy, CodePipeline and CodeStar. Each service is briefly described in terms of its purpose and how it fits into a continuous delivery workflow.
AWS CodeStar enables developers to quickly develop, build, and deploy applications on AWS. It provides a unified user interface to manage software development activities and allows teams to collaborate securely. CodeStar projects include an integrated issue tracking dashboard powered by Atlassian JIRA to monitor application progress.
Amazon Elastic Compute Cloud (EC2) and Virtual Private Cloud (VPC) forms the backbone compute and networking platform. This webinar will show the rich range of capabilities and key functions for Elastic Compute Cloud (EC2) and Virtual Private Cloud (VPC). With this knowledge you will be able to make informed choices during the design and deployment of your cloud resources for Compute and Networking services.
Reasons to attend:
Understand how to use Amazon EC2 beyond a simple single instance use case including bootstrap & AMIs.
Learn how to create Auto Scaling configurations and the tools you need to drive Auto Scaling policies.
Learn how to use Amazon CloudWatch alarms to trigger actions with Auto Scaling.
This document discusses building a serverless data pipeline using AWS Lambda and other AWS managed services. It provides a 12 step process to create a serverless architecture that collects event data via API calls, stores it in DynamoDB, processes it with Lambda, sends it to Kinesis and Kinesis Firehose, and archives it in S3. This allows building scalable and cost-effective data pipelines and applications without having to manage any servers.
Continuous Delivery with AWS Lambda - AWS April 2016 Webinar SeriesAmazon Web Services
Managing the deployment of code to multiple AWS Lambda functions and updating your API Gateway methods can be manual and time consuming.
In this webinar, we will show you how to build a deployment pipeline to AWS Lambda using AWS CodePipeline. We will discuss how to use versioning, allowing you to better manage the different variations of your Lambda function and API Gateway methods in your development workflow, such as development, staging, and production. We will walk through how to automate the entire release process of your application from development to staging and finally to production, performing automated integration tests at each stage.
Learning Objectives:
Understand the basics of AWS CodePipeline
Learn how to version AWS Lambda functions and API Gateway methods
Build a deployment pipeline to AWS Lambda
(DVO305) Turbocharge YContinuous Deployment Pipeline with ContainersAmazon Web Services
This document outlines best practices for using containers in a continuous delivery pipeline. It recommends using containers with tools like Docker, Docker Compose, Amazon ECS, Jenkins, and AWS CodePipeline to build, test, and deploy applications. The workflow involves developing code in a source code repository, building Docker images, running tests inside containers, and deploying containers to production using Amazon ECS and AWS services for automation and orchestration of the pipeline. Demo applications and architectures are presented to illustrate container-based continuous delivery.
(DEV302) Hosting ASP.Net 5 Apps in AWS with Docker & AWS CodeDeployAmazon Web Services
The .NET Platform is undergoing a revolution with a new modularized .NET Framework and CoreCLR, a new cross platform runtime. ASP.NET 5 gives .NET developers the ability to develop and run their applications outside of Windows. In this session we will explore how to develop and deploy ASP.NET 5 applications on Windows with AWS CodeDeploy and Linux with Docker. For Docker we will explore using Docker with both Elastic Beanstalk and EC2 Container Service.
Grow and Retain Users with Analytics and Push NotificationsAmazon Web Services
In this session, we will discuss how to measure and track users' actions in your app against key metrics and trends such as new vs. returning users, app revenue, user retention, and custom in-app behavior events. We will also show you how to leverage this data to bring them back to your app by sending automatic push notifications, SMS, and emails.
AWS DevDay San Francisco, June 21, 2016.
Presenter: Richard Threlkeld
This document provides an overview and summary of DevOps, microservices, and serverless architecture. It discusses key concepts like DevOps and how it relates to software delivery. Microservices and their rise in popularity for building loosely coupled services. Serverless architecture and how it abstracts away infrastructure management. It also summarizes different AWS services that can be used to build microservices and serverless applications, like ECS, Lambda, API Gateway, and provides examples of architectures using these services.
This document summarizes an AWS User Group Italy meeting presentation about AWS Lambda.
AWS Lambda allows writing code to automatically run in response to events, allowing building applications from small functions that are triggered by changes to data in AWS services. It provides an easy way to run code without having to manage infrastructure. Lambda functions can be triggered by events in services like S3, DynamoDB, and Kinesis. With Lambda, the focus is on writing business logic rather than managing servers. Lambda automatically scales as needed to handle event loads, and customers pay only for the compute time used rather than having to pay for unused capacity. A preview of Lambda is open for people to try it out with support for S3, Kinesis and Dynam
AWS Lambda and Serverless framework: lessons learned while building a serverl...Luciano Mammino
The document discusses lessons learned from building a serverless company. It introduces Planet 9 Energy and their use of AWS Lambda and the Serverless framework. Key topics covered include security, quality assurance, developer experience, costs, and lessons learned. Some challenges discussed are debugging, API Gateway custom domains, and Lambda limitations. The document emphasizes that serverless architectures provide infinite scalability at low cost but also have some limitations that require management.
(DVO308) Docker & ECS in Production: How We Migrated Our Infrastructure from ...Amazon Web Services
This session will introduce you to Empire, a new self-hosted PaaS built on top of Amazon’s EC2 Container Service (ECS). Empire is a recently open-sourced project that provides a mostly Heroku-compatible API. It allows engineering teams to deploy and manage applications in a method similar to Heroku, but with the added flexibility and control of running your own ECS container instances. We'll talk about why Remind decided to move its infrastructure from Heroku to AWS, introduce you to ECS and the open source platform we built on top of it to make migration easier, and then we'll demo Empire to show you how you can try it today.
You have some on-premise application. Perheaps you have Wordpress/PHP or Node.js/Javascript, you like them, but you don't want to handle, some ops issues, like managing FastCGI (for PHP) or Node service.
Why don't you publish them on Azure?
Web Sites already support PHP and Node. And you can store MySql DB on ClearDb as DBaaS.
And then you can scale out your app bringing your session out the server with Redis.
And, again, you can do some worker jobs with Azure Web Jobs.
And undestand how can you use Kudu features to debug and work better with websites.
Designing the foundations of an iOS application is important to reduce the cost of maintenance and evolution. In this session we will see some best practices on how to organize iOS apps both from the point of view of the Xcode project and the source code. Based on the typical iOS client/server application, we will see how to structure the layers ranging from the user interface to the netwrok layer.
Continuous Deployment with Amazon Web ServicesJulien SIMON
This document summarizes a webinar about continuous deployment with Amazon Web Services. It defines concepts like continuous integration, continuous delivery, and DevOps. It then demonstrates how to set up continuous integration/continuous delivery pipelines on AWS using services like CodeCommit, CodeBuild, CodeDeploy, and CodePipeline. The pipelines shown include building and deploying a C library and a Java web application. Potential issues that may occur with deployments are also discussed.
Aws Lambda Cart Microservice Server LessDhanu Gupta
This document describes an AWS serverless architecture for a cart microservice using AWS Lambda, API Gateway, and DynamoDB. It includes components like API Gateway for the REST API frontend, Lambda functions to run the application code, and DynamoDB for the database. It provides instructions on setting up the resources, mapping the API to Lambda, and deploying the API for testing. The goal is to build a serverless REST API for basic cart operations like read, create, delete that avoids managing servers and scales automatically.
AWS is an elastic, secure, flexible, and developer-centric ecosystem that serves as an ideal platform for Docker deployments. AWS offers the scalable infrastructure, APIs, and SDKs that integrate tightly into a development lifecycle and accentuate the benefits of the lightweight and portable containers that Docker offers to its users. This session will familiarize you with the benefits of containers, introduce Amazon EC2 Container Service (ECS), and demonstrate how to use Amazon ECS for your applications.
AWS DevDay San Francisco, June 21, 2016.
Presenter: Asha Chakrabarty, Senior Solutions Architect
The document summarizes James Beswick's presentation on AWS re:Invent 2020 recaps for the ServerlessToronto meetup group. It highlights several new features from re:Invent including Lambda extensions and container image support, larger Lambda functions with more memory and CPUs, and other service releases. It also lists some on-demand sessions from re:Invent on serverless topics. Beswick thanks the attendees and invites them to join the ServerlessToronto community.
(DVO306) AWS CodeDeploy: Automating Your Software DeploymentsAmazon Web Services
So you’ve written some code. Now what? How do you make it available to your customers in an efficient and reliable manner? Learn how you can use AWS CodeDeploy to easily and quickly push your application updates. This talk will introduce you to the basics of CodeDeploy: key concepts, how it works, where it fits in your release process, and some deployment strategies to get you started on the right foot. We’ll walk through several demos, going from a basic sample deployment to a live update of a large multi-instance fleet, giving you a sense for how CodeDeploy can grow with your needs.
This document provides an introduction to developing native iOS apps using C# with Xamarin. It discusses:
- Using Xamarin to access the full iOS APIs from C# in Visual Studio.
- The components of a Xamarin iOS app, including the Main, AppDelegate, views and view controllers.
- Implementing navigation between views using storyboards and segues.
- Managing lists and tables using classes like UITableView, UITableViewCell, and UITableViewSource.
Apache Cordova is an open-source framework that allows developers to use standard web technologies like HTML, CSS, and JavaScript to build applications that can be deployed across various mobile and desktop platforms. It works by packaging the application's code and assets into a wrapper application that loads the content into a webview. Plugins can be added to access device capabilities. The Cordova CLI provides commands for creating, building, and running Cordova projects across platforms in a consistent way. Frameworks like Angular and UI frameworks like Ionic can be used to organize larger Cordova applications.
This document summarizes a presentation on developing Windows 8 apps. It provides an overview of Windows 8 app development, including recommended app traits, design principles, and the Windows 8 app architecture. It also covers tools for developing Windows 8 apps like Visual Studio, templates for different app types, and asynchronous programming in Windows Runtime. Key topics include app contracts, live tiles, splash screens, and the new Windows 8 app model.
Demystifying Containerization Principles for Data ScientistsDr Ganesh Iyer
Demystifying Containerization Principles for Data Scientists - An introductory tutorial on how Dockers can be used as a development environment for data science projects
Introduction to Cross Platform Development with Xamarin/ Visual StudioIndyMobileNetDev
The document provides an introduction to cross-platform mobile development using Xamarin/Visual Studio. It discusses the speaker's background in graphics and software development. It then outlines the benefits of using Xamarin for building native iOS and Android apps using C# while sharing code. The document summarizes Xamarin Studio and its support for building apps in Visual Studio. It also highlights code sharing capabilities and pre-built app templates available through Xamarin.
This document provides an overview of Xamarin and its capabilities for building native mobile apps using C# across iOS, Android, and other platforms. It discusses how Xamarin allows sharing up to 90% of code across platforms while retaining native UIs and performance. Example apps are shown from Rdio and MarketWatch that leveraged large amounts of shared C# code using Xamarin to build their mobile experiences.
Docker Orchestration: Welcome to the Jungle! Devoxx & Docker Meetup Tour Nov ...Patrick Chanezon
In two years, Docker hit the sweet spot for devs and ops, with tools for building, shipping, and running distributed apps architected as a set of collaborating microservices packaged as Linux containers. One area of the Docker ecosystem that saw a lot of innovation in the past year is container orchestration systems. This session compares and contrasts various Docker orchestration systems (Swarm, Machine, and Compose), the batteries included with Docker itself, Mesos, Kubernetes, CoreOS/Fleet, Deis, Cloud Foundry, and Tutum. It includes a demo of how to deploy a Java 8 app with MongoDB on several of these systems. The goal of the session is to give you a framework to help evaluate how these systems can meet your particular requirements.
Demo code at https://github.com/chanezon/docker-tips/blob/master/orchestration-networking/README.md
Microservices and containers for the unitiatedKevin Lee
In this presentation I provide a high level explanation of why applications are now being developed using in a Microservice architecture. I look at how Microservice applications are typically developed and deployed using container technology and look at some of the challenges of using container technology for applications in production.
1. Habitat consists of several components including Habitat Studio for packaging applications, Habitat Plans for instructions to install applications, and Habitat Depot for uploading and downloading application packages.
2. The packaging process starts with creating a Plan which defines how to build an application from source code using Bash. The built package is then uploaded to the Depot.
3. At runtime, the Habitat Supervisor manages application behavior using the predefined Plan. It provides service discovery, deployment coordination, and a REST API for management.
Docker & aPaaS: Enterprise Innovation and Trends for 2015WaveMaker, Inc.
WaveMaker Webinar: Cloud-based App Development and Docker: Trends to watch out for in 2015 - http://www.wavemaker.com/news/webinar-cloud-app-development-and-docker-trends/
CIOs, IT planners and developers at a growing number of organizations are taking advantage of the simplicity and productivity benefits of cloud application development. With Docker technology, cloud-based app development or aPaaS (Application Platform as a Service) is only becoming more disruptive − forcing organizations to rethink how they handle innovation, time-to-market pressures, and IT workloads.
Introduction to dockers and kubernetes. Learn how this helps you to build scalable and portable applications with cloud. It introduces the basic concepts of dockers, its differences with virtualization, then explain the need for orchestration and do some hands-on experiments with dockers
EclipseCon 2016 - OCCIware : one Cloud API to rule them allMarc Dutoo
This document provides an overview of OCCIware, a project that aims to create a cloud consumer platform using the Open Cloud Computing Interface (OCCI) standard. It discusses the need for such a platform given the fragmented state of existing cloud solutions. OCCIware takes a model-driven engineering approach, using Eclipse modeling tools to generate an OCCI extension, designer, and runtime configuration from a domain model. The document demonstrates using these tools to model a Linked Data application and deploy its configuration to Docker. Upcoming work on OCCIware includes improving existing generators, integrating additional capabilities like simulation, and contributing back to the OCCI standard.
OCCIware Project at EclipseCon France 2016, by Marc Dutoo, Open WideOCCIware
Hear hear dev & ops alike - ever got bitten by the fragmentation of the Cloud space at deployment time, By AWS vs Azure, Open Shift vs Heroku ? in a word, ever dreamt of configuring at once your Cloud application along with both its VMs and database ? Well, the extensible Open Cloud Computing Interface (OCCI) REST API (see http://occi-wg.org/) allows just that, by addressing the whole XaaS spectrum.
And now, OCCI is getting powerboosted by Eclipse Modeling and formal foundations. Enter Cloud Designer and other outputs of the OCCIware project (See http://www.occiware.org) : multiple visual representations, one per Cloud layer and technology. XaaS Cloud extension model validation, documentation & ops scripting generation. Simulation, decision-making comparison. Connectors that bring those models to life by getting their status from common Cloud services. Runtime middleware, deployed, monitored, adminstrated. And tackling the very interesting challenge of modeling a meta API in EMF's metamodel, while staying true to EMF, Eclipse tools and the OCCI standard.
Featuring Eclipse Sirius, Acceleo generators, EMF at runtime. Coming soon to a new Eclipse Foundation project near you, if so you'd like.
This talk includes a demonstration of the Docker connector and of how to use Cloud Designer to configure a simple Cloud application's deployment on the Roboconf PaaS system and OpenStack infrastructure.
Fossetcon: Crash Course on Open Source Cloud ComputingMark Hinkle
This crash course is designed to give an overview of cloud computing architecture and the open source software that can be used to deploy and manage a cloud computing environment.
Topics to be discussed in this session will include virtualization (KVM, LXC, and Xen Project), orchestration (Apache CloudStack, Eucalyptus, Open Nebula, and OpenStack), and storage (GlusterFS, Ceph, and others). The talk will also provide insight into how to deliver Platform-as-a-Service (PaaS) and what technologies can be used to compliment this evolving cloud computing paradigm.
Systems administrators and IT generalists will leave the discussion with a general overview of the options at their disposal to effectively build and manage their own cloud computing environments using free and open source software and understand the capabilities and benefits of a host of technologies.
[Updated with new Docker projects]
A quick 30-60 minute overview of the announcements from the Xamarin Evolve 2016 conference. This was used to provide the talking points for a user group presentation
Presentation we delivered for the the GRMobileDev meetup (http://www.meetup.com/Grand-Rapids-Mobile-Development-Group/events/141015692/) on 10/2/2013. We introduced the Grand Rapids, MI mobile dev community to Xamarin and leveraging C# cross platform.
Introduction to Docker - Vellore Institute of TechnologyAjeet Singh Raina
- The document introduces Docker, including what problem it solves for software development workflows, its key concepts and terminology, and how to use Docker to build, ship, and run containers.
- It compares Docker containers to virtual machines and discusses Docker's build process using Dockerfiles and images composed of layers.
- Hands-on demos are provided for running a first Docker container, building an image with Dockerfile, and using Docker Compose to run multi-container apps.
- Later sections cover Docker Swarm for clustering multiple Docker hosts and running distributed apps across nodes, demonstrated through a Raspberry Pi example.
- The document introduces Docker, explaining that it provides standardized packaging for software and dependencies to isolate applications and share the same operating system kernel.
- Key aspects of Docker are discussed, including images which are layered and can be version controlled, containers which start much faster than virtual machines, and Dockerfiles which provide build instructions for images.
- The document demonstrates Docker's build, ship, and run workflow through examples of building a simple image and running a container, as well as using Docker Compose to run multi-container applications like WordPress. It also introduces Docker Swarm for clustering multiple Docker hosts.
Fueling AI with Great Data with Airbyte WebinarZilliz
This talk will focus on how to collect data from a variety of sources, leveraging this data for RAG and other GenAI use cases, and finally charting your course to productionalization.
Your One-Stop Shop for Python Success: Top 10 US Python Development Providersakankshawande
Simplify your search for a reliable Python development partner! This list presents the top 10 trusted US providers offering comprehensive Python development services, ensuring your project's success from conception to completion.
Ivanti’s Patch Tuesday breakdown goes beyond patching your applications and brings you the intelligence and guidance needed to prioritize where to focus your attention first. Catch early analysis on our Ivanti blog, then join industry expert Chris Goettl for the Patch Tuesday Webinar Event. There we’ll do a deep dive into each of the bulletins and give guidance on the risks associated with the newly-identified vulnerabilities.
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-und-domino-lizenzkostenreduzierung-in-der-welt-von-dlau/
DLAU und die Lizenzen nach dem CCB- und CCX-Modell sind für viele in der HCL-Community seit letztem Jahr ein heißes Thema. Als Notes- oder Domino-Kunde haben Sie vielleicht mit unerwartet hohen Benutzerzahlen und Lizenzgebühren zu kämpfen. Sie fragen sich vielleicht, wie diese neue Art der Lizenzierung funktioniert und welchen Nutzen sie Ihnen bringt. Vor allem wollen Sie sicherlich Ihr Budget einhalten und Kosten sparen, wo immer möglich. Das verstehen wir und wir möchten Ihnen dabei helfen!
Wir erklären Ihnen, wie Sie häufige Konfigurationsprobleme lösen können, die dazu führen können, dass mehr Benutzer gezählt werden als nötig, und wie Sie überflüssige oder ungenutzte Konten identifizieren und entfernen können, um Geld zu sparen. Es gibt auch einige Ansätze, die zu unnötigen Ausgaben führen können, z. B. wenn ein Personendokument anstelle eines Mail-Ins für geteilte Mailboxen verwendet wird. Wir zeigen Ihnen solche Fälle und deren Lösungen. Und natürlich erklären wir Ihnen das neue Lizenzmodell.
Nehmen Sie an diesem Webinar teil, bei dem HCL-Ambassador Marc Thomas und Gastredner Franz Walder Ihnen diese neue Welt näherbringen. Es vermittelt Ihnen die Tools und das Know-how, um den Überblick zu bewahren. Sie werden in der Lage sein, Ihre Kosten durch eine optimierte Domino-Konfiguration zu reduzieren und auch in Zukunft gering zu halten.
Diese Themen werden behandelt
- Reduzierung der Lizenzkosten durch Auffinden und Beheben von Fehlkonfigurationen und überflüssigen Konten
- Wie funktionieren CCB- und CCX-Lizenzen wirklich?
- Verstehen des DLAU-Tools und wie man es am besten nutzt
- Tipps für häufige Problembereiche, wie z. B. Team-Postfächer, Funktions-/Testbenutzer usw.
- Praxisbeispiele und Best Practices zum sofortigen Umsetzen
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
Infrastructure Challenges in Scaling RAG with Custom AI modelsZilliz
Building Retrieval-Augmented Generation (RAG) systems with open-source and custom AI models is a complex task. This talk explores the challenges in productionizing RAG systems, including retrieval performance, response synthesis, and evaluation. We’ll discuss how to leverage open-source models like text embeddings, language models, and custom fine-tuned models to enhance RAG performance. Additionally, we’ll cover how BentoML can help orchestrate and scale these AI components efficiently, ensuring seamless deployment and management of RAG systems in the cloud.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdfTechgropse Pvt.Ltd.
In this blog post, we'll delve into the intersection of AI and app development in Saudi Arabia, focusing on the food delivery sector. We'll explore how AI is revolutionizing the way Saudi consumers order food, how restaurants manage their operations, and how delivery partners navigate the bustling streets of cities like Riyadh, Jeddah, and Dammam. Through real-world case studies, we'll showcase how leading Saudi food delivery apps are leveraging AI to redefine convenience, personalization, and efficiency.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
Taking AI to the Next Level in Manufacturing.pdfssuserfac0301
Read Taking AI to the Next Level in Manufacturing to gain insights on AI adoption in the manufacturing industry, such as:
1. How quickly AI is being implemented in manufacturing.
2. Which barriers stand in the way of AI adoption.
3. How data quality and governance form the backbone of AI.
4. Organizational processes and structures that may inhibit effective AI adoption.
6. Ideas and approaches to help build your organization's AI strategy.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Speck&Tech
ABSTRACT: A prima vista, un mattoncino Lego e la backdoor XZ potrebbero avere in comune il fatto di essere entrambi blocchi di costruzione, o dipendenze di progetti creativi e software. La realtà è che un mattoncino Lego e il caso della backdoor XZ hanno molto di più di tutto ciò in comune.
Partecipate alla presentazione per immergervi in una storia di interoperabilità, standard e formati aperti, per poi discutere del ruolo importante che i contributori hanno in una comunità open source sostenibile.
BIO: Sostenitrice del software libero e dei formati standard e aperti. È stata un membro attivo dei progetti Fedora e openSUSE e ha co-fondato l'Associazione LibreItalia dove è stata coinvolta in diversi eventi, migrazioni e formazione relativi a LibreOffice. In precedenza ha lavorato a migrazioni e corsi di formazione su LibreOffice per diverse amministrazioni pubbliche e privati. Da gennaio 2020 lavora in SUSE come Software Release Engineer per Uyuni e SUSE Manager e quando non segue la sua passione per i computer e per Geeko coltiva la sua curiosità per l'astronomia (da cui deriva il suo nickname deneb_alpha).
2. Xamarin.Mac Overview
• Build Mac applications with C#
– Use C# and .NET libraries on Mac
– All that you love:
• LINQ, Task Parallel Library, async
• GC, type safety, generics, dynamic and more.
– Mac AppStore ready
• Native Applications
– Use native APIs to deeply integrate with OSX
4. Xamarin.Mac at a Glance
Mono Runtime
Xamaric.Mac
Libraries
Mono Core Class
Libraries
Tools and SDK
• Binder
• Bundler
• Linker
• Packager
MonoDevelop IDE
Xcode
(UI Designer)
Cocoa Frameworks
System Libraries
Darwin OS
7. How does Xamarin.Mac work?
• OSX Libraries Projected to C#
– 1:1 mapping from OSX native APIs to C#
• Objective-C (80% of APIs)
– Object system mapped
– Supports subclassing and overriding
• C-based APIs (20% of APIs)
– Exposed as C# classes/methods
– No support for subclassing or overriding
8. The Basics
• CoreGraphics
• CoreImage
• CoreText
• CoreVideo
Graphics
• ImageKit
• ImageIO
• OpenGL
• PDFKit
• AppKit
• CoreAnimation
• CoreImage
User Interface
• QCComposer
• QuickLook
• SceneKit
• WebKit
• AVFoundation
• AudioToolbox
• AudioUnit
Audio and Video
• CoreMidi
• CoreMedia
• OpenAL
• AddressBook
• Bluetooth
• CoreLocation
• CoreServices
System Services
• CoreWLan
• ScriptingBridge
• StoreKit
• CoreData
• CoreFoundation
• Darwin
Infrastructure
• Foundation
• ObjCRuntime
• Security
9.
10. Anatomy of a Xamarin.Mac App
NSDocument version
Application Delegate
Called with application events, among them
“FinishedLaunching”
Info.plist
Application metadata, used by the OS
(app name, requirements, doc type handlers, etc)
Main application menu
Interface definition for your main menu
Implementation for your main window
Code to implement the features of your
Document handler.
Main Window UI Definition
UI for your Main Window, edited with
Xcode.
12. Structure of your App
NSWindow
The toplevel window in your app
NSWindow.ContentView
An NSViews, hosts all content
13. NSViews – Powerful containers
• NSViews can contain other NSViews
• NSViews can handle events
• NSViews can paint themselves
• NSViews can layout their nested NSViews
• NSViews can be backed by a CALayer
– CALayers are GPU accelerated
• NSView properties can be animated
15. AppKit - Application Framework
• Pervasive use of Model View Controller
– Unless you are writing a custom control
– All logic goes into your controller class
– Controller orchestrates work of views
• Goes beyond the standard offering
– High-level NSDocument does the heavy lifting
– Full Menu, Saving, Loading, multi-window support
16. Extending our first Window
Create + Initialize Object
Hook up some code, lambda
Subclass
20. Exposing the UI to Code
• Outlets
– Allows you to reference an object from code
– Control-drag to source pane, and give it a name
• Actions
– Allows a method to be invoked as a response
– Control drag to source pane, and give a name
• In C# land
– Actions become partial methods in your class
– Outlets become properties in your class
24. Events and Callbacks
• In the C# world we are used to objects
broadcasting events. Like this:
– var myControl = new SomeControl ();
– myControl.Clicked += SaveFile;
– myControl.FocusIn += MakeFontBold;
– myControl.FocusOut += ResetFont;
MyControl
SaveFile
MakeFontBold
ResetFont
25. Apple’s Idiom
• Objects instead send interesting events to a
“Delegate”. All messages are sent there.
var myControl = new SomeControl ()
myControl.Delegate = new MyControlDelegate ()
myControlDelegate
class MyControlDelegate : ControlDelegate {
override Clicked () {…}
override FocusIn () {…}
override FocusOut () {…}
}
myControl
26. Xamarin.Mac and Delegates
• Both models are supported
– You get to choose in a per-instance basis
• Apple Delegate pattern mapped to C# events
– Internally, we create the Delegate class, map it to
your C# lambda/anonymous method/delegate
• One replaces the other
28. Shipping Your App - Yourself
• App has full access to the system
• Applications are shipped as “bundles”
– Directory with .app extension
– Self-contained, with no external dependencies
– Optionally: generate installer from IDE as well.
• MacOS recently enabled GateKeeper
– This requires you to sign your app
– Or apps wont start on modern systems1 (by default)
1. Technically any Mac running Mountain Lion (10.8.xx) or Lion 10.7.5 and newer
29. Shipping your App - AppStore
• Mac App Store
– Must apply to Apple for developer program
– Must sign application
– Submit app for review
• App will be sandboxed
• IDE signs, packages and launches uploader
• See Xamarin’s docs for tutorial
30. MacOS X Sandbox
• Kernel enforced sandbox
• Limits access to the system:
– Limitations on file system access
– Use special Open/Save dialog panels
– Limits access to services, and some kernel APIs
31. Mac AppStore – Sandbox Configuration
Info.plist
Editing this file brings up
the metadata editor.
Use this editor to configure
your application requirements
from the sandbox.
32. Next Steps
Learn more at:
- xamarin.com/mac
- Docs.xamarin.com
Free trial:
- xamarin.com/trial
April 14 – 17, Austin, TX
2 Days of Xamarin Technical Training &
Certification
2 Conference days covering all things mobile
Keynotes by Nat, Miguel and Scott Hanselman
Call for speakers officially open & sponsorship
information available at evolve@xamarin.com
Deep Dive at Xamarin Evolve 2013
33. Pricing
• Free trial at xamarin.com/trial
• Professional: $399
• Enterprise: $999 per seat
• Enterprise Priority: $2,499 per seat
34. Resources
• Xamarin’s Mac Resources:
– http://docs.xamarin.com/mac
• API documentation:
– Installed on first use (Apple + Xamarin Docs)
• C# samples: https://github.com/xamarin/mac-samples
• Support Forum: http://forums.xamarin.com/categories/mac
• Apple Developer Portal: http://developer.apple.com/mac
• Xamarin’s Evolve conference: http://xamarin.com/evolve
38. Objective-C Projection to C#
• What we map:
– Classes
– Structures
– Methods and Properties
– Objective-C blocks
– Public global fields
– Notifications
– Dictionaries
– Core data types
• Follow the .NET Framework Design Guidelines
39. Projecting Classes and Structs
• Identical class names
• Scoped by namespace
Example:
NSWindow and NSURL
Become
MonoMac.AppKit.NSWindow
MonoMac.Foundation.NSUrl
40. Projecting Methods and Properties
• We rename methods to follow .NET FDG
• Use C# overloading
Example:
-(void) drawString:(NSString *) str atPoint:(CGPoint)pos
-(void) drawString:(NSString *) str
Becomes:
void DrawString (string str)
void DrawString (string str, PointF position)
41. Projecting Blocks
• Blocks are Objective-C lambdas
• They are mapped to C# delegates
– Can be used with C# lambdas or methods
Example:
(int)(^)(string msg, int flag)
Becomes:
delegate int X (string msg, int flag)
43. Projecting NSDictionary Options
• Dictionaries are used to pass parameters
• Loosely typed, hard to debug, hard to find
• We provide strongly typed classes
• They implicitly convert to NSDictionary
– With the right magic keys
– With the correct types for parameters
Showcase some applications
Frameworks available/bound
Introduction to MacOS frameworks
C# and Objective-C integration
Kinds of programs you can build
Small, depend on Mono
Self-contained
AppStore distribution
The structure of a Xamarin.Mac app
Main program
Main loop
Info.plist
Editing properties
Hands on Section
Creating an app with a single window
Structure of a project
Menus
Components.
NSAlert (Sheets/Dialogs)
Using NSDocument to leverage multiple toplevels
What you get with it
Debugging
Basically, it is what dreams are made of.
Learn almost everything there is to know about mobile development with Xamarin by attending our two-day Training & Certification program, for only $1,000, on April 14 & 15. Our fast-paced professional training days will give you an opportunity to dive deep and expand your expertise.
And then join us for the Xamarin Evolve 2013 Conference, priced at $899, on April 16 & 17. Buy your tickets now–the first 100 to register will receive a 20% discount. The conference will include inspiring keynotes, a diverse lineup of must-see talks and presentations, and engaging activities like a party and hackathon.