In the first Surf Code Camp lab your goal is to create a simple hello world Surf dashlet.
Full solution source code is at http://ecmarchitect.com/images/green-energy-code-camp.zip
How to handle the variables specific to the environment you use: Development, QA, Production, etc. WHAT are the, WHY should you use them, WHERE do you put them, and HOW are they used. As an added bonus, Environmental Variables are not limited to PHP!
How to handle the variables specific to the environment you use: Development, QA, Production, etc. WHAT are the, WHY should you use them, WHERE do you put them, and HOW are they used. As an added bonus, Environmental Variables are not limited to PHP!
Testing web front ends is a pain, partly because we end up testing the back end with them. Selenium helps by automating the input, but the selenium driver code lacks high-level interfaces for things like "find_and_click" or "find_and_key". Adding these with a wrapper makes data-driven selenium testing via Object::Exercise easy.
AtlasCamp 2015: Back to the future with web componentsAtlassian
Jonathon Creenaune, Atlassian
Web components are an emerging standard for building web UI's. They allow front end developers to build reusable, encapsulated widgets in HTML pages.
Come to this talk to learn why Atlassian views this as such a significant step forward in web development, and what we're doing to take advantage of web components to drive us into the future.
In the second Surf Code Camp lab, you'll write a little user profile dashlet. This one is slightly more complex than the hello world dashlet because it makes remote calls to the Repository tier.
Full solution source code is at http://ecmarchitect.com/images/green-energy-code-camp.zip
Presented at the Alfresco South Africa User Group on September 14. Covers a high-level look at the state of the ECM industry including a "Top 5 Takeaways" from AIIM's State of the Industry report.
Surf Code Camp walkthrough 2 gives the student their first exposure to CMIS. It shows how to use E4X in JavaScript to parse a CMIS response.
Full solution source code is at http://ecmarchitect.com/images/green-energy-code-camp.zip
I gave this talk in April 2016 at BeeCon, the Alfresco Community conference. It discusses what would happen if Alfresco Software, Inc., the commercial open source company behind Alfresco were to cease to exist. Would Alfresco as an open source project survive? The talk is light on bullet/text so you may prefer to find a recording to get the full context.
Surf Code Camp walkthrough 1 was done as a joint exercise between the instructor and the class as a precursor to Lab 3. It covers Surf site construction basics.
Full solution source code is at http://ecmarchitect.com/images/green-energy-code-camp.zip
Surf Code Camp Lab 4 is the final lab in which a pages are added to the Green Energy site that facilitate browsing through the repository hierarchy using CMIS and Surf object associations.
Full solution source code is at http://ecmarchitect.com/images/green-energy-code-camp.zip
Testing web front ends is a pain, partly because we end up testing the back end with them. Selenium helps by automating the input, but the selenium driver code lacks high-level interfaces for things like "find_and_click" or "find_and_key". Adding these with a wrapper makes data-driven selenium testing via Object::Exercise easy.
AtlasCamp 2015: Back to the future with web componentsAtlassian
Jonathon Creenaune, Atlassian
Web components are an emerging standard for building web UI's. They allow front end developers to build reusable, encapsulated widgets in HTML pages.
Come to this talk to learn why Atlassian views this as such a significant step forward in web development, and what we're doing to take advantage of web components to drive us into the future.
In the second Surf Code Camp lab, you'll write a little user profile dashlet. This one is slightly more complex than the hello world dashlet because it makes remote calls to the Repository tier.
Full solution source code is at http://ecmarchitect.com/images/green-energy-code-camp.zip
Presented at the Alfresco South Africa User Group on September 14. Covers a high-level look at the state of the ECM industry including a "Top 5 Takeaways" from AIIM's State of the Industry report.
Surf Code Camp walkthrough 2 gives the student their first exposure to CMIS. It shows how to use E4X in JavaScript to parse a CMIS response.
Full solution source code is at http://ecmarchitect.com/images/green-energy-code-camp.zip
I gave this talk in April 2016 at BeeCon, the Alfresco Community conference. It discusses what would happen if Alfresco Software, Inc., the commercial open source company behind Alfresco were to cease to exist. Would Alfresco as an open source project survive? The talk is light on bullet/text so you may prefer to find a recording to get the full context.
Surf Code Camp walkthrough 1 was done as a joint exercise between the instructor and the class as a precursor to Lab 3. It covers Surf site construction basics.
Full solution source code is at http://ecmarchitect.com/images/green-energy-code-camp.zip
Surf Code Camp Lab 4 is the final lab in which a pages are added to the Green Energy site that facilitate browsing through the repository hierarchy using CMIS and Surf object associations.
Full solution source code is at http://ecmarchitect.com/images/green-energy-code-camp.zip
The focus in this deck is the Surf JavaScript API and remoting in particular. Learn how to make remote calls to the Alfresco Repository tier from the Surf presentation tier.
Apache and PHP: Why httpd.conf is your new BFF!Jeff Jones
Apache's configuration files can be used to configure how Apache operates, but they can also be used to configure PHP and how Apache httpd interacts with PHP. In this talk, Jeff explains the different ways Apache can be configured, explains many of the useful config options available for Apache modules, including our own mod_php, and showcases example of how they can be used with, and instead of, your PHP code.
Wes Leonardo - Putting AIR into your Application360|Conferences
The session will cover the unique aspects of taking your applications to the next level with AIR. The session will cover using the SQL Lite database, detecting online/offine, customize the skin of the application and working with the local file system. If you are just getting started and want a great primer to AIR, this is the session for you.
Introduction to one of the most established DevOps tools, Docker. First part is introduction to Docker itself, part two contains installation instructions of Docker for Windows. Part three gives example how easy it is for anyone to benefit from Docker and dockerized applications. Fourth part is example how easily developer can create development environment for themselves with aid from Docker.
Sprockets is an easy solution to managing large JavaScript codebases by letting you structure it, bundle it with related assets, and consolidate it as one single file, with pre-baked command-line tooling, CGI front and Rails plugin. It's a framework-agnostic open-source solution that makes for great serving performance while helping you structure and manage your codebase better.
Yahoo has developed the de facto standard for building fast front-ends for websites. The bad news: you have to follow 34 rules to get there. The good news: I'll take a subset of those rules, explain them, and show how you can implement those rules in an automated fashion to minimize impact on developers and designers for your high-traffic website.
No Docker? No Problem: Automating installation and config with AnsibleJeff Potts
In this talk I show how to bring stability and repeatability to your Alfresco installation by automating install and config management with Ansible.
This talk was originally given at Alfresco DevCon 2020 (virtual edition).
Moving From Actions & Behaviors to MicroservicesJeff Potts
My DevCon 2019 talk discusses how to make it easier to integrate Alfresco with other systems using an event-based approach. Two real world examples are discussed and demonstrated. The first is about reporting against Alfresco metadata. The second is about enriching metadata by running content through a Natural Language Processing (NLP) model. Both solutions work by listening to generic events generated by Alfresco and placed on an Apache Kafka queue. For the reporting example, the Spring Boot consumer subscribes to Kafka events, then fetches metadata via CMIS and indexes that into Elasticsearch. For the NLP example, a separate Spring Boot consumer subscribes to the same events, but in this case, fetches the content, extracts text using Apache Tika, runs the text through Apache OpenNLP, then writes back extracted entities to Alfresco via CMIS. These are relatively simple examples, but illustrate how a de-coupled, asynchronous, event-based approach can make integrating Alfresco with other systems easier.
Flexible Permissions Management with ACL TemplatesJeff Potts
This is was presented as an ignite-style lightning talk at DevCon 2018 in Lisbon. It discusses an open source add-on called ACL Templates which can be used to separate ACL settings from code.
Moving Gigantic Files Into and Out of the Alfresco RepositoryJeff Potts
This talk is a technical case study showing show Metaversant solved a problem for one of their clients, Noble Research Institute. Researchers at Noble deal with very large files which are often difficult to move into and out of the Alfresco repository.
Connecting Content Management Apps with CMISJeff Potts
Discusses ECM interoperability achieved when content repositories like Nuxeo implement a specification called Content Management Interoperability Services (CMIS).
Several years ago, James Dixon, CTO at Pentaho, published a paper called, “The Bees and the Trees: The Beekeeper Model of Commercial Open Source Software”. I have found that this metaphor is hugely helpful in explaining commercial open source to people. So in this talk I introduce James' model, then I use it as the context to discuss the state of the Alfresco community.
A recording of this session lives here: http://www.youtube.com/watch?v=_NSsz-sjbzg
Content Management Interoperability Services (CMIS) is the preferred API for writing code against Alfresco. This presentation explains how to get started using CMIS and covers some of the gotchas and limitations you should be aware of before you commit to CMIS for your project. This presentation was originally delivered at Alfresco Summit 2013 in Barcelona and Boston.
Apache Chemistry in Action: Using CMIS and your favorite language to unlock c...Jeff Potts
This presentation shows how the CMIS specification and Apache Chemistry can be used to create content-centric applications that work with any CMIS-compliant repository.
Alfresco: The Story of How Open Source Disrupted the ECM MarketJeff Potts
The early 90's saw the rise of powerful, inexpensive team collaboration software on one hand and huge document management systems on the other. Open source and cloud have brought us full circle. Today's businesses can implement extremely powerful productivity enhancing solutions quickly and easily. Alfresco capitalized on this trend. It used open source to get to the market quickly. It delivered functionality on par with legacy ECM as open source. Today, however, it is not just an open source alternative to things like Documentum and SharePoint, it is a visionary in the ECM market. This presentation tells that story, putting into context the things happening in ECM, collaboration, open source, and cloud from the 1990's to present day.
This presentation shows how the CMIS specification and Apache Chemistry can be used to create content-centric applications that work with any CMIS-compliant repository.
Building Content-Rich Java Apps in the Cloud with the Alfresco APIJeff Potts
This presentation, originally delivered at JavaOne on October 2, 2012, talks about why you should use Alfresco instead of rolling your own content repository and discusses the new public Alfresco API for writing content apps that persist content to Alfresco in the Cloud.
A brief introduction to the CMIS spec and some tips and tricks for developers new to CMIS. Demos showed how to install and use cmislib, the Python API for CMIS, and OpenCMIS, the Java API. Both projects are part of Apache Chemistry. Originally given as part of an Alfresco webinar. Recording: http://blogs.alfresco.com/wp/webcasts/2012/01/getting-started-with-cmis-2/
In the past, developers have chosen to develop their own content-centric apps from scratch or by leveraging low level libraries. A content repository like Alfresco can save time and cost. Even if you don't choose Alfresco, you should still consider leveraging a standard API like CMIS as much as possible.
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/
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™UiPathCommunity
In questo evento online gratuito, organizzato dalla Community Italiana di UiPath, potrai esplorare le nuove funzionalità di Autopilot, il tool che integra l'Intelligenza Artificiale nei processi di sviluppo e utilizzo delle Automazioni.
📕 Vedremo insieme alcuni esempi dell'utilizzo di Autopilot in diversi tool della Suite UiPath:
Autopilot per Studio Web
Autopilot per Studio
Autopilot per Apps
Clipboard AI
GenAI applicata alla Document Understanding
👨🏫👨💻 Speakers:
Stefano Negro, UiPath MVPx3, RPA Tech Lead @ BSP Consultant
Flavio Martinelli, UiPath MVP 2023, Technical Account Manager @UiPath
Andrei Tasca, RPA Solutions Team Lead @NTT Data
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
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.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
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.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
2. Hands-on Lab
Objectives
• Build a custom dashlet for Alfresco Share
• Select dashlet from configure dashboard page
• Add it to your dashboard to view it
Notes
• Alfresco Share is an Alfresco Surf-powered application
• Dashlets are web components
12/01/09 2
4. 1 - Preparation
Navigate to the site-webscripts directory
• $SHARE_HOME/WEB-INF/classes/alfresco/site-webscripts
Create a folder called demo
Navigate into the demo directory
• $SHARE_HOME/WEB-INF/classes/alfresco/site-webscripts/demo
Create a Web Script:
• helloworld
12/01/09 4
5. 2 – Hello World Dashlet
helloworld.get.desc.xml
<webscript>
<shortname>Hello World Dashlet</shortname>
<description>Hello World Dashlet</description>
<family>user-dashlet</family>
<url>/demo/helloworld</url>
</webscript>
helloworld.get.js
model.body = quot;All your base are belong to us!quot;;
helloworld.get.html.ftl
<div class=quot;dashletquot;>
<div class=quot;titlequot;>Hello World</div>
<div class=quot;bodyquot;>${body}</div>
</div>
12/01/09 5
6. 3 – Test it manually
Browse to
• http://labs3c:8080/share/service/index
Click on ‘Refresh’ to reset the Web Scripts cache
Test your dashlet
• http://labs3c:8080/share/service/demo/helloworld
12/01/09 6
7. 4 – View it in Share
Browse to
• http://labs3c:8080/share
Log in
• admin/admin
Click on ‘Customize Dashboard’
Click ‘Add Dashlets’
You should see your new dashlet
• Try adding it to your dashboard page
12/01/09 7
8. 5 – Web Script Configuration
Configuration files for Web Scripts
Allows Web Scripts to store configuration files in
associated XML
Let's give it a shot with our Hello World Dashlet
12/01/09 8
10. 6 – Test it manually
Browse to
http://labs3c:8080/share/service/index
●
Click on ‘Refresh’ to reset the Web Scripts cache
Test your dashlet
http://labs3c:8080/share/service/demo/helloworld
●
12/01/09 10
11. Wrap-up
In this lab, you...
• Created a simple Share Dashlet
• The Dashlet was a good old fashioned web script
• The web script read a parameter from a config file
12/01/09 Optaros and Client confidential. All rights reserved. 11