tecnologia

Scienza e tecnologia

Versus

versus oppo reno 2
Versus permette di orientarsi nell'acquisto confrontando più articoli in base alle loro caratteristiche salienti risparmiando tempo e denaro.

Ad esempio con gli smartphone, dei quali le aziende propongono una gamma molto varia che risulta astrusa ed è difficile capire bene quale sia il più adatto alle proprie esigenze.

Ma ci sono anche tablet, laptop, PC e accessori, TV, audio, addirittura anche app.

Oppo Reno 2 VS Oppo Reno 4 Pro


categorie: 

SaaS - Software as a Service

SaaS
Se ne sente parlare dappertutto, ma cos'è realmente il "SaaS" ?

Si definisce Software as a service un modello di licenza e "distribuzione" su licenza in cui i programmi sono ospitati centralmente. Una vecchia definizione era "software on-demand". E' soprattutto parte della nomenclatura di moda del cloud computing, insieme all'infrastruttura come servizio (IaaS), alla piattaforma come servizio (PaaS), al desktop come servizio (DaaS), al software gestito come servizio (MSaaS), al backend mobile come servizio (MBaaS), al datacenter come servizio (DCaaS) e la gestione dell'information technology come servizio (ITMaaS).

Le applicazioni SaaS sono tipicamente accessibili dagli utenti che utilizzano un thin client, ad esempio tramite un browser web. Il SaaS è diventato un modello di fruizione comune per molte applicazioni aziendali, tra cui software per ufficio, software di messaggistica, software per l'elaborazione delle retribuzioni, DBMS, gestionali, CAD, tool di sviluppo, gamification, virtualizzazione, contabilità, collaborazione, gestione delle relazioni con i clienti (CRM), sistemi informativi gestionali (MIS), pianificazione delle risorse aziendali (ERP), fatturazione, gestione delle risorse umane (HRM), acquisizione di talenti, sistemi di gestione dell'apprendimento, gestione dei contenuti (CM), sistemi informativi geografici (GIS) e gestione del service desk. Il SaaS è stato incorporato nella strategia di quasi tutte le principali società di software enterprise.

The SaaS Handbook – How to Build Your First Software-as-a-Service Product Step-By-Step


LINQ

linq

Linq ("Language Integrated Query") è un componente del Microsoft .NET Framework che aggiunge funzionalità di interrogazione dati stile SQL. Può essere utilizzato per estrarre ed elaborare comodamente dati da array, classi numerabili, documenti XML, database relazionali e fonti di dati di terze parti. Altri usi mediante espressioni di query per comporre in modo leggibile calcoli arbitrari, includono la costruzione di gestori di eventi o parser monadici. Linq definisce anche un insieme di nomi di metodi (chiamati operatori di query standard, o operatori di sequenza standard) per tradurre espressioni in stile fluente in espressioni che utilizzano questi nomi di metodi, espressioni lambda e tipi anonimi.

Esistono versioni di LINQ per PHP (PHPLinq), JavaScript (linq.js), TypeScript (linq.ts) e ActionScript (ActionLinq), anche se nessuna è strettamente equivalente all'originale .NET implementato in C#, F# e VB.NET nei quali è una parte integrante del linguaggio, non una libreria esterna, e spesso risponde ad una più ampia gamma di esigenze.

Language Integrated Query (LINQ)
LINQ to Objects for the .NET developer
LINQ basics

LINQ: a language to rule them all!

C# Tutorial 15 LINQ Tutorial

C# Essentials: Linq for Lists - Sorting, Filtering, and Aggregating Lists Easily

StyleGAN 2

Il nuovo progetto di Nvidia denominato StyleGAN2, presentato a CVPR 2020, utilizza il transfer learning per generare un numero apparentemente infinito di ritratti in una varietà infinita di stili pittorici. Il lavoro si basa sul famoso progetto StyleGAN precedentemente pubblicato dallo stesso team.

In questa nuova demo, il modello permette all'utente di creare ed esplorare in modo fluido i ritratti autogenerati. Il tutto avviene controllando separatamente il contenuto, l'identità, l'espressione e la posa del soggetto. Gli utenti possono anche modificare lo stile artistico, la combinazione di colori e l'aspetto delle pennellate. Questo nuovo modello è stato oggetto di training usando un sistema NVIDIA DGX composto da otto GPU NVIDIA V100, con il framework di Deep Learning TensorFlow (versione 1.3) con accelerazione cuDNN.

stylegan2 su 80.lv

il paper: Analyzing and Improving the Image Quality of StyleGAN
Nvidia e Tensorflow
stylegan2 su github


Gitpod

gitpod

gitpod.io è un ambiente online con IDE che può essere lanciato da qualsiasi pagina di GitHub.

In pochi secondi, Gitpod fornisce un ambiente di sviluppo completamente funzionante, incluso un IDE VS Code-powered (Theia) e un contenitore Linux cloud-based configurato appositamente per il progetto in questione. E' la maniera più rapida in assoluto per provare un progetto il cui codice è su github, anche se occorre predisporlo.

tips & tricks
Frictionless Open-Source Contributions
rust in gitpod
php in gitpod


Online Github Work Environments - A Gitpod Review

Gitpod Basics Episode 2

Semantic Versioning in software development

semantic versioning
Adottare la specifica del Semantic Versioning nel numerare i rilasci del software permette di dare un significato preciso ad ogni versione in modo da far capire al volo cosa potrebbe andare storto e cosa ci si dovrebbe aspettare installando ciò che si è appena scaricato.

Al cambio di "major release" ci si deve aspettare che varie cose possano rompersi, che le feature deprecate non siano più supportate, che ci siano modifiche anche radicali nel comportamento del software e che ci siano cambiamenti nelle API. La minor version introduce nuove feature retrocompatibili, ed infine la patch o fix risolve bug restando sempre compatibile con le versioni precedenti.

C'è anche la Grammatica Backus-Naur per la correttezza formale delle versioni.

perchè usare il semantic versioning
FAQ


categorie: 

Il linguaggio di programmazione più amato: Rust

Rust Programming language

Rust è un linguaggio di programmazione multi-paradigma incentrato su sicurezza e performance, supporta un elevato numero di transazioni concorrenti tra sistemi. E' simile al C++ ma fortunatamente è "memory safe", anche se non usa un garbage collector. E' stato sviluppato da Graydon Hoare per Mozilla a partire dal 2006, e la prima versione stabile è stata lanciata nel 2015.

github
crates.io
rustlings: Small exercises to get you used to reading and writing Rust code
rust reference
Rust marks five years since its 1.0 release

install rust
rust compie 5 anni, la storia fino ad ora
reddit

rust on gitpod


Intro to the Rust programming language

Rust: A Language for the Next 40 Years - Carol Nichols

Rust Crash Course | Rustlang

categorie: 

Corso Completo di PyTorch

Il corso si chiama PyTorch for Deep Learning - Full Course / Tutorial, ed è messo a disposizione da free code camp. E' uno dei corsi più lineari e comprensibili in una materia della quale si parla moltissimo e ci sono tanti tutorial, ma che forniscono solo una conoscenza frammentaria dell'argomento.

pytorch.org è una libreria open source di Machine Learning che permette di implementare computer vision e natural language processing. E' stata sviluppata inizialmente presso il laboratorio di ricerca sulla AI di facebook.
pytorch VS tensorflow


AI Jukebox - Un altro passo avanti nella generazione automatica di contenuti multimediali

okuribito
OpenAI presenta Jukebox, un software anticipato oltre 30 anni fa da William Gibson che ora inizia a diventare realtà. Si tratta di una rete neurale che genera musica, compresa la parte del canto (ancora rudimentale), in una varietà di generi e stili basati su artisti reali, come ad esempio Katy Perry.

Il modello e il codice sono stati rilasciati, insieme ad uno strumento per esplorare i campioni che vengono generati.

La storia dell'informatica insegna che il miglioramento costante del codice e delle tecniche e l'aumento della potenza dei processori e della memoria producono software quasi sempre migliore, fino ad arrivare all'indistinguibile dalla realtà. A quando la prima hit di una AI al primo posto in classifica ?

il paper

jukedek alternatives for music generation
Fugue
No Lick
sounds ui good
music for makers
stampede
music maker
tune pocket


Life Support | 360° VR Music Video Composed By AI

categorie: 

Keras - la libreria per Machine Learning più accessibile

keras

Keras è un'API per reti neurali di alto livello, scritta in Python e in grado di funzionare su TensorFlow, CNTK o Theano.

È stata sviluppata con l'obiettivo di consentire una rapida sperimentazione. Essere in grado di passare dall'idea al risultato nel minor tempo possibile è la chiave per fare una buona ricerca.

Keras viene usato se si ha bisogno di una libreria per il Deep learning che:

- Permette una facile e veloce prototipazione (attraverso la facilità d'uso, la modularità e l'estensibilità).
- Supporta sia reti convoluzionali che reti ricorrenti, così come combinazioni delle due.
- Funziona senza soluzione di continuità su CPU e GPU.

TensorFlow: Writing custom layers and models with Keras
github
dev.to: keras
documentazione


categorie: 

Imparare Javascript creando 7 giochi - corso completo

Ania Kubow (instagram, youtube, github) racconta la creazione di ben 7 giochi in javascript puro ("vanilla"), ovvero senza l'uso di framework complessi.

Nel corso Imparare Javascript creando 7 giochi - video corso completo verranno creati, in ordine di complessità crescente e riusando nei giochi avanzati i metodi imparati nei giochi precedenti:
- memory
- Whack-a-mole
- Forza 4
- Snake (nokia version)
- Space Invaders
- Frogger
- Tetris


Veritasium - la Mappa Logistica

okuribito
Veritasium è un canale youtube che spiega fenomeni scientifici usando matematica e fisica.

In questo caso ci presenta la seguente equazione che spiega come si riproducono i conigli:

xn+1 = rxn(1-xn)

La Logistic Map ("Mappa Logistica") viene spesso citata come un esempio di come si può ottenere un comportamento caotico partendo da una semplice equazione dinamica non lineare.

La cosa sorprendente è come questa equazione ricompaia in ambiti termodinamici, su come gocciola un rubinetto e via dicendo. E come si possa sfruttare questa conoscenza per intervenire in un comportamento caotico riuscendo a ripristinare un ordine.

Inoltre da questa deriva un nuovo numero notevole, la costante universale di Feigenbaum: 4.669...

patreon
facebook
instagram
twitter
youtube

Chaos by Jonny Hyman


categorie: 

Scoperchiare i segreti del Deep Learning

New Theory Cracks Open the Black Box of Deep Learning


Su Quanta Magazine l'articolo di Natalie Wolchover: New Theory Cracks Open the Black Box of Deep Learning parla di una nuova idea chiamata "collo di bottiglia dell'informazione" ("information bottleneck") che contribuisce a spiegare il successo sconcertante degli attuali algoritmi di intelligenza artificiale - e potrebbe anche svelare dettagli su come impara il cervello umano.

[via]

categorie: 

Fast.Ai, Kaggle: Combattere i commenti tossici

Fast.Ai, Kaggle
Nell'articolo di Michael Li (twitter) "How to Build a Multi-label NLP Classifier from Scratch" si spiega come usare fast.ai e kaggle per costruire un automa che individua i commenti tossici.

Tecnologie di questo genere sono i nuovi antivirus e antispam della comunicazione online, inquinata da bot, troll, agenti provocatori, disinformazione, bieche menzogne ecc. Questi metodi non devono affatto far pensare ad una forma di censura, o al contrario che il "libero pensiero" debba essere espresso senza condizioni online.

Poco più di un decennio fa c'era una netta distinzione tra chi informava (giornali, TV, siti istituzionali) essendo sottoposto a regole e leggi, e chi "cazzeggiava" online sui social network. Ma ora non è più così. Anche la persona più preparata può cadere nel tranello di credere a questa o quella "fonte" e contribuire a diffondere notizie false. Ed innescare "flame", caterve di commenti litigiosi che contribuiscono ancora di più al propagarsi della disinformazione.

Non è affatto facile predisporre delle contromisure, ma è questa, senz'altro, la direzione da prendere .

[via]

Il cervello dei programmatori

brain code

"Gli strumenti che usiamo hanno una profonda (e subdola) influenza sul nostro modo di pensare e, quindi, sulle nostre capacità cognitive".
- Edsger Dijkstra

Questo articolo svela alcuni aspetti della psicologia dei programmatori e di come sia influenzata dallo scrivere codice.
Occorre fare attenzione al linguaggio che si impara per primo, perchè il codice ridefinisce i modelli mentali. In seguito si tende ad aderire sempre a questi modelli. E allora se "l'unico utensile che abbiamo a dispozione è un martello, allora tutto il resto tende a somigliare ad un chiodo". La programmazione diventa una palestra che aiuta la salute cerebrale

L'interpretazione del codice coinvolge 5 5 aree del cervello:
BA 6: Middle frontal gyrus (attenzione, linuaggio, memoria di lavoro)
BA 21: Middle temporal gyrus (recupero dalla memoria semantica)
BA 40: Inferior parietal lobule (memoria di lavoro)
BA 44: Inferior frontal gyrus (memoria di lavoro)
BA 47: Inferior frontal gyrus (Linguaggio, memoria di lavoro)

OOP explained

[via]

categorie: 

DDSP: Differentiable Digital Signal Processing

DDSP: Differentiable Digital Signal Processing
Dopo lo
style transfer artistco arriva, senza grandi sorprese il trasferimento del timbro acustico.

Negli esempi "Somewhere over the Rainbow" suonato al violino diventa una voce maschile che lo accenna, e viceversa.

C'è anche l'immancagile Colab Notebook per provarlo direttamente online caricando un proprio audio.


categorie: 

Brie Code

Brie Code, ex sviluppatrice di videogame ("Child of Light"), è la fondatrice e CEO di TRU LUV, un'azienda di Toronto che sta cercando di cambiare il nostro rapporto con la tecnologia e di creare una nuova categoria di interazione uomo-macchina che assomiglia più all'amicizia.

Ispirata dalle neuroscienze sociali, dalla psicologia dello sviluppo negli adulti, dall'arte, dal game design e dall'IA, la compagnia dà vita a esperienze che creano naturalmente sentimenti di profonda calma, gioia, intuizione e sviluppo personale. Il loro modello è una netta alternativa alle continue sfide competitive del modello di gamification e può riuscire ad avere implicazioni ampie e profonde.

twitter
AI Companions: Making Friends With Our Phones
The Best Candidate is a Lie
Video Games Are Boring
Thoughts about Brie Code's 'Video Games Are Boring'

[via]

AlphaGo - The Movie

AlphaGo - The Movie è un documentario disponibile su youtube diretto da Greg Kohs con una partitura originale del candidato all'Oscar Hauschka.

AlphaGo racconta un viaggio dalle sale di Oxford, attraverso le vie secondarie di Bordeaux, passando per i terminali di DeepMind a Londra e, infine, fino al torneo di sette giorni a Seoul. Man mano che il dramma dell'eterno scontro uomo-macchina si dipana, emergono altre domande: Cosa può rivelare l'intelligenza artificiale su un gioco vecchio di 3000 anni? Cosa può insegnarci sull'umanità?

la Mossa 37


categorie: 

AI and Games

Una domanda comune che può venire in mente è quale sia il motore di gioco migliore da usare per un progetto sull'AI, per un prototipo o anche per sviluppare un gioco completo. Nel video vengono esaminati sei popolari game engine: GameMaker Studio 2, Unity, Unreal, CryEngine, Source e Godot - e se ne discutono le caratteristiche.

AI and Games


Finite State Machines and the AI of Half-Life | AI 101

Behaviour Trees: The Cornerstone of Modern Game AI | AI 101

Cyber Demons: The AI of DOOM (2016) | AI and Games