Dauria Aerospace develops new ways to build low-cost satellites, reducing costs for earth observation data drastically. Affordable geospatial data allows small businesses to pioneer new models, like a low-cost parcel monitoring service for local farmers. However, the OpenLayers editor module in Drupal has some bugs that need to be addressed when capturing and validating geospatial user inputs like polygons.
DroidKnight 2018 State machine by Selaed classMyeongin Woo
The document discusses view state management in Android. It explains that as views become more complex, the number of states increases, making state management difficult. It introduces sealed classes in Kotlin as a way to better organize view states and prevent issues like crashes from invalid states. Adding new states easily without errors is discussed as an advantage of using sealed classes.
This document describes a Javabean that allows displaying a Jslider component in an Oracle Forms application. The Javabean handles displaying the slider, setting properties like background color, and firing events when the slider value changes. It provides methods to initialize the slider, set properties like value, and get the current value. The sample Forms application demonstrates using the bean by initializing slider properties and handling value change events.
Design pattern - Iterator, Mediator and MementoSean Tsai
The document discusses three design patterns: Iterator, Mediator, and Memento.
The Iterator pattern provides a way to access elements of an aggregate object sequentially without exposing its underlying structure. The Mediator pattern reduces complexity between communicating objects by introducing a mediator object. The Memento pattern is used to restore an object to a previous state by capturing and storing its internal state in a memento object. Sample code implementations and UML diagrams are provided for each pattern.
How to Mess Up Your Angular UI Componentscagataycivici
This document provides tips on how to potentially mess up Angular UI components. It begins by introducing the author, Çağatay Çivici, and his background and interests. It then covers various topics that could cause issues, such as one-way vs two-way binding, ngModel support, templating, content projection, change detection strategies, accessing the DOM, global events, and third-party integration. The document aims to help developers avoid common pitfalls when building Angular UI components through a series of examples and case studies.
The document discusses various React performance optimization techniques including composition, conditional rendering, inline handlers, and constant components. It provides examples of refactoring components to separate concerns and prevent unnecessary re-renders through techniques like lifting state, extracting child components, and using constant properties.
DroidKnight 2018 State machine by Selaed classMyeongin Woo
The document discusses view state management in Android. It explains that as views become more complex, the number of states increases, making state management difficult. It introduces sealed classes in Kotlin as a way to better organize view states and prevent issues like crashes from invalid states. Adding new states easily without errors is discussed as an advantage of using sealed classes.
This document describes a Javabean that allows displaying a Jslider component in an Oracle Forms application. The Javabean handles displaying the slider, setting properties like background color, and firing events when the slider value changes. It provides methods to initialize the slider, set properties like value, and get the current value. The sample Forms application demonstrates using the bean by initializing slider properties and handling value change events.
Design pattern - Iterator, Mediator and MementoSean Tsai
The document discusses three design patterns: Iterator, Mediator, and Memento.
The Iterator pattern provides a way to access elements of an aggregate object sequentially without exposing its underlying structure. The Mediator pattern reduces complexity between communicating objects by introducing a mediator object. The Memento pattern is used to restore an object to a previous state by capturing and storing its internal state in a memento object. Sample code implementations and UML diagrams are provided for each pattern.
How to Mess Up Your Angular UI Componentscagataycivici
This document provides tips on how to potentially mess up Angular UI components. It begins by introducing the author, Çağatay Çivici, and his background and interests. It then covers various topics that could cause issues, such as one-way vs two-way binding, ngModel support, templating, content projection, change detection strategies, accessing the DOM, global events, and third-party integration. The document aims to help developers avoid common pitfalls when building Angular UI components through a series of examples and case studies.
The document discusses various React performance optimization techniques including composition, conditional rendering, inline handlers, and constant components. It provides examples of refactoring components to separate concerns and prevent unnecessary re-renders through techniques like lifting state, extracting child components, and using constant properties.
Ask not only what your Drupal can do for you, ask what you can do for your Dr...DrupalCamp MSK
The document discusses how Drupal became a tool of empowerment through an open source community-driven model. It describes the universal principle behind this as creating something helpful, creating a self-organizing community structure, and letting people contribute through positive feedback loops. Active local communities like the Munich Drupal user group help foster expertise, economic opportunities, and success through collaboration and knowledge sharing.
Гит, несмотря на то, что все им пользуются, напоминает айсберг и огромная часть его функционала загадочна для большинства разработчиков. Я попытаюсь дать обзор правильных практик работы с гитом в применении к Друпал-проектам, осветить некоторые тёмные, но интересные закоулки, предостеречь от ошибок, которые сам совершал.
Открытые данные, как инструмент создания собственных коммерческих приложений ...DrupalCamp MSK
Открытые государственные данные (открытые данные) – это информация (в том числе документированная), созданная в пределах своих полномочий государственными органами, либо поступившая в указанные органы и организации, а также информационно-аналитическими организациями, участвующими в публикации собственных открытых данных на территории Российской Федерации, которая подлежит размещению в сети Интернет в формате, обеспечивающем ее автоматическую обработку в целях повторного использования без предварительного изменения человеком (машиночитаемый формат), и может свободно использоваться в любых соответствующих закону целях любыми лицами независимо от формы ее размещения (простая совокупность сведений, база данных и т.д.)».
This document discusses improving collaboration among freelance Drupal developers. It suggests that freelancers sometimes turn down work because they are too busy or because projects are too large to handle alone. Greater collaboration through referrals and temporary project teams could help freelancers smooth out gaps in work orders and take on larger projects. The document asks readers about their current collaboration practices and barriers to collaborating more. It proposes initial steps like communication structures and establishing skills to facilitate referrals and team building. Open questions are also raised about supportive structures like project management support, liability, membership structure, commissions, and potential sales roles.
Облачные технологии, которые упрощают жизнь разработчикам - Игорь ЛукяновDrupalCamp MSK
Индустрия веб-хостинга и хранения данных в последние годы переживает второе рождение за счет появления новых технологий и концепций, объединенных модным словом «облачный». Цель доклада — дать предметный обзор этих технологий и концепций и рассказать о том, как они могут вам помочь уже сегодня в решении повседневных практических задач.
Тезисы:
В чем заключаются недостатки традиционных технологий хостинга, какие проблемы мы (хостинг-идустрия) пытаемся решить.
«Виртуализация всего» и software-defined-everything — две главных парадигмы, которые сегодня определяют изменения в отрасли
Обзор ключевых трендов: виртуализация железа, виртуализация систем хранения данных (software-defined storage), виртуализация сетей (software defined networks).
Рассмотрение повседневных бизнес-процессов, которые можно прямо сегодня сделать проще, быстрее и дешевле при помощи новых технологий.
Хуки, токены, рулсы, плагины - пишем "правильный" код под Друпал - Андрей Бе...DrupalCamp MSK
This document discusses best practices for developing modules for Drupal, including planning before coding, utilizing Drupal's built-in features, using tokens, rules, views bulk operations, elements, and plugins. It provides examples of how modules like HybridAuth and uLogin implement these concepts and recommends designing modules with flexibility, extensibility, and light architecture in mind. The document concludes by introducing a sample module that tracks and displays popular site content over time without loading the servers.
Облачные технологии предлагают масс преимуществ для размещения веб-приложений. Надежность, экономия, возможность отказаться от своей инфраструктуры, автоматическое масштабирование и многое другое - вот плюсы облачного размещения.
В этом докладе мы рассмотрим как облачная платформа Azure позволит вам получить все преимущества для хостинга проектов на базе Drupal на Linux или Windows в виде PaaS-решения или просто в виртуальных машинах.
От фрилансера до веб-студии за 5 шагов - Геннадий КолтунDrupalCamp MSK
Доклад базируется на моём опыте создания и развития региональной веб-студии ib.by, которая специализируется на разработке недорогих решений на CMS Drupal для малых и средних клиентов из частного сектора. Может быть интересен:
фрилансерам, которые задумываются об открытии собственной компании;
коллегам из регионов, которые сталкиваются с похожими проблемами;
московским игрокам, которые хотят лучше понять «есть ли жизнь за МКАДом».
This document outlines 8 parameters for quality control testing of herbal drugs:
1. Macroscopic examination including organoleptic evaluation of color, odor, shape, etc.
2. Microscopic evaluation to identify plant species and parts.
3. Determination of foreign matter through visual inspection or microscopy.
4. Determination of ash content through burning to measure total ash and acid-insoluble ash.
5. Determination of heavy metals using color reactions or instrumental analysis.
6. Determination of microbial contaminants and aflatoxins through standard procedures.
7. Determination of swelling index by measuring volume after shaking in water.
8. Determination of pesticide residues by extracting and
This document summarizes key concepts in pharmacodynamics from a third semester pharmaceutical sciences group project. It defines pharmacodynamics as how drugs act on the body and influence the magnitude of response based on drug concentration. Most drugs exert their effects by interacting with receptors, and substances that can bind receptors and produce biological responses are called agonists. The relationship between drug concentration and response is shown using drug response curves, where efficacy is the maximum response and potency is the amount needed to produce the maximum effect, such as Candesartan being more potent than Ibesartan due to its lower dose range.
This session will deliver insight into how a Commerce shop can be built to sell geodetic satellite data.
An aerospace company builds compact and lightweight satellites which collect earth observation data. This data are sold through a shop built with Drupal Commerce.
Some of the technical challenges:
- how Commerce products can be made configurable for customers by drawing their areas of interest in an Open Layers Map
- how sophisticated geographical computations can be integrated into Drupal by using PostGIS functions
- how incompatibilities between Drupal caching and the Open Layers Drawing tools were overcome
Why is crud a bad idea - focus on real scenariosDivante
This document discusses why CRUD (Create, Read, Update, Delete) is generally not a good approach for designing application code and APIs. It argues that entities should follow real business rules and scenarios rather than allowing arbitrary setting of attributes. Setters in particular are problematic as they don't map to real-world actions and don't enforce data integrity. The document recommends focusing on expressive methods that model real use cases rather than generic update operations. It also discusses how to add a CRUD layer on top of an internal domain model if needed while still maintaining encapsulation. The key takeaway is that applications should be designed around rich domain objects and real business behaviors rather than simple data access patterns.
The document discusses dependency injection (DI) in Magento. It describes the traditional "pull" approach used in Magento where classes directly instantiate dependencies, leading to tightly coupled code. It then introduces the "push" approach using a DI container, where dependencies are injected into classes rather than pulled, reducing coupling. It provides examples of how Magento's object manager implements DI to improve testability and flexibility of classes.
The document discusses using the Lithium PHP framework to build a photo blog application. It provides examples of defining a Photos model to interact with photo data, building views to display and edit photos, implementing a PhotosController to handle requests and define actions, and setting routes. The model saves photo data and tags to the database. Views are used to display photo details, edit forms, and render tags as links. The controller handles index, view, add, edit and nearby location based actions. Routes are also defined, including one to directly serve photo image files.
Ask not only what your Drupal can do for you, ask what you can do for your Dr...DrupalCamp MSK
The document discusses how Drupal became a tool of empowerment through an open source community-driven model. It describes the universal principle behind this as creating something helpful, creating a self-organizing community structure, and letting people contribute through positive feedback loops. Active local communities like the Munich Drupal user group help foster expertise, economic opportunities, and success through collaboration and knowledge sharing.
Гит, несмотря на то, что все им пользуются, напоминает айсберг и огромная часть его функционала загадочна для большинства разработчиков. Я попытаюсь дать обзор правильных практик работы с гитом в применении к Друпал-проектам, осветить некоторые тёмные, но интересные закоулки, предостеречь от ошибок, которые сам совершал.
Открытые данные, как инструмент создания собственных коммерческих приложений ...DrupalCamp MSK
Открытые государственные данные (открытые данные) – это информация (в том числе документированная), созданная в пределах своих полномочий государственными органами, либо поступившая в указанные органы и организации, а также информационно-аналитическими организациями, участвующими в публикации собственных открытых данных на территории Российской Федерации, которая подлежит размещению в сети Интернет в формате, обеспечивающем ее автоматическую обработку в целях повторного использования без предварительного изменения человеком (машиночитаемый формат), и может свободно использоваться в любых соответствующих закону целях любыми лицами независимо от формы ее размещения (простая совокупность сведений, база данных и т.д.)».
This document discusses improving collaboration among freelance Drupal developers. It suggests that freelancers sometimes turn down work because they are too busy or because projects are too large to handle alone. Greater collaboration through referrals and temporary project teams could help freelancers smooth out gaps in work orders and take on larger projects. The document asks readers about their current collaboration practices and barriers to collaborating more. It proposes initial steps like communication structures and establishing skills to facilitate referrals and team building. Open questions are also raised about supportive structures like project management support, liability, membership structure, commissions, and potential sales roles.
Облачные технологии, которые упрощают жизнь разработчикам - Игорь ЛукяновDrupalCamp MSK
Индустрия веб-хостинга и хранения данных в последние годы переживает второе рождение за счет появления новых технологий и концепций, объединенных модным словом «облачный». Цель доклада — дать предметный обзор этих технологий и концепций и рассказать о том, как они могут вам помочь уже сегодня в решении повседневных практических задач.
Тезисы:
В чем заключаются недостатки традиционных технологий хостинга, какие проблемы мы (хостинг-идустрия) пытаемся решить.
«Виртуализация всего» и software-defined-everything — две главных парадигмы, которые сегодня определяют изменения в отрасли
Обзор ключевых трендов: виртуализация железа, виртуализация систем хранения данных (software-defined storage), виртуализация сетей (software defined networks).
Рассмотрение повседневных бизнес-процессов, которые можно прямо сегодня сделать проще, быстрее и дешевле при помощи новых технологий.
Хуки, токены, рулсы, плагины - пишем "правильный" код под Друпал - Андрей Бе...DrupalCamp MSK
This document discusses best practices for developing modules for Drupal, including planning before coding, utilizing Drupal's built-in features, using tokens, rules, views bulk operations, elements, and plugins. It provides examples of how modules like HybridAuth and uLogin implement these concepts and recommends designing modules with flexibility, extensibility, and light architecture in mind. The document concludes by introducing a sample module that tracks and displays popular site content over time without loading the servers.
Облачные технологии предлагают масс преимуществ для размещения веб-приложений. Надежность, экономия, возможность отказаться от своей инфраструктуры, автоматическое масштабирование и многое другое - вот плюсы облачного размещения.
В этом докладе мы рассмотрим как облачная платформа Azure позволит вам получить все преимущества для хостинга проектов на базе Drupal на Linux или Windows в виде PaaS-решения или просто в виртуальных машинах.
От фрилансера до веб-студии за 5 шагов - Геннадий КолтунDrupalCamp MSK
Доклад базируется на моём опыте создания и развития региональной веб-студии ib.by, которая специализируется на разработке недорогих решений на CMS Drupal для малых и средних клиентов из частного сектора. Может быть интересен:
фрилансерам, которые задумываются об открытии собственной компании;
коллегам из регионов, которые сталкиваются с похожими проблемами;
московским игрокам, которые хотят лучше понять «есть ли жизнь за МКАДом».
This document outlines 8 parameters for quality control testing of herbal drugs:
1. Macroscopic examination including organoleptic evaluation of color, odor, shape, etc.
2. Microscopic evaluation to identify plant species and parts.
3. Determination of foreign matter through visual inspection or microscopy.
4. Determination of ash content through burning to measure total ash and acid-insoluble ash.
5. Determination of heavy metals using color reactions or instrumental analysis.
6. Determination of microbial contaminants and aflatoxins through standard procedures.
7. Determination of swelling index by measuring volume after shaking in water.
8. Determination of pesticide residues by extracting and
This document summarizes key concepts in pharmacodynamics from a third semester pharmaceutical sciences group project. It defines pharmacodynamics as how drugs act on the body and influence the magnitude of response based on drug concentration. Most drugs exert their effects by interacting with receptors, and substances that can bind receptors and produce biological responses are called agonists. The relationship between drug concentration and response is shown using drug response curves, where efficacy is the maximum response and potency is the amount needed to produce the maximum effect, such as Candesartan being more potent than Ibesartan due to its lower dose range.
This session will deliver insight into how a Commerce shop can be built to sell geodetic satellite data.
An aerospace company builds compact and lightweight satellites which collect earth observation data. This data are sold through a shop built with Drupal Commerce.
Some of the technical challenges:
- how Commerce products can be made configurable for customers by drawing their areas of interest in an Open Layers Map
- how sophisticated geographical computations can be integrated into Drupal by using PostGIS functions
- how incompatibilities between Drupal caching and the Open Layers Drawing tools were overcome
Why is crud a bad idea - focus on real scenariosDivante
This document discusses why CRUD (Create, Read, Update, Delete) is generally not a good approach for designing application code and APIs. It argues that entities should follow real business rules and scenarios rather than allowing arbitrary setting of attributes. Setters in particular are problematic as they don't map to real-world actions and don't enforce data integrity. The document recommends focusing on expressive methods that model real use cases rather than generic update operations. It also discusses how to add a CRUD layer on top of an internal domain model if needed while still maintaining encapsulation. The key takeaway is that applications should be designed around rich domain objects and real business behaviors rather than simple data access patterns.
The document discusses dependency injection (DI) in Magento. It describes the traditional "pull" approach used in Magento where classes directly instantiate dependencies, leading to tightly coupled code. It then introduces the "push" approach using a DI container, where dependencies are injected into classes rather than pulled, reducing coupling. It provides examples of how Magento's object manager implements DI to improve testability and flexibility of classes.
The document discusses using the Lithium PHP framework to build a photo blog application. It provides examples of defining a Photos model to interact with photo data, building views to display and edit photos, implementing a PhotosController to handle requests and define actions, and setting routes. The model saves photo data and tags to the database. Views are used to display photo details, edit forms, and render tags as links. The controller handles index, view, add, edit and nearby location based actions. Routes are also defined, including one to directly serve photo image files.
The document discusses techniques for writing clean JavaScript code. It provides examples of code smells and improvements to address issues like attaching events from the outside, separating selection from logic, shallow scope, overwriting default behavior, and separating logic from views. The document advocates for practices like modularizing functions, separating DOM manipulation from models, and creating model objects to represent DOM elements rather than directly manipulating the DOM. It encourages learning clean JavaScript techniques to write better structured and more maintainable code.
Tests should focus on validating behavior and outcomes rather than implementation details. Avoid testing private methods or mocking them, as this tests implementation rather than public interface. Follow a test-driven development process of red-green-refactor to incrementally develop testable code and avoid large untested code blocks. Workshops were offered to help learn techniques for writing high-quality unit tests.
Юрий Буянов «Squeryl — ORM с человеческим лицом»e-Legion
This document provides examples of using Squeryl, a type-safe Scala ORM. It demonstrates how to perform common ORM tasks like queries, updates, deletes and relationships in a type-safe way using Squeryl's SQL-based DSL. Key features highlighted include composite queries, nested selects, pagination, grouping, joins, stateless and stateful relationships. The document also briefly mentions Squeryl's compile-time optimizations and handling of optional parameters. Overall, the document serves as a tutorial introducing the basics of Squeryl and its capabilities as a type-safe Scala ORM.
In 2010, I told everyone how to start unit testing Zend Framework applications. In 2011, let’s take this a step further by testing services, work flows and performance. Looking to raise the bar on quality? Let this talk be the push you need to improve your Zend Framework projects.
jQuery & 10,000 Global Functions: Working with Legacy JavaScriptGuy Royse
Long ago, in the late days of the first Internet boom, before jQuery, before Underscore, before Angular, there was a web application built by a large corporation. This application was written as a server-side application using server-side technology like Java or PHP. A tiny seed of JavaScript was added to some of the pages of this application to give it a little sizzle.
Over the ages, this tiny bit of JavaScript grew like kudzu. Most of it was embedded in the HTML in
The document discusses unit testing Zend Framework applications. It provides an overview of setting up PHPUnit for testing, including creating a phpunit.xml file and TestHelper bootstrap file. It also discusses testing Zend Forms and Models, including writing tests to validate form data and test that models are empty on construction. Code examples are provided for writing tests for a CommentForm and CommentModel class.
Refactoring, Agile Entwicklung, Continuous Integration – all diese für nachhaltigen Erfolg wichtigen Vorgehensweisen setzen Erfahrung mit Unit Testing voraus. Abseits von den üblichen "Bowling"-Beispielen möchten wir gerne einen Crashkurs inkl. Best Practices für das erfolgreiche Unit Testing durchführen. Anhand eines Beispielprojekts auf Basis des Zend Frameworks werden wir nach der Installation von PHPUnit auf allen Notebooks gemeinsam eine kleine Applikation aufbauen, die durchgehend Test-driven entwickelt wird.
The document discusses unit testing Zend Framework applications. It begins by explaining the importance of testing and some common excuses for not testing. It then provides examples of setting up PHPUnit configuration and bootstrap files for testing Zend Framework applications. The document demonstrates how to write tests for Zend Forms and models, including testing with both valid and invalid data. It shows how to modify models to add validation filters and validators.
This document contains code for a C# class called "test" that defines properties and validation attributes for a web form model. It includes properties for email, name, date, and other fields, along with attributes for validation rules like required, data type, length, and regular expressions. It also contains JavaScript code to add client-side validation logic and datepicker functionality to the form fields.
When you move beyond adding simple enhancements to your website with jQuery and start building full-blown client-side applications, how do you organize your code? At this month's Triangle JS Meetup, we'll take a look at patterns for application development using jQuery that promote the principles of tight encapsulation and loose coupling, including classes, the publish/subscribe paradigm, and dependency management and build systems.
GeoMesa on Apache Spark SQL with Anthony FoxDatabricks
This document discusses location intelligence and GeoMesa. It begins with an introduction to location intelligence and GeoMesa. It then covers spatial data types, spatial SQL, and optimizing spatial SQL queries by extending Spark's Catalyst optimizer. Examples are provided to demonstrate calculating density of activity in San Francisco and generating a speed profile of a metro area using location data. Spatial analysis techniques like spatial joins, buffers, and geohashing are explored to extract insights from spatial data at scale.
Come to this talk prepared to learn about the Doctrine PHP open source project. The Doctrine project has been around for over a decade and has evolved from database abstraction software that dates back to the PEAR days. The packages provided by the Doctrine project have been downloaded almost 500 million times from packagist. In this talk we will take you through how to get started with Doctrine and how to take advantage of some of the more advanced features.
1. The document discusses leveraging Magento 2 to improve extensions by focusing on best practices like dependency injection, service contracts, and unit/integration/functional testing.
2. It emphasizes the importance of continuously learning through investing in yourself, learning from Magento, and engaging with the developer community.
3. Key recommendations include using dependency injection and interfaces, creating service contracts, leveraging test frameworks, following standards like PSR-2 and semantic versioning, contributing to open source, and participating in communities like Stack Exchange.
The document discusses different strategies for testing persistence in PHP applications, including unit testing with mocks and dependencies, integration testing using DbUnit to insert test data and assert expected results, and techniques for setting up common initial states across tests. It also covers the benefits and downsides of different types of tests, such as layer crossing tests that test interactions across layers but may be more brittle, versus end-to-end black box tests that test through the public API but are harder to debug.
Similar to Drupal in aerospace - selling geodetic satellite data with Commerce - Martin Mayer (20)
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on integration of Salesforce with Bonterra Impact Management.
Interested in deploying an integration with Salesforce for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...Alex Pruden
Folding is a recent technique for building efficient recursive SNARKs. Several elegant folding protocols have been proposed, such as Nova, Supernova, Hypernova, Protostar, and others. However, all of them rely on an additively homomorphic commitment scheme based on discrete log, and are therefore not post-quantum secure. In this work we present LatticeFold, the first lattice-based folding protocol based on the Module SIS problem. This folding protocol naturally leads to an efficient recursive lattice-based SNARK and an efficient PCD scheme. LatticeFold supports folding low-degree relations, such as R1CS, as well as high-degree relations, such as CCS. The key challenge is to construct a secure folding protocol that works with the Ajtai commitment scheme. The difficulty, is ensuring that extracted witnesses are low norm through many rounds of folding. We present a novel technique using the sumcheck protocol to ensure that extracted witnesses are always low norm no matter how many rounds of folding are used. Our evaluation of the final proof system suggests that it is as performant as Hypernova, while providing post-quantum security.
Paper Link: https://eprint.iacr.org/2024/257
Digital Marketing Trends in 2024 | Guide for Staying AheadWask
https://www.wask.co/ebooks/digital-marketing-trends-in-2024
Feeling lost in the digital marketing whirlwind of 2024? Technology is changing, consumer habits are evolving, and staying ahead of the curve feels like a never-ending pursuit. This e-book is your compass. Dive into actionable insights to handle the complexities of modern marketing. From hyper-personalization to the power of user-generated content, learn how to build long-term relationships with your audience and unlock the secrets to success in the ever-shifting digital landscape.
5th LF Energy Power Grid Model Meet-up SlidesDanBrown980551
5th Power Grid Model Meet-up
It is with great pleasure that we extend to you an invitation to the 5th Power Grid Model Meet-up, scheduled for 6th June 2024. This event will adopt a hybrid format, allowing participants to join us either through an online Mircosoft Teams session or in person at TU/e located at Den Dolech 2, Eindhoven, Netherlands. The meet-up will be hosted by Eindhoven University of Technology (TU/e), a research university specializing in engineering science & technology.
Power Grid Model
The global energy transition is placing new and unprecedented demands on Distribution System Operators (DSOs). Alongside upgrades to grid capacity, processes such as digitization, capacity optimization, and congestion management are becoming vital for delivering reliable services.
Power Grid Model is an open source project from Linux Foundation Energy and provides a calculation engine that is increasingly essential for DSOs. It offers a standards-based foundation enabling real-time power systems analysis, simulations of electrical power grids, and sophisticated what-if analysis. In addition, it enables in-depth studies and analysis of the electrical power grid’s behavior and performance. This comprehensive model incorporates essential factors such as power generation capacity, electrical losses, voltage levels, power flows, and system stability.
Power Grid Model is currently being applied in a wide variety of use cases, including grid planning, expansion, reliability, and congestion studies. It can also help in analyzing the impact of renewable energy integration, assessing the effects of disturbances or faults, and developing strategies for grid control and optimization.
What to expect
For the upcoming meetup we are organizing, we have an exciting lineup of activities planned:
-Insightful presentations covering two practical applications of the Power Grid Model.
-An update on the latest advancements in Power Grid -Model technology during the first and second quarters of 2024.
-An interactive brainstorming session to discuss and propose new feature requests.
-An opportunity to connect with fellow Power Grid Model enthusiasts and users.
Skybuffer SAM4U tool for SAP license adoptionTatiana Kojar
Manage and optimize your license adoption and consumption with SAM4U, an SAP free customer software asset management tool.
SAM4U, an SAP complimentary software asset management tool for customers, delivers a detailed and well-structured overview of license inventory and usage with a user-friendly interface. We offer a hosted, cost-effective, and performance-optimized SAM4U setup in the Skybuffer Cloud environment. You retain ownership of the system and data, while we manage the ABAP 7.58 infrastructure, ensuring fixed Total Cost of Ownership (TCO) and exceptional services through the SAP Fiori interface.
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframePrecisely
Inconsistent user experience and siloed data, high costs, and changing customer expectations – Citizens Bank was experiencing these challenges while it was attempting to deliver a superior digital banking experience for its clients. Its core banking applications run on the mainframe and Citizens was using legacy utilities to get the critical mainframe data to feed customer-facing channels, like call centers, web, and mobile. Ultimately, this led to higher operating costs (MIPS), delayed response times, and longer time to market.
Ever-changing customer expectations demand more modern digital experiences, and the bank needed to find a solution that could provide real-time data to its customer channels with low latency and operating costs. Join this session to learn how Citizens is leveraging Precisely to replicate mainframe data to its customer channels and deliver on their “modern digital bank” experiences.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfChart Kalyan
A Mix Chart displays historical data of numbers in a graphical or tabular form. The Kalyan Rajdhani Mix Chart specifically shows the results of a sequence of numbers over different periods.
Dandelion Hashtable: beyond billion requests per second on a commodity serverAntonios Katsarakis
This slide deck presents DLHT, a concurrent in-memory hashtable. Despite efforts to optimize hashtables, that go as far as sacrificing core functionality, state-of-the-art designs still incur multiple memory accesses per request and block request processing in three cases. First, most hashtables block while waiting for data to be retrieved from memory. Second, open-addressing designs, which represent the current state-of-the-art, either cannot free index slots on deletes or must block all requests to do so. Third, index resizes block every request until all objects are copied to the new index. Defying folklore wisdom, DLHT forgoes open-addressing and adopts a fully-featured and memory-aware closed-addressing design based on bounded cache-line-chaining. This design offers lock-free index operations and deletes that free slots instantly, (2) completes most requests with a single memory access, (3) utilizes software prefetching to hide memory latencies, and (4) employs a novel non-blocking and parallel resizing. In a commodity server and a memory-resident workload, DLHT surpasses 1.6B requests per second and provides 3.5x (12x) the throughput of the state-of-the-art closed-addressing (open-addressing) resizable hashtable on Gets (Deletes).
Ivanti’s Patch Tuesday breakdown goes beyond patching your applications and brings you the intelligence and guidance needed to prioritize where to focus your attention first. Catch early analysis on our Ivanti blog, then join industry expert Chris Goettl for the Patch Tuesday Webinar Event. There we’ll do a deep dive into each of the bulletins and give guidance on the risks associated with the newly-identified vulnerabilities.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Introduction of Cybersecurity with OSS at Code Europe 2024Hiroshi SHIBATA
I develop the Ruby programming language, RubyGems, and Bundler, which are package managers for Ruby. Today, I will introduce how to enhance the security of your application using open-source software (OSS) examples from Ruby and RubyGems.
The first topic is CVE (Common Vulnerabilities and Exposures). I have published CVEs many times. But what exactly is a CVE? I'll provide a basic understanding of CVEs and explain how to detect and handle vulnerabilities in OSS.
Next, let's discuss package managers. Package managers play a critical role in the OSS ecosystem. I'll explain how to manage library dependencies in your application.
I'll share insights into how the Ruby and RubyGems core team works to keep our ecosystem safe. By the end of this talk, you'll have a better understanding of how to safeguard your code.
Your One-Stop Shop for Python Success: Top 10 US Python Development Providersakankshawande
Simplify your search for a reliable Python development partner! This list presents the top 10 trusted US providers offering comprehensive Python development services, ensuring your project's success from conception to completion.
2. A Game Changer for the Geospatial Data Market
Dauria Aerospace
develops new ways in
building low cost
satellites, thus reducing
costs for earth
observation data
drastically.
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
3. The Game Changer for the Geospatial Data Market
Affordable Geo data allow
small businesses to pioneer
new business models.
Example:
Low cost parcel monitoring
service for local farmers
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
4. Building Satellites with Smartphone Technology
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
5. Building Lightweight Satellites
Conventional Satellite
New Satellite
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
7. We need a Configurable Product with a Map
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
8. Commerce's Standard Handling of Product Variations
http://demo.commerceguys.com/ck/tops/guy-short-sleeve-tee
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
9. The Customizable Products Module
As the ancient
Drupal Proverb goes:
There's a module
for that
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
10. Configuration of References
Content Type for the
Product Display
Configuration:
Add Product Reference
Set „Product Types that
can be referenced“
to Product Type;
Set „Add to Cart Line
Item Type“
to Line Item Type
Product Display Node
Configuration:
Set „Product Reference“
to Product
Product Type
Configuration:
Set „Default Reference“
to Content Type
Product
Configuration:
Set „Referenced by“
to Product
Display Node
Line Item Type
Configuration:
Set „Add to Cart Line
Item Type“
to itself (self reference!)
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
11. Validating User Inputs
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
12. Validating User Inputs
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
13. Validating User Inputs
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
14. Validating User Inputs
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
15. Validating User Inputs
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
16. Utilizing PostGIS
PostGIS extends PostgreSQL Databases with geodetic functions
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
17. The PostGIS Module integrates this Functions into Drupal
class PostgisGeometry {
...
function validate() {
$geo = is_null($this->wkt) ? $this->geometry : $this->wkt;
try {
$result = db_query("SELECT ST_GeometryType(:geo), ST_IsValid(:geo), ST_IsValidReason(:geo) as reason",
array(':geo' => $geo))->fetchAssoc();
// Return reason if geometry is not valid.
if (!$result['st_isvalid']) {
return array(
'error' => 'postgis_unparsable',
'message' => t('Not a valid geometry: @reason.', array('@reason' => $result['reason'])),
);
}
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
...
}
catch (PDOException $e) {
// TODO: catch only WKT parse errors.
return array(
'error' => 'postgis_unparsable',
'message' => t('Unable to parse WKT: ' . $geo),
);
}
}
18. But the PostGIS Module has some Weaknesses
/**
* Calculates diffrence to a given geometry.
*
* @param PostgisGeometry $geometry
* Geometry which this instance will be compared to.
*
* @return PostgisGeometry
* Geometry of diffrence.
*/
function diff($geometry) {
...
$geo_diff = db_query("SELECT ST_Union(ST_Difference(:geo_a, :geo_b), ST_Difference(:geo_b, :geo_a))",
array(':geo_a' => $geo_a, ':geo_b' => $geo_b))->fetchField();
$geo_type = db_query("SELECT GeometryType(:geo_diff)",
array(':geo_diff' => $geo_diff))->fetchField();
$diff = new PostgisGeometry($geo_type, $this->srid);
$diff->fromGeometry($geo_diff);
return $diff;
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
}
- Some important geodetic functions are not implemented
- Error handling is inconsistent
19. Extending and Overwriting the PostGIS Module
class PostgisGeometries extends PostgisGeometry {
...
function intersects($geometry) {
if ((get_class($geometry) !== 'postgis_geometry') && (get_class($geometry) !== 'PostgisGeometries')) {
throw new PostgisGeometryException('not postgis_geometry');
}
try {
$geo_a = $this->getText();
if(stripos($geo_a,'GEOMETRYCOLLECTION(' ) === 0) {
$geo_a = substr(strstr($geo_a, '('),1, -1);
}
$geo_b = $geometry->getText();
if(stripos($geo_b,'GEOMETRYCOLLECTION(' ) === 0) {
$geo_b = substr(strstr($geo_b, '('),1, -1);
}
$intersects = db_query("SELECT ST_Intersects(text :geo_a, text :geo_b)",
array(':geo_a' => $geo_a, ':geo_b' => $geo_b))->fetchField();
return $intersects;
}
catch (PDOException $e) {
throw new PostgisGeometryException( $e->getMessage( ) , (int)$e->getCode( ) );
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
}
}
20. Writing a module to validate the AOI and calculate the price
function water_quality_form_alter(&$form, &$form_state, $form_id) {
...
$form['line_item_fields']['field_line_item_map'][LANGUAGE_NONE][0]['wkt']['#element_validate'][] =
'water_quality_aoi_validate';
...
function water_quality_aoi_validate($element, &$form_state) {
...
$coverage_region_comparison->transform($aoi->getSrid());
$coverage_region_comparison->dump();
$intersects_google_projection = $coverage_region_comparison->intersects($aoi_comparison);
if ($intersects_google_projection){
// Convert aoi to srid of the region.
$aoi_comparison->transform($coverage_region['region']->getSrid());
$aoi_comparison->dump();
// check if the aoi intersects with the region. This needs to be
// done in the SRID of the coverage region for accuracy.
$within = $aoi_comparison->within($coverage_region['region']);
if ($within){
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
...
...
21. The Open Layers Editor has some Bugs
What it
should deliver
POLYGON((1066993.16984217 4873953.49407963,
1340943.47921804 5392502.29411237,
1810572.58092165 5382718.35450175,
1979345.539345157 5106322.0602720035,
1849708.33939679 4776114.09813913,
1066993.16984217 4873953.49407963))
GEOMETRYCOLLECTION(
POLYGON((1066993.16984217 4873953.49407963,
1340943.47921804 5392502.29411237,
1810572.58092165 5382718.35450175,
1979345.539345157 5106322.0602720035,
1849708.33939679 4776114.09813913,
1066993.16984217 4873953.49407963)),
POINT(1203968.324530105 5133227.894096),
POINT(1575758.0300698448 5387610.32430706),
POINT(1894959.0601334036 5244520.207386877),
POINT(1914526.9393709735 4941218.079205567),
POINT(1458350.75461948 4825033.79610938),
POINT(1066993.16984217 4873953.49407963),
POINT(1340943.47921804 5392502.29411237),
POINT(1810572.58092165 5382718.35450175),
POINT(1979345.539345157 5106322.0602720035),
POINT(1849708.33939679 4776114.09813913))
What it
sometimes
delivers
GEOMETRYCOLLECTION()
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
22. The Open Layers Editor has some Bugs
Caching and the
Open Layers Editor
have an awkward
relationship
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
23. The Open Layers Editor has some Bugs
function water_quality_form_alter(&$form, &$form_state, $form_id) {
...
...
function water_quality_subscription_type_validate($element, &$form_state) {
if(!isset($element['#value']) || empty($element['#value'])){
drupal_rebuild_form($form_state['build_info']['form_id'], $form_state);
}
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
}
function eomap_eula_validate($element, &$form_state) {
if(!isset($element['#value']) || empty($element['#value'])){
drupal_rebuild_form($form_state['build_info']['form_id'], $form_state);
form_set_error('field_line_item_map', t('Agreement to Product EULA must be checked'));
}
}
$form['line_item_fields']['field_subscription_type'][LANGUAGE_NONE]['#element_validate'][] =
'water_quality_subscription_type_validate';
$form['line_item_fields']['field_eomap_eula_agreement'][LANGUAGE_NONE]['#element_validate'][] =
'eomap_eula_validate';
...
...
}
24. The Open Layers Editor has some Bugs
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
25. The Open Layers Editor has some Bugs
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
26. The Open Layers Editor has some Bugs
$form_state['no_cache'] = TRUE;
if (isset($form_state['values']['line_item_fields']['field_line_item_map'][LANGUAGE_NONE][0]['wkt'])){
$form_state['input']['line_item_fields']['field_line_item_map'][LANGUAGE_NONE][0]['wkt'] =
$form_state['values']['line_item_fields']['field_line_item_map'][LANGUAGE_NONE][0]['wkt'];
} else {
if (isset($form_state['input']['line_item_fields']['field_line_item_map'][LANGUAGE_NONE][0]['wkt'])){
$wkt = $form_state['input']['line_item_fields']['field_line_item_map'][LANGUAGE_NONE][0]['wkt'];
if(stripos($wkt, 'POINT') !== false){
$wkt = substr(strstr($wkt, '('), 1,(stripos($wkt, ',POINT') - stripos($wkt, '(') -1));
}
$form['line_item_fields']['field_line_item_map'][LANGUAGE_NONE][0]['wkt']['#value'] = $wkt;
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
}
}
Some form fields mysteriously loose
their value and need to be refilled
27. Wrapping it up: Placing the Geo
Data Product in the Shopping Cart
A Rule
overwrites
the line item
price with
the calculated
price
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
28. Wrapping it up: Placing the Geo
Data Product in the Shopping Cart
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
29. What it's all about...
You can build some such thing
and even more sophisticated
sites with Drupal modules
and a little coding!
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org
31. The End
Спасибо за внимание
Спасибі за увагу
Danke für Ihre Aufmerksamkeit
Thank you for your attention
Translated to a select
choice of languages
of planet Earth:
Martin Mayer, Diplom Systems Practitioner (Open) info@socialoom.org