This is a supplementary slide deck to the presentation on how to build native Android app which integrates with SharePoint Online by using Xamarin and Visual Studio. Check out sharemuch.com for the source code
Deep dive into SharePoint 2013 hosted apps - Chris OBrienChris O'Brien
Covers key aspects of SharePoint 2013 apps, with a focus on SharePoint-hosted apps. Includes detail on app parts, using web parts within an app, configuring SSL, troubleshooting apps and possible reasons to move away from a SharePoint-hosted app to a cloud app. Also covers "high-privilege" apps which provision to the host web.
Chris O'Brien - Introduction to the SharePoint Framework for developersChris O'Brien
Describes the new SharePoint development framework, which uses Gulp, node.js, TypeScript, SASS and other modern web technologies. Covers client web parts, modern pages and the canvas, and how to surface your files on a CDN for optimum performance. This intro presentation helps you get started.
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Bram de Jager
The new SharePoint App Model provides different ways of building apps. As a developer you have to choose between development techniques, hosting options and more. This session discusses the architecture, various types of apps, application identity and permissions, and how to build these different types of apps. The session contains demos covering building SharePoint-hosted apps, implementing SharePoint 2013 chrome control, setting the right permissions, and more with Visual Studio 2012.
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 appsChris O'Brien
A presentation I gave at SharePoint Evolutions 2015. Here, I compare SharePoint apps (now renamed "SharePoint Add-Ins" as of April 2015!) and the newer flavour of app development, Office 365 apps.
It focuses primarily on the perspective of a development team implementing the app - and factors to consider when deciding between the two approaches. However, to do this we must consider end-user and administration aspects, as well as code/development.
Key agenda points:
- Changes in SharePoint development
- Apps, 2 years on..
- SharePoint Add-Ins – a recap
- Office 365 apps - Why did Microsoft introduce these? What do they promise?
- Comparing SharePoint Add-Ins with Office 365 apps - For the end-user, administrator and developer
- Summary
One of the major changes in SharePoint 2013 is the introduction of apps. Apps for both SharePoint and Office provide a new model for developing, packaging and deploying custom solution for SharePoint.
This brief presentation will introduce the main aspects of the apps model introduced form Microsoft to addres custom features to SharePoint both on-premises and online.
Deep dive into SharePoint 2013 hosted apps - Chris OBrienChris O'Brien
Covers key aspects of SharePoint 2013 apps, with a focus on SharePoint-hosted apps. Includes detail on app parts, using web parts within an app, configuring SSL, troubleshooting apps and possible reasons to move away from a SharePoint-hosted app to a cloud app. Also covers "high-privilege" apps which provision to the host web.
Chris O'Brien - Introduction to the SharePoint Framework for developersChris O'Brien
Describes the new SharePoint development framework, which uses Gulp, node.js, TypeScript, SASS and other modern web technologies. Covers client web parts, modern pages and the canvas, and how to surface your files on a CDN for optimum performance. This intro presentation helps you get started.
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Bram de Jager
The new SharePoint App Model provides different ways of building apps. As a developer you have to choose between development techniques, hosting options and more. This session discusses the architecture, various types of apps, application identity and permissions, and how to build these different types of apps. The session contains demos covering building SharePoint-hosted apps, implementing SharePoint 2013 chrome control, setting the right permissions, and more with Visual Studio 2012.
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 appsChris O'Brien
A presentation I gave at SharePoint Evolutions 2015. Here, I compare SharePoint apps (now renamed "SharePoint Add-Ins" as of April 2015!) and the newer flavour of app development, Office 365 apps.
It focuses primarily on the perspective of a development team implementing the app - and factors to consider when deciding between the two approaches. However, to do this we must consider end-user and administration aspects, as well as code/development.
Key agenda points:
- Changes in SharePoint development
- Apps, 2 years on..
- SharePoint Add-Ins – a recap
- Office 365 apps - Why did Microsoft introduce these? What do they promise?
- Comparing SharePoint Add-Ins with Office 365 apps - For the end-user, administrator and developer
- Summary
One of the major changes in SharePoint 2013 is the introduction of apps. Apps for both SharePoint and Office provide a new model for developing, packaging and deploying custom solution for SharePoint.
This brief presentation will introduce the main aspects of the apps model introduced form Microsoft to addres custom features to SharePoint both on-premises and online.
Chris OBrien - Weaving Enterprise Solutions into Office ProductsChris O'Brien
A presentation I gave at TechEd 2014 (Barcelona) in October 2014. Covers some fundamentals of developing Apps for Office, and shows a sample Word task pane app, which analyzes the current document and searches your SharePoint/Office 365 environment for similar documents. The app also integrates with OneDrive for Business, to allow the user to save links for future reference.
Also, my co-presenter Andrew Salamatov presents some great information and demos around mail apps.
The presentation also covers some common mistakes, and tips and tricks when developing Apps for Office.
Slides from a presentation I did demonstrating the new features of SharePoint 2013 as well as a simple App I created which talks to a service on Windows Azure.
Accompanying article is at: http://www.shailensukul.com/2012/10/sharepoint-2013-swordfish-app.html
CSOM and REST should probably be #1 on your list of things to learn. You’ve probably seen those tutorials, copy pasted code, the basic hello world apps. Well life is a lot different when writing a relatively complex app. How do you do error handling, concurrency checks, thread synchronization, memory tracking and optimization, and browser independence while taking advantage of newer browsers. Let’s not forget the pain writing and debugging your JavaScript can be, unless of course you structure it right. But how is a developer to match all those parenthesis and semicolons, or check for variable types where your best dev. environment is F12? This session is a hands-on dive into such fun topics.
JavaScript is becoming the new de-facto standard for developing solutions on top of SharePoint, thanks to the new App model! This session will cover the fundamental use of the SharePoint 2013 JavaScript Object Model (JSOM), explain how JSOM has evolved in SharePoint 2013, and highlight many of JSOM new features.
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - referenceChris O'Brien
Covers the changes Microsoft are making to team sites in Office 365/on-premises SharePoint - in terms of end-user changes, and also the impact on developers. The second half of the deck covers the SharePoint Framework (the new coding framework for developers).
Join Thomas Vochten (MVP) and Spencer Harbar (MCM, MVP) for an all-day interactive tutorial covering design, build and operational service management best practices for SharePoint Server on premises and hybrid deployments. An end to end deployment scenario will be presented, which will be built out in stages throughout the day. Additional coverage of key supporting technologies and the latest investments from Microsoft for SharePoint On Premises and Hybrid scenarios will also be included.
Identity management
Information security
Critical farm deployment considerations
Deployment approach and tooling
Operational service management
Designing for hybrid scenarios
Hybrid configuration
Troubleshooting and Tips and Tricks
Speaker: Dragan Panjkov;
In this session we will speak about SharePoint apps – new approach for development in new SharePoint. We will explain rationale behind Apps, basic concepts and various hosting options. We will also show you how to build your first app for SharePoint 2013.
Improve Master Data Quality with Excel and SharePointKristian Kalsing
Business user tools such as Excel and SharePoint can be utilized to improve processes for master data creation and maintenance. Power users in the business can create web forms and spreadsheets for data collection and validation. Combined with automated workflows, these provide the business with transformed processes for ongoing data governance. In this session, it will be discussed how to quickly improve data quality with lightweight and cost-effective solutions, employing a bottom-up approach that will yield immediate results.
Chris OBrien - Weaving Enterprise Solutions into Office ProductsChris O'Brien
A presentation I gave at TechEd 2014 (Barcelona) in October 2014. Covers some fundamentals of developing Apps for Office, and shows a sample Word task pane app, which analyzes the current document and searches your SharePoint/Office 365 environment for similar documents. The app also integrates with OneDrive for Business, to allow the user to save links for future reference.
Also, my co-presenter Andrew Salamatov presents some great information and demos around mail apps.
The presentation also covers some common mistakes, and tips and tricks when developing Apps for Office.
Slides from a presentation I did demonstrating the new features of SharePoint 2013 as well as a simple App I created which talks to a service on Windows Azure.
Accompanying article is at: http://www.shailensukul.com/2012/10/sharepoint-2013-swordfish-app.html
CSOM and REST should probably be #1 on your list of things to learn. You’ve probably seen those tutorials, copy pasted code, the basic hello world apps. Well life is a lot different when writing a relatively complex app. How do you do error handling, concurrency checks, thread synchronization, memory tracking and optimization, and browser independence while taking advantage of newer browsers. Let’s not forget the pain writing and debugging your JavaScript can be, unless of course you structure it right. But how is a developer to match all those parenthesis and semicolons, or check for variable types where your best dev. environment is F12? This session is a hands-on dive into such fun topics.
JavaScript is becoming the new de-facto standard for developing solutions on top of SharePoint, thanks to the new App model! This session will cover the fundamental use of the SharePoint 2013 JavaScript Object Model (JSOM), explain how JSOM has evolved in SharePoint 2013, and highlight many of JSOM new features.
Chris O'Brien - Modern SharePoint sites and the SharePoint Framework - referenceChris O'Brien
Covers the changes Microsoft are making to team sites in Office 365/on-premises SharePoint - in terms of end-user changes, and also the impact on developers. The second half of the deck covers the SharePoint Framework (the new coding framework for developers).
Join Thomas Vochten (MVP) and Spencer Harbar (MCM, MVP) for an all-day interactive tutorial covering design, build and operational service management best practices for SharePoint Server on premises and hybrid deployments. An end to end deployment scenario will be presented, which will be built out in stages throughout the day. Additional coverage of key supporting technologies and the latest investments from Microsoft for SharePoint On Premises and Hybrid scenarios will also be included.
Identity management
Information security
Critical farm deployment considerations
Deployment approach and tooling
Operational service management
Designing for hybrid scenarios
Hybrid configuration
Troubleshooting and Tips and Tricks
Speaker: Dragan Panjkov;
In this session we will speak about SharePoint apps – new approach for development in new SharePoint. We will explain rationale behind Apps, basic concepts and various hosting options. We will also show you how to build your first app for SharePoint 2013.
Improve Master Data Quality with Excel and SharePointKristian Kalsing
Business user tools such as Excel and SharePoint can be utilized to improve processes for master data creation and maintenance. Power users in the business can create web forms and spreadsheets for data collection and validation. Combined with automated workflows, these provide the business with transformed processes for ongoing data governance. In this session, it will be discussed how to quickly improve data quality with lightweight and cost-effective solutions, employing a bottom-up approach that will yield immediate results.
Same but Different - Developing for SharePoint Online -- SPSSTLJohn Ferringer
Silverlight. Sandbox Solutions. JavaScript. The Client Object Model. These are components or features that can all be leveraged by developers in an on premises SharePoint environment, as well as Microsoft’s cloud offering for SharePoint: SharePoint Online. But while these similarities exist between the two SharePoint worlds, at the same time they’re vastly different. In on premises SharePoint environments, developers have many other appealing options to choose from that can make customization much easier and smoother than these client-side developer tools.
The difference in the cloud with SharePoint Online is that developers can’t choose other easier options over Sandbox Solutions, JavaScript, or the Client Object Model. In SharePoint Online’s world it’s Microsoft’s way or the highway, and that means that software designers and developers have to approach solution design and creation in a much different manner than for on premises custom solutions.
This class presents a comprehensive review of the tools and features available for development with SharePoint Online and then takes a closer look at their capabilities and limitations. It also explains the shift in decision making and solution design that needs to occur to turn SharePoint Online’s restrictions into opportunities, as well as looks at other available resources for development with SharePoint Online, such as Microsoft’s Azure offering or Amazon’s Cloud Services.
Pinal Power, Turning Arizona’s Green Waste into Renewable, Reliable Baseload ...City of Maricopa
Resolution 10-42. A Resolution of the Mayor and City Council of the City of Maricopa, Arizona, in support of the planned Pinal Power, LLC Renewable Energy Facility.
We believe that Düsseldorf can be a hub of entrepreneurial driven innovation, creativity and high-technology. Innovators and entrepreneurs are everywhere, they just need to come together to collaborate and share the clear vision that leads to a vibrant startup community.
StartupDorf is a local, grassroots and entrepreneur-led network to foster Düsseldorf startup eco-system. A hub and local community to access support to start and grow businesses and to connect with other startup founders.
Der Steinschaler GenussGarten liegt in der GenussRegion
Pielachtaler Dirndl, die für ihre malerische Landschaft, viele
tausend Dirndlsträucher und köstliche Dirndlspezialitäten
wie Marmeladen, Chutneys und Brände bekannt ist.
In dem riesigen Küchengarten des Wildkräuterhotels Steinschalerhof
werden auf rund 48.000 m2 über 1.000 Pflanzenarten
naturnah und in Bioqualität gezogen. Den essbaren
Wildpflanzen gilt unsere besondere Leidenschaft. Erntefrische
Gemüse und Salate, Wild- und Küchenkräuter, bunte
Blüten und Obst bilden seit Jahrzehnten die Grundlage für
unsere Grüne-Hauben-Kulinarik. Wildkräuter zeichnen sich
durch eigenständige und intensive Geschmacksnuancen
aus. Kochen mit Wildkräutern erfordert Wissen, Fingerspitzengefühl
und Experimentierfreude. Deshalb probieren die
Steinschaler Köchinnen auch immer wieder neue Rezepte
aus. Viele Gäste besuchen das Steinschaler GenussRestaurant
wegen der reichen Palette an vegetarischen und veganen
Speisen. Wildkräuter verleihen aber auch den regionalen
Fleischgerichten eine besondere Note. Und immer öfter
treten die Steinschaler Wildkräuter im Duett auf - gemeinsam
mit den Pielachtaler Dirndln. Im Steinschaler Hofladen
sind viele der Produkte aus dem GenussGarten und der GenussRegion
zu erwerben.
Bei Gartenurlauben im Steinschalerhof können Sie den Weg
der Wildkräuter von der Aussaat bis zur Ernte und vom Beet
bis auf die Gabel begleiten. Wir führen sie gerne durch den
GenussGarten und geben altes Wissen und eigene Erfahrungen
rund um Garten, Wildkräuter und Kochen in Kursen
weiter.
Erlebnis-Angebote:
*Unkraut im Kochtopf
*Genussvolle Aliens
*Faules Gärtnern
*Wildkräuter Kochkurs
*Koch Dir den Sommer ein!
*Urlaub in den Steinschaler Naturhotels
In the closing keynote to the Media Education Summit in Prague in 2014, Professor Hobbs shares insights gained from working with educators and researchers in Turkey, Russia, Brazil and Israel who are exploring media literacy pedagogy and practice at the elementary and secondary levels. She
describes and analyzes an example of a global media
literacy project that involved Turkish and American
middle-school students. Professor Hobbs considers
how teacher motivations regarding the use of digital
media interact with structural relationships between
government, school and higher education to produce
differential opportunities for innovation. She identifies the many flavors of digital literacy now circulating in contemporary culture and shows how collaborative global research in media literacy education can help researchers examine and question some fundamental assumptions and
expectations of the field.
Sentidos en torno a la “obligatoriedad” de la educación secundariaPolitica29
La extensión de la obligatoriedad a la educación
secundaria, sancionada en la Ley de Educación Nacional,
se apoya en principios de democratización y equidad
educativa, y mantiene correspondencias con demandas
sociales de "más educación". Pero, también, representa
nuevos desafíos para la escolarización /inclusión de los
jóvenes que no asisten a la escuela y para garantizar la terminalidad.
2016 Utah Cloud Summit: Big Data Architectural Patterns and Best Practices on...1Strategy
In this session, we simplify big data processing as a data bus comprising various stages: ingest, store, process, and visualize. Next, we discuss how to choose the right technology in each stage based on criteria such as data structure, query latency, cost, request rate, item size, data volume, durability, and so on. Finally, we provide reference architecture, design patterns, and best practices for assembling these technologies to solve your big data problems at the right cost.
Automatizacion de Procesos en Modelos TabularesGaston Cruz
Muestra de opciones para automatizar refrescos en Modelos Tabulares a traves de Azure Data Factory, Azure Logic Apps, Azure Functions y refresco de base de datos, tablas y particiones en Azure Analysis Services.
Identity and Access (AD), Azure and Office 365: Building a Single Page Application (SPA) with ASP.NET Web API and Angular.js using Azure Active Directory to Log in Users
SharePoint Apps are the new way to create applications in SharePoint 2013. SharePoint Apps are the intended replacement for Sandbox Solutions. These work well both in on-premise and cloud SharePoint installations.
Parse is a suite of cloud based APIs, services and libraries that focus on letting developers build out rich applications and less time dealing with the overhead of setting up and managing databases, push notifications, social sign on, analytics, and even hosting and servers.
In this series I'll overview the options around developing an application that leverages Parse, including using Cloud Code to deploy your Node.js app to Parse's own hosting service.
Understanding SharePoint Apps, authentication and authorization infrastructur...SPC Adriatics
This session will teach you everything that you need to know in order to understand SharePoint Apps, authentication and authorization. Learn about the different type of Apps, the underlying Apps architecture and how to configure an on-premises environment to support Apps. Also you will learn about the different authentications options available for integrating apps, devices, and applications for on-prem scenarios, in the cloud and hybrid.
Chris O'Brien - Modern SharePoint development: techniques for moving code off...Chris O'Brien
Covers some key techniques and references for "cloud-friendly" SharePoint development (i.e. suitable for Office 365, or perhaps on-premises SharePoint projects which want to stay cloud compatible or benefit from greater isolation from SharePoint).
Includes detailed coverage on - Remote Event Receivers in Azure, "PowerShell + CSOM" scripts, and Microsoft's AMS samples.
Manually deploying Microsoft Teams is overwhelming. Using Teams Templates, SharePoint Online, and Power Automate we will build and discuss how to best create a self service Microsoft Teams provisioning process. How do we handle approval and management? Templates? Flow creation? Find out, in this in session!
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
9. Why are we here?
Our goal today:
• Explore SharePoint integration with
mobile platforms
• Get some samples
• Look at mobile use cases in your
business
15. What are we building today
SharePoi
nt excites
me!
16. Office 365 Developer Site
That’s where files will be stored so that’s obvious
Set up a development environment for SharePoint Add-ins on
Office 365: https://msdn.microsoft.com/en-
us/library/office/fp179924.aspx#o365_signup
Windows Azure
This is going to be used for authentication to Office
365
Azure trial: https://azure.microsoft.com/en-us/pricing/free-trial/
Visual Studio and Xamarin
This is what we’re going to be using to build Android
app with C# and .NET
Tools
17. Xamarin
Build for Android and iOS using one tool
Use your existing knowledge of Visual Studio
Use .NET framework and C#
Has been recently acquired by MS, so more support and
integration is coming, hopefully
More MS integration samples:
https://developer.xamarin.com/samples-all/
Native tool
Learn new toolset (for example Android Studio)
Learn language: objective C or Java
Less dependency on a middle man
More platform specific community support
Xamarin vs. platform specific tool
20. Step 1.1 – Adding O365 to our
Sample Project
• Right click on the Project
name in Visual Studio ->
• Add ->
• Connected Service …
21. Step 1.2 – What’s our SPO tenant
URL?
• Don’t have one?
• Spin up a test one,
search for “Set up a
development
environment for
SharePoint Add-ins
on Office 365”
22. Step 1.3 – Create new azure
“application”
• SharePoint Online uses
Azure to handle
authentication.
• Azure takes care of
authentication and creates
a token.
• SPO consumes that token
and hopefully authorizes
the user if they have
access to the site
23. Step 1.4 – We’ll need to ask users
for these permissions
• Not only the user must
consent to giving these
permissions to our app,
they obviously need to be
granted those in
SharePoint Online ….
otherwise we’re gonna
have a case of “writing
checks we can’t cash”
24. Step 1.5 – wait while Visual Studio
adds required libraries to our project
• Curious fact!
• This inflates our
project from few KB
to … oh well, ~80
MB
28. Adding Code to Create List Items
in SPO
private static async Task<string> GetFormDigest(string siteURL, string accessToken)
{
//Get the form digest value in order to write data
HttpClient client = new HttpClient();
HttpRequestMessage request = new HttpRequestMessage(
HttpMethod.Post, siteURL + "/_api/contextinfo");
request.Headers.Accept.Add(new
MediaTypeWithQualityHeaderValue("application/xml"));
request.Headers.Authorization = new AuthenticationHeaderValue("Bearer",
accessToken);
HttpResponseMessage response = await client.SendAsync(request);
string responseString = await response.Content.ReadAsStringAsync();
XNamespace d = "http://schemas.microsoft.com/ado/2007/08/dataservices";
var root = XElement.Parse(responseString);
var formDigestValue = root.Element(d + "FormDigestValue").Value;
29. Adding Code to Create List Items
in SPO … cont.
public static async Task<string> AddListItem(string title, string siteURL, string accessToken, string filePath)
{
string requestUrl = siteURL + "/_api/Web/Lists/GetByTitle('TestList')/Items";
var formDigest = await GetFormDigest(siteURL, accessToken);
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Add("Accept", "application/json;odata=verbose");
HttpRequestMessage request =
new HttpRequestMessage(HttpMethod.Post, requestUrl);
request.Headers.Authorization =
new AuthenticationHeaderValue("Bearer", accessToken);
// Note that the form digest is not needed for bearer authentication. This can
//safely be removed, but left here for posterity.
request.Headers.Add("X-RequestDigest", formDigest);
var requestContent = new StringContent(
"{ '__metadata': { 'type': 'SP.Data.TestListListItem' }, 'Title': '" + title + "'}");
requestContent.Headers.ContentType =
System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json;odata=verbose");
request.Content = requestContent;
HttpResponseMessage response = await client.SendAsync(request);
if (response.IsSuccessStatusCode)
{
string responseString = await response.Content.ReadAsStringAsync();
JsonObject d = (JsonObject)JsonValue.Parse(responseString);
JsonObject results = (JsonObject)d["d"];
JsonValue newItemId = (JsonValue)results["ID"];
var endpointUrl = string.Format("{0}({1})/AttachmentFiles/add(FileName='{2}')", requestUrl, newItemId.ToString(), App._file.Name);
using (var stream = System.IO.File.OpenRead(filePath))
{
HttpContent file = new StreamContent(stream);
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
var resp = await client.PostAsync(endpointUrl, file);
}
return responseString;
}
return (null);
}
30. References
using System.Threading.Tasks;
using System.Net.Http; //Reference System.Net.Http.dll
using System.Net.Http.Headers;
using System.Xml.Linq; //Reference System.Xml.Linq.dll
using Microsoft.IdentityModel.Clients.ActiveDirectory;
using System.Json;
35. Adding Authentication Helper
using System.Linq;
using Android.App;
using Microsoft.IdentityModel.Clients.ActiveDirectory;
using System.Threading.Tasks;
namespace CameraAppDemo
{
public class AuthenticationHelper
{
public const string Authority = "https://login.windows.net/common";
public static System.Uri returnUri = new System.Uri("http://cameraappdemo.cameraappdemo/");
public static string clientId = "0f0ff4eb-b28a-48ec-88c0-1bcd50ae381b";
public static AuthenticationContext authContext = null;
public static async Task<AuthenticationResult> GetAccessToken
(string serviceResourceId, Activity activity)
{
authContext = new AuthenticationContext(Authority);
if (authContext.TokenCache.ReadItems().Count() > 0)
authContext = new AuthenticationContext(authContext.TokenCache.ReadItems().First().Authority);
var authResult = await authContext.AcquireTokenAsync(serviceResourceId, clientId, returnUri, new
AuthorizationParameters(activity));
return authResult;
}
}
38. Final touches - kindof
protected override async void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
if (App.authResult == null)
{
AuthenticationAgentContinuationHelper.
SetAuthenticationAgentContinuationEventArgs(requestCode, resultCode, data);
}
// Make it available in the gallery
Intent mediaScanIntent = new Intent(Intent.ActionMediaScannerScanFile);
if (App._file != null)
{
…..
// Dispose of the Java side bitmap.
GC.Collect();
if (App.authResult != null)
{
await AddListItem("TestItem", "https://sharemuch.sharepoint.com/sites/demo", App.authResult.AccessToken,
App._file.AbsolutePath);
}
}
}
48. What happens Between Azure
and O365 – 1 & 2
Register your app in the
Azure Management
Portal and configure the
app's code with the client
Id and redirect URI.
Then, in the Azure
Management Portal,
configure the
permissions for the app.
Your app gets the user's
email address. It
contacts Discovery
Service with email
address and the set of
scopes the app wants to
49. What happens Between Azure
and O365 - 3
The app goes to the
Azure AD authorization
endpoint and the user
authenticates and grants
consent (if consent has
not been granted
before). Azure AD issues
an authorization code.
50. What happens Between Azure
and O365 - 4
Your app redeems the
authorization code.
Azure returns an access
token and a refresh
token.
51. What happens Between Azure
and O365 - 5
Your app calls Discovery
Service using the access
token. Discovery Service
returns Http Response
with resource IDs and
endpoint URIs for Office
365 services.
52. What happens Between Azure
and O365 - 6
Your app redeems the
refresh token with Azure
AD token endpoint, to
get the access token for
the desired Office 365
resource. The Azure AD
token endpoint returns
an access token for the
specified resource and a
refresh token.
53. What happens Between Azure
and O365 - 7
Your app can now call
Office 365 APIs using the
URI from Discovery
Service and the access
token. Office 365 returns
Http Response.
* Office 365 APIs: How to use Discovery Service
https://code.msdn.microsoft.com/Office-365-APIs-How-to-
use-609102ea