Став популярным Angular активно обтачивался и дорабатывался активистами, приложения написанные 2-3 года назад и сейчас имеют отличия, мы посмотрим какие.
The document discusses refactoring an asynchronous Redux application from using Redux Thunk to Redux Saga. It begins by showing an example of an asynchronous action using Redux Thunk, which involves chaining callbacks. It then introduces Redux Saga as an alternative that uses generator functions to manage asynchronous logic in a cleaner way. The document shows how the same asynchronous action can be rewritten using Redux Saga effects like put(), call(), and takeEvery() within generator functions. Overall, the key points are that Redux Saga encapsulates side effects, has a more readable syntax than Redux Thunk, and makes asynchronous workflows easier to test.
Using Android Things to Detect & Exterminate ReptiliansNilhcem
Using Android Things and machine learning, this document proposes a project to detect and exterminate reptilians. It describes using TensorFlow on Android Things to create an image classifier trained to identify reptilians in photos. It then discusses using various Android Things peripherals like sensors, displays, motors and relays to detect approaching reptilians and trigger extermination devices like flamethrowers or chainsaws. The document argues Android Things is a good platform for such a project due to its access to local computation, Google services and a wide range of hardware. It concludes by encouraging people to try Android Things development.
The OpenStack Horizon project provides a web-based User Interface to OpenStack services. It is constructed in two parts: (1) a core set of libraries for implementing a Dashboard; (2) the dashboard implementation that uses the core set of libraries.
Horizon uses python django — server side technology
Django is a wonderful framework, but a little dated. Pre-dates the rise in client-side and single page applications.
Javascript is used for enhancing the user experience
In the time since Horizon was first architected, there have been major advances in the design, and best practices for web applications. In particular, the use of more sophisticated and robust client-side javascript frameworks like BackboneJS, AngularJS, MeteorJS, have come to the fore.
These applications provide a much more responsive user experience, much cleaner separation between the client and server, enable configuration driven interfaces, and facilitate more modular testing.
This in turn, results in shorter development cycles, more testable software, and above all, a better user experience.
In this presentation, we share some of our recent work in re-architecting parts of Horizon to take advantage of these new technologies. We discuss some of the technologies we use, our application architecture, and some of the pitfalls to avoid.
How Google AppEngine deals with digital art? how about music? a few case studies developed by Stinkdigital with Google Creative Lab and how App Engine dealt with a considerable amount of visits
The document discusses using Redux middleware like redux-thunk and redux-saga to handle asynchronous actions and side effects in Redux applications. Redux-thunk allows returning functions from action creators to support asynchronous logic. Redux-saga uses generator functions to declaratively define asynchronous flows using effects. It provides capabilities like parallelism, cancellation, and composition that are more complex with redux-thunk. Both libraries make it easier to handle asynchronous logic while avoiding complex race conditions and keeping side effects separate from the reducer logic.
Owl JS is a small JavaScript framework for building user interfaces based on XML templates. Some key points about Owl:
1. It uses XML (QWeb) templates that are compiled just-in-time for efficiency.
2. Components are defined as classes that extend a base Component class. The UI is a tree of nested components.
3. It supports modern features like hooks, slots, and stores to manage state and reactivity.
4. The document provides an example of building a to-do list app in Owl to demonstrate how to define components, handle events between them, and manage state. Key aspects covered include extracting sub-components, dependency injection via the "env"
Async Redux Actions With RxJS - React Rally 2016Ben Lesh
Redux-observable allows combining RxJS and Redux by introducing Epics. Epics are Observable streams that handle asynchronous logic in response to Redux actions. This avoids callback hell and enables features like cancellation. An Epic takes an action stream, performs asynchronous operations like AJAX calls using RxJS, and dispatches result actions. This keeps Redux synchronous while managing complex async flows in a declarative and reusable way.
Dpilot is a cloud based file transfer application that allows its user to upload data on cloud server and the receiver on the other hand can downlaod the data from the server. The Downlaod information is send to the receiver via mail service.
Other Features include:-
Secure Login system
Easy data Access
Lightening Fast Uploads and Downloads
Connect with your Facebook Or Gmail Account for easy access
This document contains code for a file sharing application that allows users to upload files to Amazon S3 storage and send download links to recipients via email. It includes code for connecting to MongoDB and S3 databases, handling file uploads with Multer, generating signed URLs with AWS, sending emails with Nodemailer, and building APIs with Express. The React code handles form inputs, file previews, and confirming upload status.
Swift Montevideo Meetup - iPhone, una herramienta medicaWashington Miranda
This document summarizes the capabilities of ResearchKit and CareKit for building medical tools on the iPhone. ResearchKit allows developers to create apps for medical research studies, collecting data through surveys, active tasks using sensors, and informed consent processes. CareKit focuses on personal health management, providing tools for symptom tracking, insights, care plans, and connecting patients and caregivers. Both make use of the iPhone's sensors and HealthKit integration to power robust data collection for research and care.
The Interactive Grid is introduced in APEX 5.1 as a best of both worlds of Tabular Forms and Interactive Reports. Although a lot of settings are declaratively avaible within the APEX builder, there are a ton of features built in that are only accessible by JavaScript.
In this session you will learn how to use the most interesting "hidden" features with just a few lines of JavaScript.
Some examples:
- Adding and removing buttons from the Interactive Grid toolbar.
- Adding and removing actions from the toolbar menu.
- Adding and removing functionality from the row level pop up menu.
- Removing complexity on the column level.
- Adding tooltips to a column.
- Changing the layout of columns and headings.
- Refreshing (only) changed records within the grid.
- Removing only deleted records from the grid - without a full refresh.
Redux saga: managing your side effects. Also: generators in es6Ignacio Martín
The document summarizes a presentation on Redux Sagas given at a React Native meetup in Munich in May 2017. It introduces generators and how they enable asynchronous logic to be written in a synchronous style. It provides examples of using generators to increment a value each time a new value is passed in and shows how generators can be used in a loop. The purpose of Redux Sagas is to manage asynchronous side effects in Redux applications using generator functions.
This document summarizes the evolution of Redux action creators from plain objects to functions that return action objects, and then to functions that return functions that dispatch actions. It discusses how middleware like Redux-Thunk and dependency injection allow async logic and testing of action creators. Redux-Saga is introduced as providing a cleaner way to write complex asynchronous action creators using generator functions. Key benefits of Redux-Saga include easy testing and ability to create daemon processes using patterns like takeLatest and takeEvery.
The document discusses RxJS, a library for reactive programming using Observables that provide an API for asynchronous programming with observable streams. It provides code examples of using RxJS to handle events, AJAX requests, and animations as Observables. It also compares RxJS to Promises and native JavaScript event handling, and lists several frameworks that use RxJS like Angular and Redux.
The document provides an overview of the YUI library. It discusses:
1) What YUI is and its main components like the JavaScript library, CSS foundation, documentation tools, build tools, testing tools, and more.
2) Some of the core utilities included in YUI like Event, Node, YUI Global Object, Array, mix, extend, augment, Object, merge, clone, and Module.
3) How to use YUI features like the loader, events, DOM events, custom events, Node, IO, Transition, and infrastructure components like Base, Attributes, Plugin, and Widget.
Home Automation with Android Things and the Google AssistantNilhcem
This document discusses using Android Things and the Google Assistant for home automation. It provides examples of controlling smart home devices like lights and switches through actions, traits, and device syncing. Code samples are given for communicating with devices over Bluetooth, GPIO, UART, and infrared to control lights, fans, outlets and more. Additional resources are provided on building smart home apps with Actions on Google and reverse engineering protocols for interoperability.
Алексей Волков "Интерактивные декларативные графики на React+D3"Fwdays
Как использовать всю мощь идеи реакта и вычислений d3 для построения гибких (очень гибких) графиков. Делаем десяток основных компонент и на их основе легко строим все, что душе угодно.
Hey, let's talk about the future! Frameworks are moving fast, delivering new features, improving performance, and expanding the boundaries of what's possible to do with the web today. Sometimes it's hard to keep up. We'll talk about what the future holds for all of us and how to write your applications today to be prepared for it.
Це мультиплеєр гра в танчики, в якій “джойстиками” виступають будь-які смартфони, а саме поле битви зручно відобразити на великому екрані або проекторі компятера чи ноутбука.
Розкажу про ідею створення, як вона була написана, якими технологіями, які були виклики та результати. Також сподіваюсь, що всі присутні в залі зможуть в неї пограти
Анатолий Попель: "Формы оплаты и платёжные шлюзы"Fwdays
О том, что такое платёжные формы и платёжные шлюзы, где они встречаются, как устроены, как их проработать так, чтобы было удобно пользователю. А также о том, какие ошибки часто допускаются при их создании и почему.
Сергей Яковлев "Phalcon 2 - стабилизация и производительность"Fwdays
Важные изменения в Phalcon за последний год
Краткое описание важных изменений и дополнений, которые сделали Phalcon интересным и более стабильным за последний год.
Что ожидается от версии 2.1
О концептуальных изменениях в версии 2.1
LTS версия и система релизов
О выходе LTS версии, сроках её поддержки, а так же намеченной системе релизов Phalcon и сроках их поддержки.
Как Zephir увеличивает численность команды и общую стабильность проекта
О том, что команда Zephir расширяется профессиональными разработчиками на языке Си, делая язык стабильнее и развивая его быстрее. О заморозке основной ветки разработки.
Как принять участие в разработке Phalcon
О том как писать на языке программирования Zephir, тестировать локально свои наработки и правильно отправлять пул реквесты или баг репорты чтоб они были рассмотрены в ближайшее время.
Поддержка PHP7
О том, на какой стадии поддержка PHP7 реализована в Phalcon. Как Phalcon будет работать в PHP7. Будет ли он быстрее чем нативный код для PHP7. О том, какую версию рекомендуется использовать сейчас.
В чём мы нуждаемся
О том, что нам нужны не только программисты — описание того, как можно помогать проекту развиваться, даже не будучи профессиональным программистом.
Илья Прукко: "Как дизайнеру не становиться художником"Fwdays
Искусство и дизайн:
*Почему дизайн - это не искусство.
*Современное искусство.
*Хороший дизайн.
*Развитие чувства вкуса у дизайнера.
Как начать карьеру дизайнера:
*С чего начинать.
*Как привлечь заказчиков.
*Первый заказчик.
*Как общаться с заказчиком.
The document discusses designing for privacy in the digital age. It notes that corporations are collecting and sharing vast amounts of consumer data without users' knowledge or consent. With the rise of mobile devices and wearables, individual privacy is shrinking rapidly. The document then outlines some approaches designers can take to address privacy concerns, including transparency about data collection and use, informed consent from users, and safeguarding user data security. It provides examples of apps that demonstrate better and worse practices regarding privacy and user experience.
The document discusses techniques for dealing with "fat models" in Ruby on Rails applications. It argues that concerns are better than services for encapsulating business logic that belongs in models. Concerns allow models to have default behaviors while still supporting edge cases. The document also notes that the single responsibility principle is misleading, as real-world objects often have multiple related responsibilities. Well-designed models with concerns promote code reuse and testability over separated services.
Yes, this is very wide problem: you expect something, but reality is a bit different.
You expect that query will run 1 sec, but it runs (Oh, my God!) 1 hour. You expect that your query will perform index seek, but it performs index scan instead. You expect your query doesn't use locks, but it uses them.
So this session will be focused on understanding the internals of such situations and making our expectations more close to reality.
Расскажу об использовании Swift для построения CLI инструментов и написании скриптов. А так же, что нам для этого понадобится. И, конечно же, рассмотрим плюсы и минусы нового игрока на поле :)
Я расскажу о том, как можно использовать терминал не по назначению.
Какие подводные камни мне встречались, когда я разрабатывал canvas для терминала. Какие алгоритмы я использовал, чтобы оптимизировать скорость отрисовки элементов.
И конечно же покажу все на реальных примерах и отвечу на вопросы.
Швейцарія, масштабування Scrum і розподілені команди от Романа СахароваFwdays
У своїй доповіді я розповім історію про еволюцію проекту швейцарського банку, який виявився досить гнучкий щоб пережити багато злетів та падінь. Використовуючи цікаві напрацювання з масштабованого Agile і здорового глузду. А також, на скільки складніше працювати у випадку розподілених команд і яка ціна використання такої конфігурації.
Michael North "The Road to Native Web Components"Fwdays
One of the major challenges of building rich applications for the web, is that our foundation (JavaScript in the browser) is a document viewer, not an application platform. In fact, if you show a mobile or desktop app developer the primitives that we web developers are given to start with, the typical reaction is that we’re missing many important building blocks.
All of the tools we rely on like Angular 2, React, Ember, Polymer, etc... are, essentially, shims and hacks that we make use of while we wait for things like the W3C Web Component spec to be completed and implemented in browsers. As it becomes more feasible to build on the standards instead of a framework, it'll become useful for developers to have awareness of what those standards are, what’s missing from the official spec, and how well of a job our favorite libraries do with establishing alignment.
We’ll take a close look at the W3C component spec, and compare it to the concept of a Component in the React.js library, the and the Ember.js 2 and Angular 2 frameworks. We’ll try to do a few things using native web components, involving rendering and styling an encapsulated piece of interactive UI. Along the way, we will highlight the things that we’re waiting in the W3C spec. We'll be left with a clear roadmap of when we can start decoupling our apps from a specific third party tool and rely on “Native Web Components” in production.
Павел Тайкало: "Optimistic Approach : How to show results instead spinners wi...Fwdays
The document discusses an optimistic approach to updating the user interface in mobile applications. It proposes showing predicted results to users immediately instead of loading spinners to improve perceived performance. This involves caching data, preloading content, and updating the UI with fake results before the server response arrives. It can improve the user experience but requires handling errors if the prediction does not match the actual response. The approach also needs to account for frequent actions from hyperactive users.
"Spring Boot. Boot up your development" Сергей МоренецFwdays
своем докладе я подробно расскажу о Spring Boot - библиотеке, которая значительно упрощает работу разработчика и уменьшает количество написанного кода.
Spring Boot позволяет быстрее и проще сконфигурировать сторонние библиотеки и фреймворки, а также предоставляет удобные сервисы для получения метрик работы приложения.
Я поделюсь своим опытом работы, интеграции с Maven/Gradle, покажу практические примеры использования этой технологии.
После этого доклада вы можете самостоятельно использовать Spring Boot в своих приложениях.
"Красная книга веб-разработчика" Виктор ПолищукFwdays
Миллиарды людей по всему миру открывают веб-браузер утехи или работы ради. Сотни тысяч разработчиков, дизайнеров, тестировщиков и т.д., создают все новые и новые приложения для этих самых миллиардов. Тысячи языков программирования, помогают предыдущим ребятам. И Java один из таких языков! И если ты выбрал для написания своего веб-приложения Java – ты скорее всего один из нас. Мои поздравления. Загвоздка лишь в том, что для Java существует несколько десятков веб-фреймворков и библиотек. Непростой выбор для человека, но критический для проекта. Что выбрать? Скажу честно – я не знаю, но попробую помочь определиться с выбором. Мы пробежим по Struts, JSF, Portlet, Spring MVC, DWR, GWT и некоторым другим фреймворкам, которые мне попадались в руки. Сравним сильные и слабые стороны, и подготовим почву для вашего собственного выбора веб-фреймворков будущего проекта.
"После OOD: как моделировать предметную область в пост-объектном мире" Руслан...Fwdays
The document discusses domain modeling approaches in a post-object-oriented world. It describes modeling domains using immutable data objects and domain services rather than traditional object-oriented classes. Domain objects represent entities without behavior, while domain services encapsulate functionality without data. This approach uses composition over inheritance and aims to describe limited relationships rather than a universal ontology. It provides examples modeling a small billing domain in this way, including use of a DSL to fluently describe tariff plans.
Трансформация команды: от инди разработки к играм с коммерческой успешностьюFwdays
Процесс перехода команды из разряда простого фана к эффективной деятельности часто бывает болезненным, с рывком и недостаточно быстрым. Это постоянное балансирование между старым и новым, попытка усидеть на двух стульях сразу - романтичности инди-разработки и необходимости зарабатывать деньги на все потребности команды. Это будет история о том, как объединить эти два подхода в гармоничную экосистему, и сделать это своевременно.
Тема очень глубокая и противоречивая, и здесь нет однозначных ответов. Я поделюсь своим опытом подводных камней и ошибок на этом пути. Возможно, это будет полезно и вам.
Tech Talk #4 : RxJava and Using RxJava in MVP - Dương Văn TớiNexus FrontierTech
RxJava is a library for composing asynchronous and event-based programs using observable sequences. It allows processing streams of data and events asynchronously without blocking threads. Some key features include:
- Creating Observables from various sources like arrays, callbacks, or network requests
- Combining multiple Observables using operators like map, filter, concatMap
- Scheduling Observables to run on different threads for IO, computation, or the main thread
- Subscribing to Observables using Subscriber, Observer, or other callback methods
When using RxJava with MVP, Observables can be used to asynchronously load and transform data from the model to be presented by the view. Operators allow processing streams of data before
1. The document discusses building an app called Munchkin using Electron and React-Photonkit. It describes setting up the app skeleton with different components like a header, sidebar, and viewer.
2. It then covers using IPC to communicate between the main and renderer processes to update device data from ADB in real-time. Methods for sending and receiving IPC messages are demonstrated.
3. Troubleshooting resolving the Electron module is discussed, along with ensuring the proper webpack configuration is set up for an Electron target.
For years i wanted a robust solution to organize code:
Eliminate messy code
Organize structure
Set strict rules for apps
Write simple tests that cover exactly what i need
Write Less, Think Less - Do More
I just wanted a simple hands-on philosophy in my code.
Then came NgRx/store.
This is an intro to ngrx/store and its echo-system with a usecase of Echoes Player (ng2) open source player developed with angular 2 and ngrx/store.
An introduction to the AngularJS JavaScript MVC framework from Google. Tailored for Java developers. Presented at the Orange County Java Users Group on 10/09/2014
This document provides an overview of using the Backbone.js framework for client-side MVC applications. It discusses why Backbone is useful for structuring JavaScript applications, its core architecture including models, collections, views and routers. It also provides examples of how to convert jQuery code to use a Backbone-based approach and lists some real-world applications that use Backbone.
This document discusses UIPickerView and NSArray in iOS app development. It includes sections on NSArray classes like NSArray and NSMutableArray, how to initialize and access array objects. It also covers the UIPickerView, UIPickerViewDataSource, and UIPickerViewDelegate protocols. Example projects are described that show how to generate a UIPickerView programmatically or using a XIB file and populate it with array data. Projects also demonstrate handling selection of multiple components and dependent picker views.
The document discusses AngularJS modules and dependency injection. It explains that modules allow grouping of related code, and the injector resolves dependencies. It provides examples of defining modules, registering components, and the injector loading modules and resolving dependencies.
Swift Montevideo Meetup - iPhone, una herramienta medicaWashington Miranda
This document summarizes the capabilities of ResearchKit and CareKit for building medical tools on the iPhone. ResearchKit allows developers to create apps for medical research studies, collecting data through surveys, active tasks using sensors, and informed consent processes. CareKit focuses on personal health management, providing tools for symptom tracking, insights, care plans, and connecting patients and caregivers. Both make use of the iPhone's sensors and HealthKit integration to power robust data collection for research and care.
This document discusses simplifying Angular code by following 6 simple rules:
1. Use directives instead of ng-controller.
2. Use controllerAs syntax and bindToController instead of $scope.
3. Use controllers instead of link functions.
4. Use templates instead of templateUrl.
5. Avoid using $rootScope.
6. Use factories and services instead of providers.
The document provides examples of refactoring code according to these rules and recommends some additional resources for learning more about building scalable Angular applications.
This document provides an introduction to AngularJS. It explains that AngularJS is a JavaScript MVC framework and not just a library. It describes key Angular concepts like directives, controllers, services and dependency injection which make Angular apps modular and components easily testable. Testing is emphasized as equally important as writing code. The document also introduces tools like Karma and Protractor that are useful for automated testing of Angular apps in browsers.
How Angular2 Can Improve Your AngularJS Apps Today!Nir Kaufman
Are you ready to migrate your Angular1 project to Angular2? through this slides you will discover some tips that can make your current application better and ready for future migration. A link for reference project can be found inside.
These presentation file was meant to be used in a local weekly-based meetings but hadn't have the chance of being presented.
Unfortunately this presentation file does not include all aspects of AngularJs which were supposed to be updated but it's never happened.
Anyways, hope it may come to some use.
Presented at FITC Toronto 2016
See details at www.fitc.ca
AngularJS was originally created in 2009 as an end-to-end solution for web designers wanting to build simple web apps. Over the last 6 years it has evolved into a component based MVC framework targeted at JavaScript developers. To maintain backward compatibility, Angular has had to hold onto many deprecated concepts. This has caused some of Angular’s APIs to be complex and easy to misuse. Angular 2 is a complete rewrite of Angular 1 which eliminates the outdated concepts and takes full advantage of modern web standards like ES6, TypeScript, and Web Components.
In this session you’ll learn which Angular 1 features to avoid and how to write an Angular 1 app that will be easy to migrate into Angular 2. We’ll go through the process of refactoring an Angular 1 app to prep it for migration. Then Rob will demonstrate how to incrementally migrate to Angular 2. You’ll come away from this session with a better understanding of what Angular 2 has to offer and how to start taking advantage of it.
Objective
To make the migration from Angular 1 to Angular 2 as painless as possible
Target Audience
Anyone using Angular 1 or interested in learning Angular 2.
Assumed Audience Knowledge
Some experience with JavaScript and Angular 1
Five Things Audience Members Will Learn
How to write an Angular 1 app that will be easy to migrate
Using TypeScript, ES6 modules, and the component router with Angular 1
The benefits of Angular 2
How to run Angular 1 and 2 in the same app
How to migrate an Angular 1 app to Angular 2
Probabilmente il framework javascript più atteso di sempre, evoluzione di uno dei framework più longevi ed usati nello sviluppo front end. Si vedranno alcune delle novità introdotte e delle scelte radicali fatte da Google per la nuova versione di Angular
This fast-paced overview for beginners discusses some aspects of AngularJS 1.x and 2.x, which versions to learn (and why), and the technologies that you need to learn. We'll delve into examples of combining AngularJS with other technologies (such as BackboneJS and D3.js), and also address the +/- of AngularJS.
The document discusses several best practices for writing cleaner and more opinionated AngularJS code, including:
1) Defining modules and avoiding polluting the global namespace.
2) Using dependency injection properly to support minification.
3) Adding controllers to views using the "controller as" syntax for better scoping.
4) Delegating logic to services to maximize reusability.
MEAN - Notes from the field (Full-Stack Development with Javascript)Chris Clarke
This document provides notes from a presentation on building applications with the MEAN stack. It discusses the typical structure of a MEAN application with MongoDB, Express, AngularJS and Node.js. It covers Angular fundamentals like routing, templates, controllers and directives. It also discusses more advanced topics like logging in MEAN applications, minification, and using MongoDB _id fields.
"What does it really mean for your system to be available, or how to define w...Fwdays
We will talk about system monitoring from a few different angles. We will start by covering the basics, then discuss SLOs, how to define them, and why understanding the business well is crucial for success in this exercise.
"Microservices and multitenancy - how to serve thousands of databases in one ...Fwdays
Imagine you are designing a B2B service that will serve millions of businesses. This service will have dozens of different microservices with their own data, which can contain millions of records. How do you design such a database? Why is sharding not always the answer? What other options are there for such an architectural solution?
I'll tell you how we at Uspacy came to serve thousands of small databases instead of a few large ones, what we've encountered and what we plan to face)
"Scaling RAG Applications to serve millions of users", Kevin GoedeckeFwdays
How we managed to grow and scale a RAG application from zero to thousands of users in 7 months. Lessons from technical challenges around managing high load for LLMs, RAGs and Vector databases.
"NATO Hackathon Winner: AI-Powered Drug Search", Taras KlobaFwdays
This is a session that details how PostgreSQL's features and Azure AI Services can be effectively used to significantly enhance the search functionality in any application.
In this session, we'll share insights on how we used PostgreSQL to facilitate precise searches across multiple fields in our mobile application. The techniques include using LIKE and ILIKE operators and integrating a trigram-based search to handle potential misspellings, thereby increasing the search accuracy.
We'll also discuss how the azure_ai extension on PostgreSQL databases in Azure and Azure AI Services were utilized to create vectors from user input, a feature beneficial when users wish to find specific items based on text prompts. While our application's case study involves a drug search, the techniques and principles shared in this session can be adapted to improve search functionality in a wide range of applications. Join us to learn how PostgreSQL and Azure AI can be harnessed to enhance your application's search capability.
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor IvaniukFwdays
At this talk we will discuss DDoS protection tools and best practices, discuss network architectures and what AWS has to offer. Also, we will look into one of the largest DDoS attacks on Ukrainian infrastructure that happened in February 2022. We'll see, what techniques helped to keep the web resources available for Ukrainians and how AWS improved DDoS protection for all customers based on Ukraine experience
"Black Monday: The Story of 5.5 Hours of Downtime", Dmytro DziubenkoFwdays
We will explore the most significant incident in our product's history. We'll discuss the causes that led to the failure, how our team responded, and the measures we took to prevent future incidents. Special attention will be paid to identifying the root cause of the incident and the role of the VACUUM mechanism in PostgreSQL.
"Reaching 3_000_000 HTTP requests per second — conclusions from participation...Fwdays
In this talk, we will get acquainted with TechEmpower Web Framework Benchmarks, consider generalized (programming language-independent) approaches to optimizing a web application and its environment to achieve extreme loads, and most importantly, how some of these things can be applied in practice in your projects.
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...Fwdays
Direct losses from downtime in 1 minute = $5-$10 thousand dollars. Reputation is priceless.
As part of the talk, we will consider the architectural strategies necessary for the development of highly loaded fintech solutions. We will focus on using queues and streaming to efficiently work and manage large amounts of data in real-time and to minimize latency.
We will focus special attention on the architectural patterns used in the design of the fintech system, microservices and event-driven architecture, which ensure scalability, fault tolerance, and consistency of the entire system.
"Choosing proper type of scaling", Olena SyrotaFwdays
Imagine an IoT processing system that is already quite mature and production-ready and for which client coverage is growing and scaling and performance aspects are life and death questions. The system has Redis, MongoDB, and stream processing based on ksqldb. In this talk, firstly, we will analyze scaling approaches and then select the proper ones for our system.
"What I learned through reverse engineering", Yuri ArtiukhFwdays
In recent years, I have gained most of my knowledge through reverse engineering, how I did it and what I learned during this period, I decided to share. All this concerns graphic programming, performance, best practices in the frontend.
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
I have heard many times that architecture is not important for the front-end. Also, many times I have seen how developers implement features on the front-end just following the standard rules for a framework and think that this is enough to successfully launch the project, and then the project fails. How to prevent this and what approach to choose? I have launched dozens of complex projects and during the talk we will analyze which approaches have worked for me and which have not.
"Micro frontends: Unbelievably true life story", Dmytro PavlovFwdays
A real life story about the experience of using Micro frontends in an existing Enterprise product. Problems and their solutions on the way from the integration of a separate component to an extensible No-code platform.
"Objects validation and comparison using runtime types (io-ts)", Oleksandr SuhakFwdays
A common task in modern JS is parsing, validating and then comparing JSON objects. In this talk I will quickly go through most common ways to parse/validate and compare objects we use today and then focus more on how runtime types (based on io-ts) can help make such tasks easier and quicker to implement.
"JavaScript. Standard evolution, when nobody cares", Roman SavitskyiFwdays
Should we take a look at JavaScript when everyone is writing in TypeScript? What happens to the standard? What did we get last year? What new features can we expect this and next year? And most importantly, when will Observer be standardized?
Let's try to answer all these questions and even a little more, dream about the future, and enjoy that Observer is alive (or not).
"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...Fwdays
Case study of how small team in Preply started with inheriting an existing ranking model to being able to produce a model per day. In this talk we'll cover steps to take if you find yourself in a similar situation: what kind of technology and processes can you introduce in order to achieve a great speedup in a development speed.
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil TopchiiFwdays
In my talk, I will tell about the world of GenAI services beyond GPT-wrappers and how we developed and scaled GenAI-centric applications. I'll share personal experiences about the obstacles, lessons, and strategic tools and methodologies that were key in taking GenAI applications from 0 to 1. I'll talk about the challenges we faced when launching LLM-based and image generative applications and delivering them to end users, and what conclusions and solutions were made.
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
Python engineers are introduced to the transformative potential of Large Language Models (LLMs) in the realm of advanced data analysis and the application of Semantic Kernel techniques. We will talk about how LLMs like ChatGPT can be integrated into Python environments to automate data processing, enhance predictive modeling, and unlock deeper insights from complex datasets. The session will delve into practical strategies for embedding Semantic Kernel methods within Python projects, illustrating how these advanced techniques can refine the accuracy of machine learning models by embedding domain-specific knowledge directly into the analysis process. Attendees will leave with a clear roadmap for leveraging the combined power of LLMs and Semantic Kernels, equipped with actionable knowledge to drive innovation in their data analysis projects and beyond, marking a significant leap forward in the evolution of Python engineering practices.
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
Federated learning. Algorithmic solution to the problem of privacy preserving ML. Pieces involved to support the training with NVIDIA Flare as example. How newest legislation affects federated learning.
"What is a RAG system and how to build it",Dmytro SpodaretsFwdays
Today, large language models are becoming an integral part of almost every IT solution. However, their use is often accompanied by certain limitations, such as the relevance of information or its depth and specificity. One of the ways to overcome these limitations is the method of working with LLMs - RAG (Retrieval Augmented Generation).
In an ideal world, you would write Python code and then it would work perfectly. But unfortunately, it doesn't work in this manner. In my talk, I'll cover how to efficiently debug your programs, especially in cloud environments or inside Kubernetes.
How Netflix Builds High Performance Applications at Global ScaleScyllaDB
We all want to build applications that are blazingly fast. We also want to scale them to users all over the world. Can the two happen together? Can users in the slowest of environments also get a fast experience? Learn how we do this at Netflix: how we understand every user's needs and preferences and build high performance applications that work for every user, every time.
The DealBook is our annual overview of the Ukrainian tech investment industry. This edition comprehensively covers the full year 2023 and the first deals of 2024.
An invited talk given by Mark Billinghurst on Research Directions for Cross Reality Interfaces. This was given on July 2nd 2024 as part of the 2024 Summer School on Cross Reality in Hagenberg, Austria (July 1st - 7th)
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsMydbops
This presentation, delivered at the Postgres Bangalore (PGBLR) Meetup-2 on June 29th, 2024, dives deep into connection pooling for PostgreSQL databases. Aakash M, a PostgreSQL Tech Lead at Mydbops, explores the challenges of managing numerous connections and explains how connection pooling optimizes performance and resource utilization.
Key Takeaways:
* Understand why connection pooling is essential for high-traffic applications
* Explore various connection poolers available for PostgreSQL, including pgbouncer
* Learn the configuration options and functionalities of pgbouncer
* Discover best practices for monitoring and troubleshooting connection pooling setups
* Gain insights into real-world use cases and considerations for production environments
This presentation is ideal for:
* Database administrators (DBAs)
* Developers working with PostgreSQL
* DevOps engineers
* Anyone interested in optimizing PostgreSQL performance
Contact info@mydbops.com for PostgreSQL Managed, Consulting and Remote DBA Services
What's Next Web Development Trends to Watch.pdfSeasiaInfotech2
Explore the latest advancements and upcoming innovations in web development with our guide to the trends shaping the future of digital experiences. Read our article today for more information.
Kief Morris rethinks the infrastructure code delivery lifecycle, advocating for a shift towards composable infrastructure systems. We should shift to designing around deployable components rather than code modules, use more useful levels of abstraction, and drive design and deployment from applications rather than bottom-up, monolithic architecture and delivery.
Implementations of Fused Deposition Modeling in real worldEmerging Tech
The presentation showcases the diverse real-world applications of Fused Deposition Modeling (FDM) across multiple industries:
1. **Manufacturing**: FDM is utilized in manufacturing for rapid prototyping, creating custom tools and fixtures, and producing functional end-use parts. Companies leverage its cost-effectiveness and flexibility to streamline production processes.
2. **Medical**: In the medical field, FDM is used to create patient-specific anatomical models, surgical guides, and prosthetics. Its ability to produce precise and biocompatible parts supports advancements in personalized healthcare solutions.
3. **Education**: FDM plays a crucial role in education by enabling students to learn about design and engineering through hands-on 3D printing projects. It promotes innovation and practical skill development in STEM disciplines.
4. **Science**: Researchers use FDM to prototype equipment for scientific experiments, build custom laboratory tools, and create models for visualization and testing purposes. It facilitates rapid iteration and customization in scientific endeavors.
5. **Automotive**: Automotive manufacturers employ FDM for prototyping vehicle components, tooling for assembly lines, and customized parts. It speeds up the design validation process and enhances efficiency in automotive engineering.
6. **Consumer Electronics**: FDM is utilized in consumer electronics for designing and prototyping product enclosures, casings, and internal components. It enables rapid iteration and customization to meet evolving consumer demands.
7. **Robotics**: Robotics engineers leverage FDM to prototype robot parts, create lightweight and durable components, and customize robot designs for specific applications. It supports innovation and optimization in robotic systems.
8. **Aerospace**: In aerospace, FDM is used to manufacture lightweight parts, complex geometries, and prototypes of aircraft components. It contributes to cost reduction, faster production cycles, and weight savings in aerospace engineering.
9. **Architecture**: Architects utilize FDM for creating detailed architectural models, prototypes of building components, and intricate designs. It aids in visualizing concepts, testing structural integrity, and communicating design ideas effectively.
Each industry example demonstrates how FDM enhances innovation, accelerates product development, and addresses specific challenges through advanced manufacturing capabilities.
UiPath Community Day Kraków: Devs4Devs ConferenceUiPathCommunity
We are honored to launch and host this event for our UiPath Polish Community, with the help of our partners - Proservartner!
We certainly hope we have managed to spike your interest in the subjects to be presented and the incredible networking opportunities at hand, too!
Check out our proposed agenda below 👇👇
08:30 ☕ Welcome coffee (30')
09:00 Opening note/ Intro to UiPath Community (10')
Cristina Vidu, Global Manager, Marketing Community @UiPath
Dawid Kot, Digital Transformation Lead @Proservartner
09:10 Cloud migration - Proservartner & DOVISTA case study (30')
Marcin Drozdowski, Automation CoE Manager @DOVISTA
Pawel Kamiński, RPA developer @DOVISTA
Mikolaj Zielinski, UiPath MVP, Senior Solutions Engineer @Proservartner
09:40 From bottlenecks to breakthroughs: Citizen Development in action (25')
Pawel Poplawski, Director, Improvement and Automation @McCormick & Company
Michał Cieślak, Senior Manager, Automation Programs @McCormick & Company
10:05 Next-level bots: API integration in UiPath Studio (30')
Mikolaj Zielinski, UiPath MVP, Senior Solutions Engineer @Proservartner
10:35 ☕ Coffee Break (15')
10:50 Document Understanding with my RPA Companion (45')
Ewa Gruszka, Enterprise Sales Specialist, AI & ML @UiPath
11:35 Power up your Robots: GenAI and GPT in REFramework (45')
Krzysztof Karaszewski, Global RPA Product Manager
12:20 🍕 Lunch Break (1hr)
13:20 From Concept to Quality: UiPath Test Suite for AI-powered Knowledge Bots (30')
Kamil Miśko, UiPath MVP, Senior RPA Developer @Zurich Insurance
13:50 Communications Mining - focus on AI capabilities (30')
Thomasz Wierzbicki, Business Analyst @Office Samurai
14:20 Polish MVP panel: Insights on MVP award achievements and career profiling
Video traffic on the Internet is constantly growing; networked multimedia applications consume a predominant share of the available Internet bandwidth. A major technical breakthrough and enabler in multimedia systems research and of industrial networked multimedia services certainly was the HTTP Adaptive Streaming (HAS) technique. This resulted in the standardization of MPEG Dynamic Adaptive Streaming over HTTP (MPEG-DASH) which, together with HTTP Live Streaming (HLS), is widely used for multimedia delivery in today’s networks. Existing challenges in multimedia systems research deal with the trade-off between (i) the ever-increasing content complexity, (ii) various requirements with respect to time (most importantly, latency), and (iii) quality of experience (QoE). Optimizing towards one aspect usually negatively impacts at least one of the other two aspects if not both. This situation sets the stage for our research work in the ATHENA Christian Doppler (CD) Laboratory (Adaptive Streaming over HTTP and Emerging Networked Multimedia Services; https://athena.itec.aau.at/), jointly funded by public sources and industry. In this talk, we will present selected novel approaches and research results of the first year of the ATHENA CD Lab’s operation. We will highlight HAS-related research on (i) multimedia content provisioning (machine learning for video encoding); (ii) multimedia content delivery (support of edge processing and virtualized network functions for video networking); (iii) multimedia content consumption and end-to-end aspects (player-triggered segment retransmissions to improve video playout quality); and (iv) novel QoE investigations (adaptive point cloud streaming). We will also put the work into the context of international multimedia systems research.
Coordinate Systems in FME 101 - Webinar SlidesSafe Software
If you’ve ever had to analyze a map or GPS data, chances are you’ve encountered and even worked with coordinate systems. As historical data continually updates through GPS, understanding coordinate systems is increasingly crucial. However, not everyone knows why they exist or how to effectively use them for data-driven insights.
During this webinar, you’ll learn exactly what coordinate systems are and how you can use FME to maintain and transform your data’s coordinate systems in an easy-to-digest way, accurately representing the geographical space that it exists within. During this webinar, you will have the chance to:
- Enhance Your Understanding: Gain a clear overview of what coordinate systems are and their value
- Learn Practical Applications: Why we need datams and projections, plus units between coordinate systems
- Maximize with FME: Understand how FME handles coordinate systems, including a brief summary of the 3 main reprojectors
- Custom Coordinate Systems: Learn how to work with FME and coordinate systems beyond what is natively supported
- Look Ahead: Gain insights into where FME is headed with coordinate systems in the future
Don’t miss the opportunity to improve the value you receive from your coordinate system data, ultimately allowing you to streamline your data analysis and maximize your time. See you there!
7 Most Powerful Solar Storms in the History of Earth.pdfEnterprise Wired
Solar Storms (Geo Magnetic Storms) are the motion of accelerated charged particles in the solar environment with high velocities due to the coronal mass ejection (CME).
GDG Cloud Southlake #34: Neatsun Ziv: Automating AppsecJames Anderson
The lecture titled "Automating AppSec" delves into the critical challenges associated with manual application security (AppSec) processes and outlines strategic approaches for incorporating automation to enhance efficiency, accuracy, and scalability. The lecture is structured to highlight the inherent difficulties in traditional AppSec practices, emphasizing the labor-intensive triage of issues, the complexity of identifying responsible owners for security flaws, and the challenges of implementing security checks within CI/CD pipelines. Furthermore, it provides actionable insights on automating these processes to not only mitigate these pains but also to enable a more proactive and scalable security posture within development cycles.
The Pains of Manual AppSec:
This section will explore the time-consuming and error-prone nature of manually triaging security issues, including the difficulty of prioritizing vulnerabilities based on their actual risk to the organization. It will also discuss the challenges in determining ownership for remediation tasks, a process often complicated by cross-functional teams and microservices architectures. Additionally, the inefficiencies of manual checks within CI/CD gates will be examined, highlighting how they can delay deployments and introduce security risks.
Automating CI/CD Gates:
Here, the focus shifts to the automation of security within the CI/CD pipelines. The lecture will cover methods to seamlessly integrate security tools that automatically scan for vulnerabilities as part of the build process, thereby ensuring that security is a core component of the development lifecycle. Strategies for configuring automated gates that can block or flag builds based on the severity of detected issues will be discussed, ensuring that only secure code progresses through the pipeline.
Triaging Issues with Automation:
This segment addresses how automation can be leveraged to intelligently triage and prioritize security issues. It will cover technologies and methodologies for automatically assessing the context and potential impact of vulnerabilities, facilitating quicker and more accurate decision-making. The use of automated alerting and reporting mechanisms to ensure the right stakeholders are informed in a timely manner will also be discussed.
Identifying Ownership Automatically:
Automating the process of identifying who owns the responsibility for fixing specific security issues is critical for efficient remediation. This part of the lecture will explore tools and practices for mapping vulnerabilities to code owners, leveraging version control and project management tools.
Three Tips to Scale the Shift Left Program:
Finally, the lecture will offer three practical tips for organizations looking to scale their Shift Left security programs. These will include recommendations on fostering a security culture within development teams, employing DevSecOps principles to integrate security throughout the development
In this follow-up session on knowledge and prompt engineering, we will explore structured prompting, chain of thought prompting, iterative prompting, prompt optimization, emotional language prompts, and the inclusion of user signals and industry-specific data to enhance LLM performance.
Join EIS Founder & CEO Seth Earley and special guest Nick Usborne, Copywriter, Trainer, and Speaker, as they delve into these methodologies to improve AI-driven knowledge processes for employees and customers alike.
Quality Patents: Patents That Stand the Test of TimeAurora Consulting
Is your patent a vanity piece of paper for your office wall? Or is it a reliable, defendable, assertable, property right? The difference is often quality.
Is your patent simply a transactional cost and a large pile of legal bills for your startup? Or is it a leverageable asset worthy of attracting precious investment dollars, worth its cost in multiples of valuation? The difference is often quality.
Is your patent application only good enough to get through the examination process? Or has it been crafted to stand the tests of time and varied audiences if you later need to assert that document against an infringer, find yourself litigating with it in an Article 3 Court at the hands of a judge and jury, God forbid, end up having to defend its validity at the PTAB, or even needing to use it to block pirated imports at the International Trade Commission? The difference is often quality.
Quality will be our focus for a good chunk of the remainder of this season. What goes into a quality patent, and where possible, how do you get it without breaking the bank?
** Episode Overview **
In this first episode of our quality series, Kristen Hansen and the panel discuss:
⦿ What do we mean when we say patent quality?
⦿ Why is patent quality important?
⦿ How to balance quality and budget
⦿ The importance of searching, continuations, and draftsperson domain expertise
⦿ Very practical tips, tricks, examples, and Kristen’s Musts for drafting quality applications
https://www.aurorapatents.com/patently-strategic-podcast.html
25. ES5, Karma, Jasmine, PhantomJS
describe('TodoService', function() {
var TodoService, InitialTodosMock;
// Instantiate Angular JS context
beforeEach(module("app"));
// Register mocks in Angular JS context
beforeEach(module(function($provide) {
InitialTodosMock = [
{
label: 'Test todo',
done: false
}
];
$provide.value('initialTodos', InitialTodosMock);
}));
// Get instance of TodoService with mocked dependencies from Angular JS context
beforeEach(inject(function (_TodoService_) {
TodoService = _TodoService_;
}));
// Oh, ... do the actual testing !!!
it('should have initial todo', function() {
expect(TodoService.todos.length).toBe(1);
expect(TodoService.todos[0].label]).toBe('Test todo');
expect(TodoService.todos[0].done]).toBe(false);
});
});
26. ES5, Karma, Jasmine, PhantomJS
describe('TodoController', function() {
var scope, $rootScope, $controller;
// Instantiate Angular JS context
beforeEach(module('app'));
// Register mocks in Angular JS context
// (sometimes not necessary, we can use real services too, but the Angular context grows...)
beforeEach(module(function($provide) {
var TodoServiceMock = {
todos: [],
addTodo: function() { /*……*/ },
toggleTodo: function() { /*……*/ },
removeDoneTodost() { /*……*/ }
};
$provide.value('TodoService', TodoServiceMock);
}));
// Get instance of TodoController, you know, create new $scope from $rootScope by yourself and stuff...
// It is possible to not use $scope when using 'controllerAs' syntax,
// but you still have to use at least $controller to get the refference to controller itself
beforeEach(inject(function(_$rootScope_, _$controller_, _TodoService_){
$controller = _$controller_;
$rootScope = _$rootScope_;
scope = $rootScope.$new();
$controller('TodoController', {
$scope: scope
TodoService: _TodoService_
});
}));
// Oh, ... do the actual testing !!!
it('should have initial todos', function() {
expect(scope.todos.length).toBe(1);
});
});
27. Issues
• Angular context module(‘app’) must be instantiated to be able to do any
testing. Without Angular context you can’t get access (reference) to your
controllers / services.
• Angular and all other used libraries must be included during testing so that it
is even possible to instantiate Angular context.
• Angular context can grow quite large so that it’s creation will consume
considerable amount of time for every test file.
• Karma exclusion syntax doesn’t follow standard node glob pattern which
can make you go crazy when you try to solve timeout errors caused by
insufficient memory on PhantomJS by splitting test execution into
multiple batches, while supporting dev mode single test execution
(karma uses extra exclude property instead of supporting standard “!”)