Skip to content

Latest commit

History

107 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Index of my presentations

Offline first

Go to the presentation

Advices for effective caching and fetch strategies in Service Workers.

The Open Web at your Fingertips

Go to the presentation

Like other major Internet companies, Mozilla offers a network of resources for teaching and learning about the technologies needed to build content for the Web. Since it can be difficult to learn skills in isolation, Mozilla supports and is sustained by an extensive global community of volunteer contributors writing code, reporting and logging bugs, writing documentation and more. There are many Mozilla community spaces and projects where developers can share experiences, get involved in contributing to an open source collaborative free-software project, and learn from talented professionals.

From Web Application to Progressive Web Application

Go to the presentation

A progressive web application is simply a good old web application that exhibits native behaviour and performance on modern browsers. Discover in 30 minutes and through actual code snippets how to convert a web app into a progressive web app!

When is the Web the Right Answer —and Why?

Go to the presentation

Going native or building for Web is a perennial hot topic in the mobile development space, but treating these alternatives as irreconcilable is naive. Nowadays, each option offers distinct opportunities and advantages. With the advent of new web technologies such as Service Workers, Push API and Web Manifest, it's time to reconsider the Web as a competitive platform.

At your service: advanced uses of service workers

Go to the presentation

Service Workers are more than an application cache replacement, they are programmable proxies in the client side. Let's review some off-label uses for Service Workers!

Syntactic macros in Python

Go to the presentation

Syntactic macros grant the developer the right to abuse the language syntax for not intended goals.

One Encoding To Rule Them All

Go to the presentation

Plain text is a legend, a myth. Discover what happen each time you press a letter in There and Back Again, what an encoding scheme means and how to deal with codification in Python and JavaScript.

Method dispatching in Python

Go to the presentation

The presentation remember the importance of method dispatching in OOP in general and in Python in particular thorugh three examples (and two extra) of __getattribute__(): typo tolerant APIs, restricted APIs and access control to private class members.

WebRTC & Web Components

Go to the presentation

The future of the Web will involve new ways of communications and modularization. The presentation talks about how the modern web will implement these new features through the use of WebRTC and Web Components and shows some examples of usage.

Idiomatic Python

Go to the presentation

The presentation provides common idioms you can find in Python related with the following topics:

  • Syntax
  • Loops
  • Dictionaries
  • List & Tuples
  • Strings
  • Contexts

Five algorithms easy to understand (that you probably don't know)

Go to the presentation

This is a presentation for the Telefonica master in Advanced Programming at U-TAD, Five algorithms easy to understand (that you probably don't know).

The presentation talks about 5 algorithms / techniques not very complicated but quite useful:

  • Cryptograhpic hash functions
  • Proof of work
  • Centroid clustering
  • MapReduce
  • Linear time sorting

Beautiful APIs

Go to the presentation

Here you have my presentation for the Dev Con 2013, Beautiful APIs.

The presentation covers some design principles from the point of view of API desing. Identified principles are:

  • Unity / Goal
  • Harmony / Predictability
  • Balance / Completeness
  • Hierarchy / Modularity
  • Proportion / Scope
  • Emphasis / Features

Python data model

Go to the presentation

Here you have my presentation for the Dev Con 2013, Python data model.

The presentation presents the Python datamodel in a friendly way. Actually the main attraction was I drew the pictures on live during the conference. =)

Metaprogramming in Python & JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Metaprogramming in Python & JavaScript.

The presentation is a comparison between both programming languages, specially its function model and present some interesting toppics:

  • Evaluation of strings as programs
  • Decorators
  • DRY interfaces
  • Dynamic runtime data models (Live APIs)
  • On the fly methods

Continuation Passing Style with JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Continuation Passing Style with JavaScript.

The presentation is an introduction about CPS in JavaScript that covers the following aspects:

  • Comparison between CPS and classical style
  • Current use of CPS
  • Problems using CPS (The Pyramid of DOOM)
  • Non-blocking programming
  • Coordinating async functions (flatting the Pyramid of DOOM)

About

Some presentations about several topics

Resources

Stars

35 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
GitHub - delapuente/presentations: Some presentations about several topics · GitHub
Skip to content

Latest commit

History

107 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Index of my presentations

Offline first

Go to the presentation

Advices for effective caching and fetch strategies in Service Workers.

The Open Web at your Fingertips

Go to the presentation

Like other major Internet companies, Mozilla offers a network of resources for teaching and learning about the technologies needed to build content for the Web. Since it can be difficult to learn skills in isolation, Mozilla supports and is sustained by an extensive global community of volunteer contributors writing code, reporting and logging bugs, writing documentation and more. There are many Mozilla community spaces and projects where developers can share experiences, get involved in contributing to an open source collaborative free-software project, and learn from talented professionals.

From Web Application to Progressive Web Application

Go to the presentation

A progressive web application is simply a good old web application that exhibits native behaviour and performance on modern browsers. Discover in 30 minutes and through actual code snippets how to convert a web app into a progressive web app!

When is the Web the Right Answer —and Why?

Go to the presentation

Going native or building for Web is a perennial hot topic in the mobile development space, but treating these alternatives as irreconcilable is naive. Nowadays, each option offers distinct opportunities and advantages. With the advent of new web technologies such as Service Workers, Push API and Web Manifest, it's time to reconsider the Web as a competitive platform.

At your service: advanced uses of service workers

Go to the presentation

Service Workers are more than an application cache replacement, they are programmable proxies in the client side. Let's review some off-label uses for Service Workers!

Syntactic macros in Python

Go to the presentation

Syntactic macros grant the developer the right to abuse the language syntax for not intended goals.

One Encoding To Rule Them All

Go to the presentation

Plain text is a legend, a myth. Discover what happen each time you press a letter in There and Back Again, what an encoding scheme means and how to deal with codification in Python and JavaScript.

Method dispatching in Python

Go to the presentation

The presentation remember the importance of method dispatching in OOP in general and in Python in particular thorugh three examples (and two extra) of __getattribute__(): typo tolerant APIs, restricted APIs and access control to private class members.

WebRTC & Web Components

Go to the presentation

The future of the Web will involve new ways of communications and modularization. The presentation talks about how the modern web will implement these new features through the use of WebRTC and Web Components and shows some examples of usage.

Idiomatic Python

Go to the presentation

The presentation provides common idioms you can find in Python related with the following topics:

  • Syntax
  • Loops
  • Dictionaries
  • List & Tuples
  • Strings
  • Contexts

Five algorithms easy to understand (that you probably don't know)

Go to the presentation

This is a presentation for the Telefonica master in Advanced Programming at U-TAD, Five algorithms easy to understand (that you probably don't know).

The presentation talks about 5 algorithms / techniques not very complicated but quite useful:

  • Cryptograhpic hash functions
  • Proof of work
  • Centroid clustering
  • MapReduce
  • Linear time sorting

Beautiful APIs

Go to the presentation

Here you have my presentation for the Dev Con 2013, Beautiful APIs.

The presentation covers some design principles from the point of view of API desing. Identified principles are:

  • Unity / Goal
  • Harmony / Predictability
  • Balance / Completeness
  • Hierarchy / Modularity
  • Proportion / Scope
  • Emphasis / Features

Python data model

Go to the presentation

Here you have my presentation for the Dev Con 2013, Python data model.

The presentation presents the Python datamodel in a friendly way. Actually the main attraction was I drew the pictures on live during the conference. =)

Metaprogramming in Python & JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Metaprogramming in Python & JavaScript.

The presentation is a comparison between both programming languages, specially its function model and present some interesting toppics:

  • Evaluation of strings as programs
  • Decorators
  • DRY interfaces
  • Dynamic runtime data models (Live APIs)
  • On the fly methods

Continuation Passing Style with JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Continuation Passing Style with JavaScript.

The presentation is an introduction about CPS in JavaScript that covers the following aspects:

  • Comparison between CPS and classical style
  • Current use of CPS
  • Problems using CPS (The Pyramid of DOOM)
  • Non-blocking programming
  • Coordinating async functions (flatting the Pyramid of DOOM)

About

Some presentations about several topics

Resources

Stars

35 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - delapuente/presentations: Some presentations about several topics · GitHub
Skip to content

Latest commit

History

107 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Index of my presentations

Offline first

Go to the presentation

Advices for effective caching and fetch strategies in Service Workers.

The Open Web at your Fingertips

Go to the presentation

Like other major Internet companies, Mozilla offers a network of resources for teaching and learning about the technologies needed to build content for the Web. Since it can be difficult to learn skills in isolation, Mozilla supports and is sustained by an extensive global community of volunteer contributors writing code, reporting and logging bugs, writing documentation and more. There are many Mozilla community spaces and projects where developers can share experiences, get involved in contributing to an open source collaborative free-software project, and learn from talented professionals.

From Web Application to Progressive Web Application

Go to the presentation

A progressive web application is simply a good old web application that exhibits native behaviour and performance on modern browsers. Discover in 30 minutes and through actual code snippets how to convert a web app into a progressive web app!

When is the Web the Right Answer —and Why?

Go to the presentation

Going native or building for Web is a perennial hot topic in the mobile development space, but treating these alternatives as irreconcilable is naive. Nowadays, each option offers distinct opportunities and advantages. With the advent of new web technologies such as Service Workers, Push API and Web Manifest, it's time to reconsider the Web as a competitive platform.

At your service: advanced uses of service workers

Go to the presentation

Service Workers are more than an application cache replacement, they are programmable proxies in the client side. Let's review some off-label uses for Service Workers!

Syntactic macros in Python

Go to the presentation

Syntactic macros grant the developer the right to abuse the language syntax for not intended goals.

One Encoding To Rule Them All

Go to the presentation

Plain text is a legend, a myth. Discover what happen each time you press a letter in There and Back Again, what an encoding scheme means and how to deal with codification in Python and JavaScript.

Method dispatching in Python

Go to the presentation

The presentation remember the importance of method dispatching in OOP in general and in Python in particular thorugh three examples (and two extra) of __getattribute__(): typo tolerant APIs, restricted APIs and access control to private class members.

WebRTC & Web Components

Go to the presentation

The future of the Web will involve new ways of communications and modularization. The presentation talks about how the modern web will implement these new features through the use of WebRTC and Web Components and shows some examples of usage.

Idiomatic Python

Go to the presentation

The presentation provides common idioms you can find in Python related with the following topics:

  • Syntax
  • Loops
  • Dictionaries
  • List & Tuples
  • Strings
  • Contexts

Five algorithms easy to understand (that you probably don't know)

Go to the presentation

This is a presentation for the Telefonica master in Advanced Programming at U-TAD, Five algorithms easy to understand (that you probably don't know).

The presentation talks about 5 algorithms / techniques not very complicated but quite useful:

  • Cryptograhpic hash functions
  • Proof of work
  • Centroid clustering
  • MapReduce
  • Linear time sorting

Beautiful APIs

Go to the presentation

Here you have my presentation for the Dev Con 2013, Beautiful APIs.

The presentation covers some design principles from the point of view of API desing. Identified principles are:

  • Unity / Goal
  • Harmony / Predictability
  • Balance / Completeness
  • Hierarchy / Modularity
  • Proportion / Scope
  • Emphasis / Features

Python data model

Go to the presentation

Here you have my presentation for the Dev Con 2013, Python data model.

The presentation presents the Python datamodel in a friendly way. Actually the main attraction was I drew the pictures on live during the conference. =)

Metaprogramming in Python & JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Metaprogramming in Python & JavaScript.

The presentation is a comparison between both programming languages, specially its function model and present some interesting toppics:

  • Evaluation of strings as programs
  • Decorators
  • DRY interfaces
  • Dynamic runtime data models (Live APIs)
  • On the fly methods

Continuation Passing Style with JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Continuation Passing Style with JavaScript.

The presentation is an introduction about CPS in JavaScript that covers the following aspects:

  • Comparison between CPS and classical style
  • Current use of CPS
  • Problems using CPS (The Pyramid of DOOM)
  • Non-blocking programming
  • Coordinating async functions (flatting the Pyramid of DOOM)

About

Some presentations about several topics

Resources

Stars

35 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - delapuente/presentations: Some presentations about several topics · GitHub
Skip to content

Latest commit

History

107 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Index of my presentations

Offline first

Go to the presentation

Advices for effective caching and fetch strategies in Service Workers.

The Open Web at your Fingertips

Go to the presentation

Like other major Internet companies, Mozilla offers a network of resources for teaching and learning about the technologies needed to build content for the Web. Since it can be difficult to learn skills in isolation, Mozilla supports and is sustained by an extensive global community of volunteer contributors writing code, reporting and logging bugs, writing documentation and more. There are many Mozilla community spaces and projects where developers can share experiences, get involved in contributing to an open source collaborative free-software project, and learn from talented professionals.

From Web Application to Progressive Web Application

Go to the presentation

A progressive web application is simply a good old web application that exhibits native behaviour and performance on modern browsers. Discover in 30 minutes and through actual code snippets how to convert a web app into a progressive web app!

When is the Web the Right Answer —and Why?

Go to the presentation

Going native or building for Web is a perennial hot topic in the mobile development space, but treating these alternatives as irreconcilable is naive. Nowadays, each option offers distinct opportunities and advantages. With the advent of new web technologies such as Service Workers, Push API and Web Manifest, it's time to reconsider the Web as a competitive platform.

At your service: advanced uses of service workers

Go to the presentation

Service Workers are more than an application cache replacement, they are programmable proxies in the client side. Let's review some off-label uses for Service Workers!

Syntactic macros in Python

Go to the presentation

Syntactic macros grant the developer the right to abuse the language syntax for not intended goals.

One Encoding To Rule Them All

Go to the presentation

Plain text is a legend, a myth. Discover what happen each time you press a letter in There and Back Again, what an encoding scheme means and how to deal with codification in Python and JavaScript.

Method dispatching in Python

Go to the presentation

The presentation remember the importance of method dispatching in OOP in general and in Python in particular thorugh three examples (and two extra) of __getattribute__(): typo tolerant APIs, restricted APIs and access control to private class members.

WebRTC & Web Components

Go to the presentation

The future of the Web will involve new ways of communications and modularization. The presentation talks about how the modern web will implement these new features through the use of WebRTC and Web Components and shows some examples of usage.

Idiomatic Python

Go to the presentation

The presentation provides common idioms you can find in Python related with the following topics:

  • Syntax
  • Loops
  • Dictionaries
  • List & Tuples
  • Strings
  • Contexts

Five algorithms easy to understand (that you probably don't know)

Go to the presentation

This is a presentation for the Telefonica master in Advanced Programming at U-TAD, Five algorithms easy to understand (that you probably don't know).

The presentation talks about 5 algorithms / techniques not very complicated but quite useful:

  • Cryptograhpic hash functions
  • Proof of work
  • Centroid clustering
  • MapReduce
  • Linear time sorting

Beautiful APIs

Go to the presentation

Here you have my presentation for the Dev Con 2013, Beautiful APIs.

The presentation covers some design principles from the point of view of API desing. Identified principles are:

  • Unity / Goal
  • Harmony / Predictability
  • Balance / Completeness
  • Hierarchy / Modularity
  • Proportion / Scope
  • Emphasis / Features

Python data model

Go to the presentation

Here you have my presentation for the Dev Con 2013, Python data model.

The presentation presents the Python datamodel in a friendly way. Actually the main attraction was I drew the pictures on live during the conference. =)

Metaprogramming in Python & JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Metaprogramming in Python & JavaScript.

The presentation is a comparison between both programming languages, specially its function model and present some interesting toppics:

  • Evaluation of strings as programs
  • Decorators
  • DRY interfaces
  • Dynamic runtime data models (Live APIs)
  • On the fly methods

Continuation Passing Style with JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Continuation Passing Style with JavaScript.

The presentation is an introduction about CPS in JavaScript that covers the following aspects:

  • Comparison between CPS and classical style
  • Current use of CPS
  • Problems using CPS (The Pyramid of DOOM)
  • Non-blocking programming
  • Coordinating async functions (flatting the Pyramid of DOOM)

About

Some presentations about several topics

Resources

Stars

35 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' GitHub - delapuente/presentations: Some presentations about several topics · GitHub
Skip to content

Latest commit

History

107 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Index of my presentations

Offline first

Go to the presentation

Advices for effective caching and fetch strategies in Service Workers.

The Open Web at your Fingertips

Go to the presentation

Like other major Internet companies, Mozilla offers a network of resources for teaching and learning about the technologies needed to build content for the Web. Since it can be difficult to learn skills in isolation, Mozilla supports and is sustained by an extensive global community of volunteer contributors writing code, reporting and logging bugs, writing documentation and more. There are many Mozilla community spaces and projects where developers can share experiences, get involved in contributing to an open source collaborative free-software project, and learn from talented professionals.

From Web Application to Progressive Web Application

Go to the presentation

A progressive web application is simply a good old web application that exhibits native behaviour and performance on modern browsers. Discover in 30 minutes and through actual code snippets how to convert a web app into a progressive web app!

When is the Web the Right Answer —and Why?

Go to the presentation

Going native or building for Web is a perennial hot topic in the mobile development space, but treating these alternatives as irreconcilable is naive. Nowadays, each option offers distinct opportunities and advantages. With the advent of new web technologies such as Service Workers, Push API and Web Manifest, it's time to reconsider the Web as a competitive platform.

At your service: advanced uses of service workers

Go to the presentation

Service Workers are more than an application cache replacement, they are programmable proxies in the client side. Let's review some off-label uses for Service Workers!

Syntactic macros in Python

Go to the presentation

Syntactic macros grant the developer the right to abuse the language syntax for not intended goals.

One Encoding To Rule Them All

Go to the presentation

Plain text is a legend, a myth. Discover what happen each time you press a letter in There and Back Again, what an encoding scheme means and how to deal with codification in Python and JavaScript.

Method dispatching in Python

Go to the presentation

The presentation remember the importance of method dispatching in OOP in general and in Python in particular thorugh three examples (and two extra) of __getattribute__(): typo tolerant APIs, restricted APIs and access control to private class members.

WebRTC & Web Components

Go to the presentation

The future of the Web will involve new ways of communications and modularization. The presentation talks about how the modern web will implement these new features through the use of WebRTC and Web Components and shows some examples of usage.

Idiomatic Python

Go to the presentation

The presentation provides common idioms you can find in Python related with the following topics:

  • Syntax
  • Loops
  • Dictionaries
  • List & Tuples
  • Strings
  • Contexts

Five algorithms easy to understand (that you probably don't know)

Go to the presentation

This is a presentation for the Telefonica master in Advanced Programming at U-TAD, Five algorithms easy to understand (that you probably don't know).

The presentation talks about 5 algorithms / techniques not very complicated but quite useful:

  • Cryptograhpic hash functions
  • Proof of work
  • Centroid clustering
  • MapReduce
  • Linear time sorting

Beautiful APIs

Go to the presentation

Here you have my presentation for the Dev Con 2013, Beautiful APIs.

The presentation covers some design principles from the point of view of API desing. Identified principles are:

  • Unity / Goal
  • Harmony / Predictability
  • Balance / Completeness
  • Hierarchy / Modularity
  • Proportion / Scope
  • Emphasis / Features

Python data model

Go to the presentation

Here you have my presentation for the Dev Con 2013, Python data model.

The presentation presents the Python datamodel in a friendly way. Actually the main attraction was I drew the pictures on live during the conference. =)

Metaprogramming in Python & JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Metaprogramming in Python & JavaScript.

The presentation is a comparison between both programming languages, specially its function model and present some interesting toppics:

  • Evaluation of strings as programs
  • Decorators
  • DRY interfaces
  • Dynamic runtime data models (Live APIs)
  • On the fly methods

Continuation Passing Style with JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Continuation Passing Style with JavaScript.

The presentation is an introduction about CPS in JavaScript that covers the following aspects:

  • Comparison between CPS and classical style
  • Current use of CPS
  • Problems using CPS (The Pyramid of DOOM)
  • Non-blocking programming
  • Coordinating async functions (flatting the Pyramid of DOOM)

About

Some presentations about several topics

Resources

Stars

35 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - delapuente/presentations: Some presentations about several topics · GitHub
Skip to content

Latest commit

History

107 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Index of my presentations

Offline first

Go to the presentation

Advices for effective caching and fetch strategies in Service Workers.

The Open Web at your Fingertips

Go to the presentation

Like other major Internet companies, Mozilla offers a network of resources for teaching and learning about the technologies needed to build content for the Web. Since it can be difficult to learn skills in isolation, Mozilla supports and is sustained by an extensive global community of volunteer contributors writing code, reporting and logging bugs, writing documentation and more. There are many Mozilla community spaces and projects where developers can share experiences, get involved in contributing to an open source collaborative free-software project, and learn from talented professionals.

From Web Application to Progressive Web Application

Go to the presentation

A progressive web application is simply a good old web application that exhibits native behaviour and performance on modern browsers. Discover in 30 minutes and through actual code snippets how to convert a web app into a progressive web app!

When is the Web the Right Answer —and Why?

Go to the presentation

Going native or building for Web is a perennial hot topic in the mobile development space, but treating these alternatives as irreconcilable is naive. Nowadays, each option offers distinct opportunities and advantages. With the advent of new web technologies such as Service Workers, Push API and Web Manifest, it's time to reconsider the Web as a competitive platform.

At your service: advanced uses of service workers

Go to the presentation

Service Workers are more than an application cache replacement, they are programmable proxies in the client side. Let's review some off-label uses for Service Workers!

Syntactic macros in Python

Go to the presentation

Syntactic macros grant the developer the right to abuse the language syntax for not intended goals.

One Encoding To Rule Them All

Go to the presentation

Plain text is a legend, a myth. Discover what happen each time you press a letter in There and Back Again, what an encoding scheme means and how to deal with codification in Python and JavaScript.

Method dispatching in Python

Go to the presentation

The presentation remember the importance of method dispatching in OOP in general and in Python in particular thorugh three examples (and two extra) of __getattribute__(): typo tolerant APIs, restricted APIs and access control to private class members.

WebRTC & Web Components

Go to the presentation

The future of the Web will involve new ways of communications and modularization. The presentation talks about how the modern web will implement these new features through the use of WebRTC and Web Components and shows some examples of usage.

Idiomatic Python

Go to the presentation

The presentation provides common idioms you can find in Python related with the following topics:

  • Syntax
  • Loops
  • Dictionaries
  • List & Tuples
  • Strings
  • Contexts

Five algorithms easy to understand (that you probably don't know)

Go to the presentation

This is a presentation for the Telefonica master in Advanced Programming at U-TAD, Five algorithms easy to understand (that you probably don't know).

The presentation talks about 5 algorithms / techniques not very complicated but quite useful:

  • Cryptograhpic hash functions
  • Proof of work
  • Centroid clustering
  • MapReduce
  • Linear time sorting

Beautiful APIs

Go to the presentation

Here you have my presentation for the Dev Con 2013, Beautiful APIs.

The presentation covers some design principles from the point of view of API desing. Identified principles are:

  • Unity / Goal
  • Harmony / Predictability
  • Balance / Completeness
  • Hierarchy / Modularity
  • Proportion / Scope
  • Emphasis / Features

Python data model

Go to the presentation

Here you have my presentation for the Dev Con 2013, Python data model.

The presentation presents the Python datamodel in a friendly way. Actually the main attraction was I drew the pictures on live during the conference. =)

Metaprogramming in Python & JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Metaprogramming in Python & JavaScript.

The presentation is a comparison between both programming languages, specially its function model and present some interesting toppics:

  • Evaluation of strings as programs
  • Decorators
  • DRY interfaces
  • Dynamic runtime data models (Live APIs)
  • On the fly methods

Continuation Passing Style with JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Continuation Passing Style with JavaScript.

The presentation is an introduction about CPS in JavaScript that covers the following aspects:

  • Comparison between CPS and classical style
  • Current use of CPS
  • Problems using CPS (The Pyramid of DOOM)
  • Non-blocking programming
  • Coordinating async functions (flatting the Pyramid of DOOM)

About

Some presentations about several topics

Resources

Stars

35 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - delapuente/presentations: Some presentations about several topics · GitHub
Skip to content

Latest commit

History

107 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Index of my presentations

Offline first

Go to the presentation

Advices for effective caching and fetch strategies in Service Workers.

The Open Web at your Fingertips

Go to the presentation

Like other major Internet companies, Mozilla offers a network of resources for teaching and learning about the technologies needed to build content for the Web. Since it can be difficult to learn skills in isolation, Mozilla supports and is sustained by an extensive global community of volunteer contributors writing code, reporting and logging bugs, writing documentation and more. There are many Mozilla community spaces and projects where developers can share experiences, get involved in contributing to an open source collaborative free-software project, and learn from talented professionals.

From Web Application to Progressive Web Application

Go to the presentation

A progressive web application is simply a good old web application that exhibits native behaviour and performance on modern browsers. Discover in 30 minutes and through actual code snippets how to convert a web app into a progressive web app!

When is the Web the Right Answer —and Why?

Go to the presentation

Going native or building for Web is a perennial hot topic in the mobile development space, but treating these alternatives as irreconcilable is naive. Nowadays, each option offers distinct opportunities and advantages. With the advent of new web technologies such as Service Workers, Push API and Web Manifest, it's time to reconsider the Web as a competitive platform.

At your service: advanced uses of service workers

Go to the presentation

Service Workers are more than an application cache replacement, they are programmable proxies in the client side. Let's review some off-label uses for Service Workers!

Syntactic macros in Python

Go to the presentation

Syntactic macros grant the developer the right to abuse the language syntax for not intended goals.

One Encoding To Rule Them All

Go to the presentation

Plain text is a legend, a myth. Discover what happen each time you press a letter in There and Back Again, what an encoding scheme means and how to deal with codification in Python and JavaScript.

Method dispatching in Python

Go to the presentation

The presentation remember the importance of method dispatching in OOP in general and in Python in particular thorugh three examples (and two extra) of __getattribute__(): typo tolerant APIs, restricted APIs and access control to private class members.

WebRTC & Web Components

Go to the presentation

The future of the Web will involve new ways of communications and modularization. The presentation talks about how the modern web will implement these new features through the use of WebRTC and Web Components and shows some examples of usage.

Idiomatic Python

Go to the presentation

The presentation provides common idioms you can find in Python related with the following topics:

  • Syntax
  • Loops
  • Dictionaries
  • List & Tuples
  • Strings
  • Contexts

Five algorithms easy to understand (that you probably don't know)

Go to the presentation

This is a presentation for the Telefonica master in Advanced Programming at U-TAD, Five algorithms easy to understand (that you probably don't know).

The presentation talks about 5 algorithms / techniques not very complicated but quite useful:

  • Cryptograhpic hash functions
  • Proof of work
  • Centroid clustering
  • MapReduce
  • Linear time sorting

Beautiful APIs

Go to the presentation

Here you have my presentation for the Dev Con 2013, Beautiful APIs.

The presentation covers some design principles from the point of view of API desing. Identified principles are:

  • Unity / Goal
  • Harmony / Predictability
  • Balance / Completeness
  • Hierarchy / Modularity
  • Proportion / Scope
  • Emphasis / Features

Python data model

Go to the presentation

Here you have my presentation for the Dev Con 2013, Python data model.

The presentation presents the Python datamodel in a friendly way. Actually the main attraction was I drew the pictures on live during the conference. =)

Metaprogramming in Python & JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Metaprogramming in Python & JavaScript.

The presentation is a comparison between both programming languages, specially its function model and present some interesting toppics:

  • Evaluation of strings as programs
  • Decorators
  • DRY interfaces
  • Dynamic runtime data models (Live APIs)
  • On the fly methods

Continuation Passing Style with JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Continuation Passing Style with JavaScript.

The presentation is an introduction about CPS in JavaScript that covers the following aspects:

  • Comparison between CPS and classical style
  • Current use of CPS
  • Problems using CPS (The Pyramid of DOOM)
  • Non-blocking programming
  • Coordinating async functions (flatting the Pyramid of DOOM)

About

Some presentations about several topics

Resources

Stars

35 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); GitHub - delapuente/presentations: Some presentations about several topics · GitHub
Skip to content

Latest commit

History

107 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Index of my presentations

Offline first

Go to the presentation

Advices for effective caching and fetch strategies in Service Workers.

The Open Web at your Fingertips

Go to the presentation

Like other major Internet companies, Mozilla offers a network of resources for teaching and learning about the technologies needed to build content for the Web. Since it can be difficult to learn skills in isolation, Mozilla supports and is sustained by an extensive global community of volunteer contributors writing code, reporting and logging bugs, writing documentation and more. There are many Mozilla community spaces and projects where developers can share experiences, get involved in contributing to an open source collaborative free-software project, and learn from talented professionals.

From Web Application to Progressive Web Application

Go to the presentation

A progressive web application is simply a good old web application that exhibits native behaviour and performance on modern browsers. Discover in 30 minutes and through actual code snippets how to convert a web app into a progressive web app!

When is the Web the Right Answer —and Why?

Go to the presentation

Going native or building for Web is a perennial hot topic in the mobile development space, but treating these alternatives as irreconcilable is naive. Nowadays, each option offers distinct opportunities and advantages. With the advent of new web technologies such as Service Workers, Push API and Web Manifest, it's time to reconsider the Web as a competitive platform.

At your service: advanced uses of service workers

Go to the presentation

Service Workers are more than an application cache replacement, they are programmable proxies in the client side. Let's review some off-label uses for Service Workers!

Syntactic macros in Python

Go to the presentation

Syntactic macros grant the developer the right to abuse the language syntax for not intended goals.

One Encoding To Rule Them All

Go to the presentation

Plain text is a legend, a myth. Discover what happen each time you press a letter in There and Back Again, what an encoding scheme means and how to deal with codification in Python and JavaScript.

Method dispatching in Python

Go to the presentation

The presentation remember the importance of method dispatching in OOP in general and in Python in particular thorugh three examples (and two extra) of __getattribute__(): typo tolerant APIs, restricted APIs and access control to private class members.

WebRTC & Web Components

Go to the presentation

The future of the Web will involve new ways of communications and modularization. The presentation talks about how the modern web will implement these new features through the use of WebRTC and Web Components and shows some examples of usage.

Idiomatic Python

Go to the presentation

The presentation provides common idioms you can find in Python related with the following topics:

  • Syntax
  • Loops
  • Dictionaries
  • List & Tuples
  • Strings
  • Contexts

Five algorithms easy to understand (that you probably don't know)

Go to the presentation

This is a presentation for the Telefonica master in Advanced Programming at U-TAD, Five algorithms easy to understand (that you probably don't know).

The presentation talks about 5 algorithms / techniques not very complicated but quite useful:

  • Cryptograhpic hash functions
  • Proof of work
  • Centroid clustering
  • MapReduce
  • Linear time sorting

Beautiful APIs

Go to the presentation

Here you have my presentation for the Dev Con 2013, Beautiful APIs.

The presentation covers some design principles from the point of view of API desing. Identified principles are:

  • Unity / Goal
  • Harmony / Predictability
  • Balance / Completeness
  • Hierarchy / Modularity
  • Proportion / Scope
  • Emphasis / Features

Python data model

Go to the presentation

Here you have my presentation for the Dev Con 2013, Python data model.

The presentation presents the Python datamodel in a friendly way. Actually the main attraction was I drew the pictures on live during the conference. =)

Metaprogramming in Python & JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Metaprogramming in Python & JavaScript.

The presentation is a comparison between both programming languages, specially its function model and present some interesting toppics:

  • Evaluation of strings as programs
  • Decorators
  • DRY interfaces
  • Dynamic runtime data models (Live APIs)
  • On the fly methods

Continuation Passing Style with JavaScript

Go to the presentation

Here you have my presentation for the DEVCON1, Continuation Passing Style with JavaScript.

The presentation is an introduction about CPS in JavaScript that covers the following aspects:

  • Comparison between CPS and classical style
  • Current use of CPS
  • Problems using CPS (The Pyramid of DOOM)
  • Non-blocking programming
  • Coordinating async functions (flatting the Pyramid of DOOM)

About

Some presentations about several topics

Resources

Stars

35 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages