Presentation made on January 2011 about node.js. This technology was used to be the main technology behind the API on "Guia VIVO TV" (codename TVSTAR) with MongoDB.
Dicas para publicar e manter sua aplicação NodeJS em produção. Configure o Express corretamente, trate erros, use o Nginx no seu máximo, monitore sua aplicação javascript server-side com newrelic e logs.
An introduction to developing with Node.js and some useful tools to help the development and deployment processes. This talk was given at Asyncjs in Brighton
http://asyncjs.com/intro-nodejs
Paweł Skotnicki: Masz zacząć pracę z legacy code? Nie wiesz, gdzie najlepiej zrobić refactor? A może zaczynasz nowy projekt, który, tym razem, ma utrzymywać najwyższą jakość kodu? Istnieje sporo narzędzi, które mają w tym pomóc, a my często o nich zapominamy. Przedstawię lub przypomnę część z nich.
Rising from non-existence a few short years ago, Node.js is already attracting the accolades and disdain enjoyed and endured by the Ruby and Rails community just a short time ago. It overtook Rails as the most popular Github repository in 2011 and was selected by InfoWorld for the Technology of the Year Award in 2012. This presentation explains the basic theory and programming model central to Node's approach and will help you understand the resulting benefits and challenges it presents. You can also watch this presentation at http://bit.ly/1362UGA
Dicas para publicar e manter sua aplicação NodeJS em produção. Configure o Express corretamente, trate erros, use o Nginx no seu máximo, monitore sua aplicação javascript server-side com newrelic e logs.
An introduction to developing with Node.js and some useful tools to help the development and deployment processes. This talk was given at Asyncjs in Brighton
http://asyncjs.com/intro-nodejs
Paweł Skotnicki: Masz zacząć pracę z legacy code? Nie wiesz, gdzie najlepiej zrobić refactor? A może zaczynasz nowy projekt, który, tym razem, ma utrzymywać najwyższą jakość kodu? Istnieje sporo narzędzi, które mają w tym pomóc, a my często o nich zapominamy. Przedstawię lub przypomnę część z nich.
Rising from non-existence a few short years ago, Node.js is already attracting the accolades and disdain enjoyed and endured by the Ruby and Rails community just a short time ago. It overtook Rails as the most popular Github repository in 2011 and was selected by InfoWorld for the Technology of the Year Award in 2012. This presentation explains the basic theory and programming model central to Node's approach and will help you understand the resulting benefits and challenges it presents. You can also watch this presentation at http://bit.ly/1362UGA
Nodejs Event Driven Concurrency for Web ApplicationsGanesh Iyer
We describe the event-driven concurrency model used by Nodejs, a JavaScript server-side scripting platform. An overview of the traditional thread based approach(used by Apache) is also given. We compare both the approaches. An Introduction to Nodejs programming is provided and some useful packages are discussed.
Has the traditional intro to event looped servers (thanks Ryan!) with a couple of examples of why I think node.js is particularly exciting today. Code for the demos can be found at https://github.com/davidpadbury/node-intro.
This is a presentation I prepared for a local meetup. The audience is a mix of web designers and developers who have a wide range of development experience.
Talking about future of NodeJS, from Node 7 to Node 10.
NPM 5. N-API, async_hooks, util.promisify().
A big part on the ESM vs CommonJS module loader, and all the problem NodeJS is facing to implement ESM.
These are the slides from the sold out Philly Tech Week Introduction to NodeJS workshop run by Ross Kukulinski, a product manager at NodeSource.
In this tutorial, we will provide a brief overview of NodeJS, including its strengths and weaknesses, best practices, and package management. After the introduction, attendees will have the remainder of the tutorial to learn NodeJS through hands-on NodeSchool.io exercises with assistance from a team of mentors.
NodeSchool.io is a series of choose-your-own-adventure style workshops that teach people how to use NodeJS, NPM, and other related tools by writing code to solve realistic problems. NodeSchool is entirely community driven and is 100% open source, which means you can take the exercises home and continue to learn!
Get on board the NodeJS Express as we take a journey through what makes NodeJS special. Server-side JavaScript that has an event loop for a heart, we'll delve into its single threaded nature and the advantages provided. From there we'll pass through the land of the Node Package Management tool, how to set up your own package and bring in useful 3rd party packages as dependencies. Our final destination is ExpressJS, a Sinatra inspired framework for NodeJS.
Original slides from Ryan Dahl's NodeJs intro talkAarti Parikh
These are the original slides from the nodejs talk. I was surprised not find them on slideshare so adding them. The video link is here https://www.youtube.com/watch?v=ztspvPYybIY
Node.js uses JavaScript - a language known to millions of developers worldwide - thus giving it a much lower learning curve even for complete beginners. Using Node.js you can build simple Command Line programs or complex enterprise level web applications with equal ease. Node.js is an event-driven, server-side, asynchronous development platform with lightning speed execution. Node.js helps you to code the most complex functionalities in just a few lines of code.
Mathilde Lemée & Romain Maton
La théorie, c’est bien, la pratique … aussi !
Venez nous rejoindre pour découvrir les profondeurs de Node.js !
Nous nous servirons d’un exemple pratique pour vous permettre d’avoir une premiere experience complete autour de Node.js et de vous permettre de vous forger un avis sur ce serveur Javascript qui fait parler de lui !
http://soft-shake.ch/2011/conference/sessions/incubator/2011/09/01/hands-on-nodejs.html
Nodejs Event Driven Concurrency for Web ApplicationsGanesh Iyer
We describe the event-driven concurrency model used by Nodejs, a JavaScript server-side scripting platform. An overview of the traditional thread based approach(used by Apache) is also given. We compare both the approaches. An Introduction to Nodejs programming is provided and some useful packages are discussed.
Has the traditional intro to event looped servers (thanks Ryan!) with a couple of examples of why I think node.js is particularly exciting today. Code for the demos can be found at https://github.com/davidpadbury/node-intro.
This is a presentation I prepared for a local meetup. The audience is a mix of web designers and developers who have a wide range of development experience.
Talking about future of NodeJS, from Node 7 to Node 10.
NPM 5. N-API, async_hooks, util.promisify().
A big part on the ESM vs CommonJS module loader, and all the problem NodeJS is facing to implement ESM.
These are the slides from the sold out Philly Tech Week Introduction to NodeJS workshop run by Ross Kukulinski, a product manager at NodeSource.
In this tutorial, we will provide a brief overview of NodeJS, including its strengths and weaknesses, best practices, and package management. After the introduction, attendees will have the remainder of the tutorial to learn NodeJS through hands-on NodeSchool.io exercises with assistance from a team of mentors.
NodeSchool.io is a series of choose-your-own-adventure style workshops that teach people how to use NodeJS, NPM, and other related tools by writing code to solve realistic problems. NodeSchool is entirely community driven and is 100% open source, which means you can take the exercises home and continue to learn!
Get on board the NodeJS Express as we take a journey through what makes NodeJS special. Server-side JavaScript that has an event loop for a heart, we'll delve into its single threaded nature and the advantages provided. From there we'll pass through the land of the Node Package Management tool, how to set up your own package and bring in useful 3rd party packages as dependencies. Our final destination is ExpressJS, a Sinatra inspired framework for NodeJS.
Original slides from Ryan Dahl's NodeJs intro talkAarti Parikh
These are the original slides from the nodejs talk. I was surprised not find them on slideshare so adding them. The video link is here https://www.youtube.com/watch?v=ztspvPYybIY
Node.js uses JavaScript - a language known to millions of developers worldwide - thus giving it a much lower learning curve even for complete beginners. Using Node.js you can build simple Command Line programs or complex enterprise level web applications with equal ease. Node.js is an event-driven, server-side, asynchronous development platform with lightning speed execution. Node.js helps you to code the most complex functionalities in just a few lines of code.
Mathilde Lemée & Romain Maton
La théorie, c’est bien, la pratique … aussi !
Venez nous rejoindre pour découvrir les profondeurs de Node.js !
Nous nous servirons d’un exemple pratique pour vous permettre d’avoir une premiere experience complete autour de Node.js et de vous permettre de vous forger un avis sur ce serveur Javascript qui fait parler de lui !
http://soft-shake.ch/2011/conference/sessions/incubator/2011/09/01/hands-on-nodejs.html
Slides from a presentation that David Lopez (@lopezator) and me made for the students of the University of the Basque Country (UPV/EHU) where we talk about current technologies and methodologies used in professional web development.
CSS3, jQuery, Composer, MVC, Clean Code, Git, etc. are different items we talked about.
Some examples shown in the presentation available at:
http://ojoven.es/labs/ehu2014/
Fundamental Node.js (Workshop bersama Front-end Developer GITS Indonesia, War...GITS Indonesia
Salah satu front-end developer GITS Indonesia, Warsono, mengisi workshop di universitas, mengenai Vue.js.
Ikuti kami di kanal berikut, agar tidak ketinggalan acara seru:
Instagram: @gitsindonesia
LinkedIn: GITS Indonesia
Website: gits.id
Developing realtime apps with Drupal and NodeJS drupalcampest
Based on Google's V8 JavaScript engine, NodeJS is a fairly new platform for creating scalable and real-time web applications. I will introduce you to NodeJS internals and ecosystem as well as exaplain why and how you can use Node in your Drupal based projects.
Developer Experience - Escalando Negócios com a melhor experiência ao desenvo...David Ruiz
Você sabe o que é Developer Experience? Nesta apresentação você irá aprender o conceito e quais pontos importantes você deverá considerar na jornada do provedor (aquele que desenhas às APIs) e do consumidor (desenvolvedor).
Plataformas de Inovação - Criando ConexõesDavid Ruiz
Através da utilização de plataformas de inovação, sejam elas digitais ou físicas como espaços de colaboração, como a Cartão Elo está conectando com desenvolvedores, empreendedores, startups e scale-ups no Brasil.
Hoodie (www.hood.ie) é um projeto opensource que permite com que você desenvolva aplicações web sem ae preocupar com backend, banco de dados e servidores. Através de sua API é possivel criar aplicações em menos de 15 minutos com suporte de dados offline, excelente para aplicativos moveis.
O objetivo desta apresentação é de demonstrar toda a história, objetivo e ferramentas para começar o desenvolvimento de novos aplicativos para Firefox OS.
Nesta apresentação faço uma introdução ao Firefox OS passando pela necessidade do mercado, a importância de se utilizar uma plataforma realmente aberta (Open Web Devices), como é dividido internamente o Firefox OS e também indico links importantes para se iniciar no desenvolvimento para Firefox OS.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
As AI technology is pushing into IT I was wondering myself, as an “infrastructure container kubernetes guy”, how get this fancy AI technology get managed from an infrastructure operational view? Is it possible to apply our lovely cloud native principals as well? What benefit’s both technologies could bring to each other?
Let me take this questions and provide you a short journey through existing deployment models and use cases for AI software. On practical examples, we discuss what cloud/on-premise strategy we may need for applying it to our own infrastructure to get it to work from an enterprise perspective. I want to give an overview about infrastructure requirements and technologies, what could be beneficial or limiting your AI use cases in an enterprise environment. An interactive Demo will give you some insides, what approaches I got already working for real.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...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 the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
JMeter webinar - integration with InfluxDB and Grafana
node.js - Eventful JavaScript on the Server
1. node.js - Eventful JavaScript on the Server
By David Ruiz - @wupsbr
Centro de Inovação do grupo Telefônica Brasil
2. What is node.js?
In a nutshell, it’s JavaScript on
the server side
Created by Ryan Dahl (@ryah) in
2009
Based on the Google V8
JavaScript engine + Evented I/O
Performance is king:
Property access through hidden
classes
Machine code
Garbage collection
3. Want a HTTP Server?
var http = require('http');
http.createServer(function(req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Welcome to the HTTP Server!');
}).listen(4000);
4. Want a TCP Server?
var tcp = require('net');
tcp.createServer(function(socket) {
socket.addListener('connect', function() {
socket.write('Welcome to the TCP Server!n>');
});
}).listen(4000);
6. Evented I/O + V8 Engine
libeio: async I/O
libev: event loop
libuv: wrapper for libev and IOCP
There is a single thread running
No parallel execution... for YOUR code!
db.query().select('*').from('users').execute(function(){
fs.readFile('settings.json', function () {
// Block for five seconds :(
var now = new Date().getTime();
while(new Date().getTime() < now + 5000);
// Response :)
});
});
7. What about multiple cores?
The load balancer approach
:1337
:1338
:1339
The OS approach
var http = require('http'), cluster = require('cluster');
var server = http.createServer(function(req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('TID Rocks!');
});
cluster(server).listen(1337);
8. And about packages?
One line install:
# curl http://npmjs.org/install.sh | sh
Now, let’s install the node.js mysql client?
# npm install mysql
9. And about packages?
One line install:
# curl http://npmjs.org/install.sh | sh
Now, let’s install the node.js mysql client?
There are more than 4900 packages, and more
# npm install mysql
than 15 are added each day!
10. Let’s check the performance
PHP NODE.JS
$a = null; var i, a, b, c, max;
$b = null;
$c = null; max = 1e6;
$i = null;
$max = 1e6; console.time('maths');
$start = microtime(true); for (i = 0; i < max; i++)
{
for ($i = 0; $i < $max; $i++) a = 1234 + 5678 + i;
{ b = 1234 * 5678 + i;
$a = 1234 + 5678 + $i; c = 1234 / 2 + i;
$b = 1234 * 5678 + $i; }
$c = 1234 / 2 + $i;
} console.timeEnd('maths');
var_dump(microtime(true) - $start);
http://www.matt-knight.co.uk/2011/node-js-vs-php-performance-maths/
11. Let’s check the performance
RESULTS IN SECONDS
PHP NODE.JS
$a = null; LOOP SIZE PHP var i, a, b, c, max; NODE.JS
$b = null;
$c = null; max = 1e6;
$i = null;
$max = 1e6; console.time('maths');
100.000 0,077 0,002
$start = microtime(true); for (i = 0; i < max; i++)
{
for ($i = 0; $i < $max; $i++) a = 1234 + 5678 + i;
{ 1.000.000 0,759 b = 1234 * 5678 + 0,016
i;
$a = 1234 + 5678 + $i; c = 1234 / 2 + i;
$b = 1234 * 5678 + $i; }
$c = 1234 / 2 + $i;
} console.timeEnd('maths');
10.000.000 7,605 0,157
var_dump(microtime(true) - $start);
100.000.000 75,159 1,567
http://www.matt-knight.co.uk/2011/node-js-vs-php-performance-maths/
12. Who are using node.js?
linkedin (m.linkedin.com) - mobile stack
The improvements the team saw were staggering. They went from running 15
servers with 15 instances (virtual servers) on each physical machine, to just 4
instances that can handle double the traffic.
http://venturebeat.com/2011/08/16/linkedin-node/
klout (klout.com) - frontend + api
In our tests, a single node.js process was able to handle thousands of
concurrent connections in a very CPU-efficient manner. Plus, using JavaScript
on both the server and the client made writing multi-purpose code very
straightforward. We knew of other companies using node.js at the time, but
most were using it to serve APIs.
http://corp.klout.com/blog/2011/10/the-tech-behind-klout-com/
and many others: HP Yahoo!, Nokia, Heroku, VMWare, Loopt ....
,
14. Cross platform socket
About Socket.IO Supported languages
Socket.IO aims to make realtime apps Cocoa (iOS)
- fpotter/socketio-cocoa
possible in every browser and mobile Erlang
device, blurring the differences - yrashk/socket.io-erlang
Flash
between the different transport - simb/FlashSocket.IO
mechanisms. It's care-free realtime Go
- madari/go-socket.io (Currently not compatible with 0.7+)
100% in JavaScript. Java
In order to provide realtime connectivity - ibdknox/socket.io-netty
- benkay/java-socket.io.client
on every browser, Socket.IO selects - Ovea/Socket.IO-Java
Lua
the most capable transport at runtime, - ignacio/LuaNode-Socket.IO
without it affecting the API: MrJoes/tornadio (0.6)
- gevent-socketio
WebSocket, Adobe® Flash® Socket, Perl
AJAX long polling, AJAX multipart - vti/pocketio
Python
streaming, Forever Iframe and JSONP - MrJoes/tornadio2 (0.7+)
Polling. Ruby
- markjeee/Socket.IO-rack
15. The node.js ecosystem
Express Cluster
A Sinatra inspired node.js web development Extensible multi-core server management for
framework. nodejs.
Jade Supervisor
Jade is a high performance template engine A little supervisor script for nodejs. It runs
heavily influenced by Haml and implemented your program, and watches for code
with JavaScript for node. changes, so you can have hot-code
Socket.io reloading-ish behavior, without worrying
An simple HTTP Socket interface about memory leaks.
implementation and server. Joyent (http://no.de)
Mongoose Free SmartMachine hosting to delivery
Mongoose aims at solving the complexities modern applications with nodejs.
associated with asynchronous data storage Expresso
by providing a more intuitive API. TDD for nodejs projects in express.
Testosterone
Another and simple TDD for nodejs.