This is a practice report showing how Redis, an in-memory data structure store, can be used in distributed environments to communicate, coordinate and to share state.
The talk contains a small introduction to Redis and shows how it can be used in Perl by highlighting key implementation details of a productively used job scheduling system.
All you need to know about Callbacks, Promises, GeneratorsBrainhub
As presented at DevDuck #1 - JavaScript meetup for developers (www.devduck.pl)
Prezentacja z #1 spotkania DevDuck'a w Gliwicach (www.devduck.pl), spotkania mającego na celu poszerzanie wiedzy i wymianę doświadczeń z zakresu szeroko pojętego JS'a, a w szczególności Node.js/React.js i im pochodnych kończących się na ".js" :).
Wykorzystane narzędzia:
- https://github.com/FormidableLabs/spectacle
- https://github.com/ajaxorg/ace
----
Spotkanie odbyło się w Gliwicach w siedzibie Brainhub (www.brainhub.eu)
All you need to know about Callbacks, Promises, GeneratorsBrainhub
As presented at DevDuck #1 - JavaScript meetup for developers (www.devduck.pl)
Prezentacja z #1 spotkania DevDuck'a w Gliwicach (www.devduck.pl), spotkania mającego na celu poszerzanie wiedzy i wymianę doświadczeń z zakresu szeroko pojętego JS'a, a w szczególności Node.js/React.js i im pochodnych kończących się na ".js" :).
Wykorzystane narzędzia:
- https://github.com/FormidableLabs/spectacle
- https://github.com/ajaxorg/ace
----
Spotkanie odbyło się w Gliwicach w siedzibie Brainhub (www.brainhub.eu)
Slides from my lightning talk at Frontend Dev Conf '14.
Wrap-up of dev tools for debugging provided by Google Chrome, including a few non-documented, but very handy ones.
QA Fes 2016. Ярослав Пернеровский. Не Jav'ой единой. Пример автоматизации тес...QAFest
Традиционно, на проектах где back-end писан на Java, фреймворк тестирования тоже строится на технологиях Java. С одной стороны это оправдано единообразием и уже готовым тулсетом у разработчиков. Но с другой стороны немного усложняет вход в автоматизацию для тестировщиков, не знакомых с тонкостями Java. Новичкам, конечно, можно посоветовать более простые для понимания варианты написания тестов на Ruby или Python, но это уже совсем другой мир, и совсем другой геморрой для DevOps. Очень неплохим вариантом в такой ситуации мне видится использование языка программирования Groovy в паре с тест фреймворком Spock. Эта связка позволяет писать понятные REST API тесты на базе уже существующей Java инфраструктуры.
В докладе на примерах посмотрим как это сделать и попытаемся для себя понять есть ли у такого подхода будущее или это просто баловство для ленивых.
Did you know that the .NET compiler turns our async methods into classes? And that .NET adds a try/catch block to each of these classes, potentially hiding thrown exceptions? It's true! In this session, we will learn how to best use async/await in C# by analyzing how .NET compiles our async code. Join me as we take an existing app and optimize its async code together, showing off performance gains, better exception handling, improved run-time speed, and smaller app size!
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/2a2Djbp.
Gerard Sans explains RxJS' data architecture based on reactive programming, exploring Observables API using RxJS koans and unit tests. RxJS 5 focuses on performance and usability. Filmed at qconlondon.com.
Gerard Sans is a multi-talented Computer Science Engineer specialised in Web. He has lived and worked for all sorts of companies in Germany, Brazil, UK and Spain. He enjoys running AngularJS Labs London, mentoring AngularJS students, participating in the community, giving talks and writing technical articles at Medium.
No More Deadlocks; Asynchronous Programming in .NETFilip Ekberg
In this talk I go over what asynchronous programming is, and how to use it. We will discover how to avoid potential deadlocks and what the best practices are in asynchronous programming in .NET.
Probably everyone has heard about reactive programming but not everyone tried to use it in real projects.
This presentation is about reactive approach basics and about own experience of integrating this approach into real Android project step by step.
Slides from my lightning talk at Frontend Dev Conf '14.
Wrap-up of dev tools for debugging provided by Google Chrome, including a few non-documented, but very handy ones.
QA Fes 2016. Ярослав Пернеровский. Не Jav'ой единой. Пример автоматизации тес...QAFest
Традиционно, на проектах где back-end писан на Java, фреймворк тестирования тоже строится на технологиях Java. С одной стороны это оправдано единообразием и уже готовым тулсетом у разработчиков. Но с другой стороны немного усложняет вход в автоматизацию для тестировщиков, не знакомых с тонкостями Java. Новичкам, конечно, можно посоветовать более простые для понимания варианты написания тестов на Ruby или Python, но это уже совсем другой мир, и совсем другой геморрой для DevOps. Очень неплохим вариантом в такой ситуации мне видится использование языка программирования Groovy в паре с тест фреймворком Spock. Эта связка позволяет писать понятные REST API тесты на базе уже существующей Java инфраструктуры.
В докладе на примерах посмотрим как это сделать и попытаемся для себя понять есть ли у такого подхода будущее или это просто баловство для ленивых.
Did you know that the .NET compiler turns our async methods into classes? And that .NET adds a try/catch block to each of these classes, potentially hiding thrown exceptions? It's true! In this session, we will learn how to best use async/await in C# by analyzing how .NET compiles our async code. Join me as we take an existing app and optimize its async code together, showing off performance gains, better exception handling, improved run-time speed, and smaller app size!
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/2a2Djbp.
Gerard Sans explains RxJS' data architecture based on reactive programming, exploring Observables API using RxJS koans and unit tests. RxJS 5 focuses on performance and usability. Filmed at qconlondon.com.
Gerard Sans is a multi-talented Computer Science Engineer specialised in Web. He has lived and worked for all sorts of companies in Germany, Brazil, UK and Spain. He enjoys running AngularJS Labs London, mentoring AngularJS students, participating in the community, giving talks and writing technical articles at Medium.
No More Deadlocks; Asynchronous Programming in .NETFilip Ekberg
In this talk I go over what asynchronous programming is, and how to use it. We will discover how to avoid potential deadlocks and what the best practices are in asynchronous programming in .NET.
Probably everyone has heard about reactive programming but not everyone tried to use it in real projects.
This presentation is about reactive approach basics and about own experience of integrating this approach into real Android project step by step.
Data Con LA 2020
Description
MySQL is an ubiquitous relational database that can also be used as a NoSQL JSON document store. That means you do not need a DBA to set up tables - just connect and start saving data. And you can access the NoSQL data from the SQL side or the SQL data from the NoSQL side which gives you the best of both the SQL and NoSQL worlds on the same server.
*Learn how to use the X DevAPI protocol for CRUD based operations
*See how to use JSON_TABLE() to turn unstructured data temporarily structured
*Understand how JSON really makes your relational database faster
*How to extract JSON data into a relational column
Speaker
Dave Stokes,Oracle, MySQL Community Manager
MySQL Without the SQL - Oh My! August 2nd presentation at Mid Atlantic Develo...Dave Stokes
MySQL Document Store allows you to use MySQL as a JSON Document Databases without needing to set up relational tables, normalize data, or use Structured Query Language.
"ClojureScript journey: from little script, to CLI program, to AWS Lambda fun...Julia Cherniak
In this talk, I’d like to show that engineer, in order to make progress, should develop its own “outside the box” thinking. Experienced programmer regardless of the language ought to look at things from various standpoints outside the commonly used paradigm. This allows her to choose the proper strategy which fits the task, customer’s requirements, saves time and money. Having our product as an example, I’d like to show new language and new methods, which are not that frequently used in the mainstream. I believe this will broaden the horizon of the conference audience.
We have compiled the most important slides from each speaker's presentation. This year’s compilation, available for free, captures the key insights and contributions shared during the DfMAy 2024 conference.
Hierarchical Digital Twin of a Naval Power SystemKerry Sado
A hierarchical digital twin of a Naval DC power system has been developed and experimentally verified. Similar to other state-of-the-art digital twins, this technology creates a digital replica of the physical system executed in real-time or faster, which can modify hardware controls. However, its advantage stems from distributing computational efforts by utilizing a hierarchical structure composed of lower-level digital twin blocks and a higher-level system digital twin. Each digital twin block is associated with a physical subsystem of the hardware and communicates with a singular system digital twin, which creates a system-level response. By extracting information from each level of the hierarchy, power system controls of the hardware were reconfigured autonomously. This hierarchical digital twin development offers several advantages over other digital twins, particularly in the field of naval power systems. The hierarchical structure allows for greater computational efficiency and scalability while the ability to autonomously reconfigure hardware controls offers increased flexibility and responsiveness. The hierarchical decomposition and models utilized were well aligned with the physical twin, as indicated by the maximum deviations between the developed digital twin hierarchy and the hardware.
HEAP SORT ILLUSTRATED WITH HEAPIFY, BUILD HEAP FOR DYNAMIC ARRAYS.
Heap sort is a comparison-based sorting technique based on Binary Heap data structure. It is similar to the selection sort where we first find the minimum element and place the minimum element at the beginning. Repeat the same process for the remaining elements.
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)MdTanvirMahtab2
This presentation is about the working procedure of Shahjalal Fertilizer Company Limited (SFCL). A Govt. owned Company of Bangladesh Chemical Industries Corporation under Ministry of Industries.
48. Job Lock (simple)
redis> SET job:2:lock whatever NX
"OK"
redis> SET job:2:lock whatever NX
(Nil)
redis> DEL job:2:lock
(integer) 1
redis> SET job:2:lock whatever NX
"OK"
redis>
49. Job Lock (timeout)
redis> SET job:2:lock unique_nounce_ao45u89 EX 3600 NX
"OK"
redis> SET job:2:lock sl8ts90eu EX 3600 NX
(Nil)
redis>
Unlock:
run serverside Lua code to delete the key if the nouce is still correct
(https://redis.io/commands/set)
50. 01 sub pick_pending_job {
02 my ($r) = @_;
03 # get jobs ready to run
04 my @jobqueue = $r->zrangebyscore('jobqueue', '-INF', time());
05 for my $job (@jobqueue) {
06 # lock job
07 if($r->set("$job:lock", "$HOSTNAME:$$", 'EX', $TIMEOUT, 'NX')) {
08 # did anyone change it in between? (race condition)
09 my $current_schedule = $r->zscore('jobqueue', $job);
10 if (defined $current_schedule && $current_schedule <= time()) {
11 # all good, we move it now in the job queue to the timeout
12 $r->zadd('jobqueue', time() + $TIMEOUT, $job);
13 return $job;
14 }
15 # unlock job (simple)
16 $r->del("$job:lock");
17 }
18 }
19 return;
20 }