Modification audit logging and using zc.beforestorage to time travel. From #ploneconf2016 presentation, this is an idea for supporting a new kind of Undo in Plone 5.x.
A pinch of indirection, and don't cut yourself chopping onions...Sean Upton
Practical tips for using component architecture(s). Provides idea, opinions, idioms, tricks for using Zope Component Architecture (ZCA), and some notes about application of component-based design and development outside the Zope and Plone context (e.g. Python, generally; JavaScript).
JavaScript and Internet Controlled Hardware PrototypingJonathan LeBlanc
The electronics maker movement has led a massive shift in how people are re-engineering the world around them through rapid hardware prototyping. With the rise of inexpensive, wifi and bluetooth low energy enabled electronics, this hardware revolution is internet and mobile controlled, all through simple bridges to build the electronics intelligence in familiar web languages.
In this session, we will play with Arduino microcontrollers and JavaScript to take a first dive into the world of internet controlled electronics, exploring topics such as:
- Setting up an Arduino to be controlled through web APIs
- Using JavaScript language bridges on the Arduino
- The future of web controlled hardware prototyping
People willing to add new features to their websites have too much of a choice. Choosing and testing addons is a task that requires either developer-superpowers and a unlimited budget or blind faith and dumb luck. In this talk we'll find out how to walk the middle ground and live to tell the tale.
See a video of the talk at http://www.youtube.com/watch?v=Sc6NkqaSjqw
Android devices come in all shapes and sizes, with varying performance levels and APIs. This is one of the reasons that writing tests for Android applications can be so daunting, let alone the seemingly endless number of tools available to write those tests. This presentation discusses three simple steps to get started with writing tests for your Android applications.
A pinch of indirection, and don't cut yourself chopping onions...Sean Upton
Practical tips for using component architecture(s). Provides idea, opinions, idioms, tricks for using Zope Component Architecture (ZCA), and some notes about application of component-based design and development outside the Zope and Plone context (e.g. Python, generally; JavaScript).
JavaScript and Internet Controlled Hardware PrototypingJonathan LeBlanc
The electronics maker movement has led a massive shift in how people are re-engineering the world around them through rapid hardware prototyping. With the rise of inexpensive, wifi and bluetooth low energy enabled electronics, this hardware revolution is internet and mobile controlled, all through simple bridges to build the electronics intelligence in familiar web languages.
In this session, we will play with Arduino microcontrollers and JavaScript to take a first dive into the world of internet controlled electronics, exploring topics such as:
- Setting up an Arduino to be controlled through web APIs
- Using JavaScript language bridges on the Arduino
- The future of web controlled hardware prototyping
People willing to add new features to their websites have too much of a choice. Choosing and testing addons is a task that requires either developer-superpowers and a unlimited budget or blind faith and dumb luck. In this talk we'll find out how to walk the middle ground and live to tell the tale.
See a video of the talk at http://www.youtube.com/watch?v=Sc6NkqaSjqw
Android devices come in all shapes and sizes, with varying performance levels and APIs. This is one of the reasons that writing tests for Android applications can be so daunting, let alone the seemingly endless number of tools available to write those tests. This presentation discusses three simple steps to get started with writing tests for your Android applications.
This deck represents our current thinking about the best way to build enterprise SaaS software in 2015 - using a variety of techniques from several disciplines.
Since I wrote this I have also become very interested in resilience engineering and the notion that web developers are primarily engaged in the construction of socio-technical systems. When I rewrite this I plan to talk about how we should try to minimize mean-time-to-recover (MTTR) instead of mean-time-between-failures (MTBF), and how continuous deployment grows a safety culture around your operations.
I redacted most of the examples that illustrate these points because they use sensitive code examples or URLs. If you want to see the rest of slides, join us!
Learn about the basics of UXR, a use case around Usability testing, and Tells & Smells that things are going well or badly, and resources to learn more!
Making Software Management tools work for you - 2011 PHPBenelux ConferenceJohn Mertic
With the advent of such rich open source tools such as Subversion, Git, Trac, CruiseControl, and Review Board, managing software projects of any size has become much easier than ever. But how do you best use these tools in your organization? Picking the tool for you team is not a trivial task, and it requires insight into your team’s size, dynamic, and experience level; these tools are far from one-size-fits-all solutions. In this talk we’ll look at how these tools can fit into any software project and how to pick the right tool for your project, helping you make your team more efficient than before.
HTML5 and CSS3 offer some great features that everyone is clamoring to use. However, not everyone can simply rip apart their site and redo all of their markup and styling across the board. There are some quick wins, especially with CSS3, to be had that you can integrate into your site without rewriting your whole entire site.
Los más de 70 años de experiencia de Abengoa, junto con su inversión permanente en I+D+i, permiten a esta compañía ser uno de los principales actores a nivel mundial en el campo de la desalación.
This deck represents our current thinking about the best way to build enterprise SaaS software in 2015 - using a variety of techniques from several disciplines.
Since I wrote this I have also become very interested in resilience engineering and the notion that web developers are primarily engaged in the construction of socio-technical systems. When I rewrite this I plan to talk about how we should try to minimize mean-time-to-recover (MTTR) instead of mean-time-between-failures (MTBF), and how continuous deployment grows a safety culture around your operations.
I redacted most of the examples that illustrate these points because they use sensitive code examples or URLs. If you want to see the rest of slides, join us!
Learn about the basics of UXR, a use case around Usability testing, and Tells & Smells that things are going well or badly, and resources to learn more!
Making Software Management tools work for you - 2011 PHPBenelux ConferenceJohn Mertic
With the advent of such rich open source tools such as Subversion, Git, Trac, CruiseControl, and Review Board, managing software projects of any size has become much easier than ever. But how do you best use these tools in your organization? Picking the tool for you team is not a trivial task, and it requires insight into your team’s size, dynamic, and experience level; these tools are far from one-size-fits-all solutions. In this talk we’ll look at how these tools can fit into any software project and how to pick the right tool for your project, helping you make your team more efficient than before.
HTML5 and CSS3 offer some great features that everyone is clamoring to use. However, not everyone can simply rip apart their site and redo all of their markup and styling across the board. There are some quick wins, especially with CSS3, to be had that you can integrate into your site without rewriting your whole entire site.
Los más de 70 años de experiencia de Abengoa, junto con su inversión permanente en I+D+i, permiten a esta compañía ser uno de los principales actores a nivel mundial en el campo de la desalación.
Personal Branding Masterclass for Coaches, Consultants, Solopreneurs & Small ...horling wong
Learn how to create a personal brand to successfully market a coaching, consulting, or personality-driven business:
:: How to avoid the marketing hamster wheel and bright shiny objects by creating a solid personal brand.
:: The 5 CRITICAL LAYERS of a powerful personal brand that builds trust, credibility and relationships to get more clients.
:: The 3 COPYWRITING STRATEGIES for content that boldly and unapologetically expresses your personal brand.
To access full video training, visit http://business-soulwork.com/personal-branding-masterclass/
Does Django scale? How to manage traffic peaks? What happens when the database grows too big? How to find (and fix) the bottlenecks?
We will overview the basics concepts, we'll use metrics to find bottlenecks, and finally we'll see some tips and tricks to improve the scalability and the performance of a Django project.
Main topics:
- System architecture
- Database performance
- Finding bottlenecks
- Monitoring, profiling, debugging
- Query optimization
- Dealing with a slow admin
- Queues and workers
- Faster tests
Talk given at #EuroPython 2016: https://ep2016.europython.eu/conference/talks/efficient-django
Deploying your Drupal site, Upgrading your Drupal Site, Scaling, Clustering and Monitoring it ... all topics Developers are often not involved with ...
Devops For Drupal explains the Devops problem, to a Drupal audience .
Slides from my last presentation at the Cape Town Meteor meetup, on optimising the UI, specifically for Hybrid apps and for Meteor JS hybrid apps.
The main thrust is really more about design patterns, and carefully controlling data management in your mobile app, with great examples of these patterns out in the real world.
see the mobile patterns video here : https://www.youtube.com/watch?v=e6WWX4TF3UI
Droidcon Spain 2016 - The Pragmatic Android Programmer: from hype to realityDaniel Gallego Vico
This presentation shows how to be a pragmatic Android programmer by showing real examples of applications/products developed in BQ attending to three important topics:
- Why and how to implement a pragmatic CLEAN architecture with a custom dependency injection framework and ReactiveX features.
- Why and how to implement unit, integration, view and smoke tests in every CLEAN layer and what tools should be used.
- Why and how to implement pragmatic Continuous
Development/Testing/Integration/Delivery by showing several tricks, plugins and snippets that you could use as a daily basis.
This was a presentation given at San Diego Python's Django Day:
http://www.meetup.com/pythonsd/events/95751792/
https://github.com/pythonsd/learning-django
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1KRPXlL.
Brian Holt talks about what is React and is desirable; what are some specific things to pay attention to for performance when writing React; some general web performance tips; what are some lessons learned while helping write m.reddit.com using React. Filmed at qconsf.com.
Brian Holt is Senior UI Engineer at Netflix.
Guide to continuous delivery and the journey wix.com had made transitioning to DevOps and continuous delivery culture making ~100 production changes daily
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Globus
The U.S. Geological Survey (USGS) has made substantial investments in meeting evolving scientific, technical, and policy driven demands on storing, managing, and delivering data. As these demands continue to grow in complexity and scale, the USGS must continue to explore innovative solutions to improve its management, curation, sharing, delivering, and preservation approaches for large-scale research data. Supporting these needs, the USGS has partnered with the University of Chicago-Globus to research and develop advanced repository components and workflows leveraging its current investment in Globus. The primary outcome of this partnership includes the development of a prototype enterprise repository, driven by USGS Data Release requirements, through exploration and implementation of the entire suite of the Globus platform offerings, including Globus Flow, Globus Auth, Globus Transfer, and Globus Search. This presentation will provide insights into this research partnership, introduce the unique requirements and challenges being addressed and provide relevant project progress.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...informapgpstrackings
Keep tabs on your field staff effortlessly with Informap Technology Centre LLC. Real-time tracking, task assignment, and smart features for efficient management. Request a live demo today!
For more details, visit us : https://informapuae.com/field-staff-tracking/
Experience our free, in-depth three-part Tendenci Platform Corporate Membership Management workshop series! In Session 1 on May 14th, 2024, we began with an Introduction and Setup, mastering the configuration of your Corporate Membership Module settings to establish membership types, applications, and more. Then, on May 16th, 2024, in Session 2, we focused on binding individual members to a Corporate Membership and Corporate Reps, teaching you how to add individual members and assign Corporate Representatives to manage dues, renewals, and associated members. Finally, on May 28th, 2024, in Session 3, we covered questions and concerns, addressing any queries or issues you may have.
For more Tendenci AMS events, check out www.tendenci.com/events
A Comprehensive Look at Generative AI in Retail App Testing.pdfkalichargn70th171
Traditional software testing methods are being challenged in retail, where customer expectations and technological advancements continually shape the landscape. Enter generative AI—a transformative subset of artificial intelligence technologies poised to revolutionize software testing.
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteGoogle
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-pilot-review/
AI Pilot Review: Key Features
✅Deploy AI expert bots in Any Niche With Just A Click
✅With one keyword, generate complete funnels, websites, landing pages, and more.
✅More than 85 AI features are included in the AI pilot.
✅No setup or configuration; use your voice (like Siri) to do whatever you want.
✅You Can Use AI Pilot To Create your version of AI Pilot And Charge People For It…
✅ZERO Manual Work With AI Pilot. Never write, Design, Or Code Again.
✅ZERO Limits On Features Or Usages
✅Use Our AI-powered Traffic To Get Hundreds Of Customers
✅No Complicated Setup: Get Up And Running In 2 Minutes
✅99.99% Up-Time Guaranteed
✅30 Days Money-Back Guarantee
✅ZERO Upfront Cost
See My Other Reviews Article:
(1) TubeTrivia AI Review: https://sumonreview.com/tubetrivia-ai-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar
The European Union Agency for Law Enforcement Cooperation (Europol) has suffered an alleged data breach after a notorious threat actor claimed to have exfiltrated data from its systems. Infamous data leaker IntelBroker posted on the even more infamous BreachForums hacking forum, saying that Europol suffered a data breach this month.
The alleged breach affected Europol agencies CCSE, EC3, Europol Platform for Experts, Law Enforcement Forum, and SIRIUS. Infiltration of these entities can disrupt ongoing investigations and compromise sensitive intelligence shared among international law enforcement agencies.
However, this is neither the first nor the last activity of IntekBroker. We have compiled for you what happened in the last few days. To track such hacker activities on dark web sources like hacker forums, private Telegram channels, and other hidden platforms where cyber threats often originate, you can check SOCRadar’s Dark Web News.
Stay Informed on Threat Actors’ Activity on the Dark Web with SOCRadar!
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
Recreation management software streamlines operations by automating key tasks such as scheduling, registration, and payment processing, reducing manual workload and errors. It provides centralized management of facilities, classes, and events, ensuring efficient resource allocation and facility usage. The software offers user-friendly online portals for easy access to bookings and program information, enhancing customer experience. Real-time reporting and data analytics deliver insights into attendance and preferences, aiding in strategic decision-making. Additionally, effective communication tools keep participants and staff informed with timely updates. Overall, recreation management software enhances efficiency, improves service delivery, and boosts customer satisfaction.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
Games are powerful teaching tools, fostering hands-on engagement and fun. But they require careful consideration to succeed. Join me to explore factors in running and selecting games, ensuring they serve as effective teaching tools. Learn to maintain focus on learning objectives while playing, and how to measure the ROI of gaming in education. Discover strategies for pitching gaming to leadership. This session offers insights, tips, and examples for coaches, team leads, and enterprise leaders seeking to teach from simple to complex concepts.
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
Listen to the keynote address and hear about the latest developments from Rachana Ananthakrishnan and Ian Foster who review the updates to the Globus Platform and Service, and the relevance of Globus to the scientific community as an automation platform to accelerate scientific discovery.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
1. A novel approach to undo
Modification audit logging and using
zc.beforestorage to time travel.
Sean Upton / UPIQ
#ploneconf2016 | @sdupton
2. Disclaimers
• Experimental approach
• Unfinished work in progress
• I’m here to pitch an idea about undo, whose
principles have been field tested…
– ... But we need a UI for this.
– .... I’m working on it.
• Today, we’ll look at the pieces and talk about
them.
• Maybe find a way forward for practical undo?
#ploneconf2016 | @sdupton
3. Motivations
• Reasonable degree of interest on Github and
Twitter.
• Some of my users cost me hours fixing human
errors with programmatic monkey-wrenching.
• If we can use this programmatically in
repeatable ways, we can make something
user-facing, no?
• Because we cannot use ”Undo” to undo.
#ploneconf2016 | @sdupton
4. The basics: audit logging
• Audit log of all changes, stored in ZODB
– Logging now is synchronous, may be async in future,
TBD.
– Log all of:
• Deletion
• Modification
• Move
• Addition
– Log independent of Catalog.
– Handlers call logging system
• Logging components adapt site, use annotations.
#ploneconf2016 | @sdupton
5. Audit logging: usage
• Core components tested, but… still needs a
good UI.
• Outside of core use case, this could be used
for regulatory audit requirements (e.g. HIPAA).
• UI plan is enumerating in views:
– A view to enumerate changes, by “facility”
– A view to prune changes
• We may need better possible ZODB conflict
resolution strategy for queuing (LIFO insertion)
of modification facilities logged.
#ploneconf2016 | @sdupton
6. Okay, so you log every change?
• Right, and we will have view to enumerate
these changes, in reverse chronological
(insertion) order.
– With filtering
– With batching
• For regulatory logging, you could to this to a
data retention threshold before pruning, or not
prune this at all. The change records are
small.
#ploneconf2016 | @sdupton
7. Facility
• For each type of change we have a facility:
– Modifications
– Deletions
– Additions
– Moves / renames
• Each logs records with:
– UID
– Path
– Authenticated user
– Timestamp (python datetime, currently local time)
#ploneconf2016 | @sdupton
8. But what do we do with this?
FIX HUMAN ERRORS!
#ploneconf2016 | @sdupton
9. The plan
• I have used zc.beforestorage multiple times to
fix human errors, each time programmatically.
• If what you have is within your kept history,
going back in time is easy.
• We want to make this user-facing, not a
programmer’s problem.
• I’m creating a package called plone.wabac as
a transitional/experimental proof of concept.
– Now soliciting collaborators! J
#ploneconf2016 | @sdupton
10. plone.wabac
• WABAC == “wayback”
• Transitional add-on
• Half-finished
• May get exploded and
federated elsewhere.
• Assumed goal of
eventual PLIP, once
proven.
• Want this to be testable
by users, uninstallable
in meantime.
#ploneconf2016 | @sdupton
11. Restoration, not “Undo”
• We want to restore item to previous known-
good state:
– Before accidental deletion
– Before modification that was problematic.
• This might compete with CMFEditions, so may be a non-
problem.
• But my site stores non-content ZODB stuff on content objects,
so I cannot merely use CMFEditions for rollback.
– Before renaming or moving.
• User picks item from audit log, and clicks
“restore”. Or more than one item at a time.
#ploneconf2016 | @sdupton
12. zc.beforestorage
• Time-travel through your kept history.
• !! Requires you keep history.
• !! Requires you keep enough history.
– We could use this on kept FileStorage backups too, if
we were clever and did not want to only go through
live history.
• But that is not in scope yet, requires configuration.
• Mostly, I want to undo things easily when the
“Oh ****” phone call comes in.
– Or better, tell the site admin how to fix it.
#ploneconf2016 | @sdupton
13. Programmatic use
• Load storage wrapper programmatically.
• setSite() on the time-travelled version.
• Get your content;
• ZEXP export it;
• setSite() on live target;
• Restore from ZEXP.
• Repeat.
– Show example code
#ploneconf2016 | @sdupton
14. Security disclaimers
• We might want to be able to stop ability to
undo things (e.g. delete something very bad,
very quickly, and very permanently).
• My vision now is a site-wide audit logging
facility accessible to Site Administrator or
Manager role.
• We can make this placeful if we index audit
trail by path.
– Not yet in scope.
– Need to ponder permissions for restoration.
#ploneconf2016 | @sdupton
15. Next steps
• Finish the UI for enumeration, filtering, and
pruning of audit data.
• Come up with reasonable tactic for avoiding
conflict for audit logging key insertion.
• Views and adapters for restoration via
zc.beforestorage.
• Logging the restorations themselves.
• Prove concept universally useful, then PLIP it?
#ploneconf2016 | @sdupton