domenica 15 dicembre 2024

Fuori Tema: Auguri di buon anno e felice anno nuovo 2025

 



Arriva il periodo più bello dell'anno, quello che adoro tantissimo. Non è per i regali quanto all'atmosfera natalizia, ai ricordi dell'infanzia di questo periodo, al cibo di questi momenti, come panettoni, torroni, pandori, noci ed altro, che mi fa stare ancora più bene.

Il fuori tema che più adoro, ma anche un post che riassume quanto è passato e nuovi obiettivi.

Un anno che mi ha dato molte soddisfazioni, trascorsi piacevoli momento e decisioni importanti. Anche se con l'associazionismo ho deciso di lasciare, troppo tempo, troppe risorse di salute e soldi, per poi rendermi conto che questa città, questo pazzo mondo non lo si cambia.

Il prossimo anno vorrei dedicare più tempo a me stesso, alla mia famiglia ma soprattutto alle nuove tecnologie, come l'intelligenza artificiale, al database mongodb, alla programmazione Raspberry, e magari qualche realizzazione software.

Un anno che mi ha fatto riflettere anche per quanto riguarda Boston, una città che ho visitato lo scorso anno e che mi sono innamorato. 

Quest'anno viaggiato poco, ma la vacanza estiva è stata molto importante, zona Caraibi, Repubblica Dominicana, una bella isola soprattutto dal punto naturalistico.

Mi sono ripromesso di iniziare a fare altri viaggi e valutare nuove opportunità lavorative con riferimento alla città di Boston, sempre se in azienda non escano opportunità.

Lavoro per un grande azienda, di cui sono fiero ed orgoglioso, ma vorrei tanto provare a vivere per circa 2 anni a Boston.

Vediamo dove mi porterà il 2025, un anno particolare visto che è l'anno giubilare, vediamo se riesco a realizzare qualche sogno o qualche obiettivo.

Mi fermerò in questi giorni nel pubblicare articoli e trucchi, qualche altro giorno di lavoro, e poi venerdì prendo la pausa lavorativa per riprendere dopo la befana. 

Dopo l'epifania riprenderò a scrivere altri articoli e trucchi, sperando che sia utile ad altri.

Auguri a tutti voi lettori ed amici, e chi mi segue, un felicissimo Natale, ed un 2025 pieno di grandi successi.

sabato 14 dicembre 2024

.Net gaming siti utili per la programmazione di video giochi in C#

 


Negli ultimi anni l'evoluzione tecnologica ha permesso di ampliare lo sviluppo di video giochi anche nel linguaggio di programmazione C#.

La creazione dei video giochi richiede però la conoscenza di questo tipo di progetti e componenti appositi, di seguito un elenco di siti per iniziare a scrivere codice in ambito .Net Gaming, in particolare con il linguaggio di programmazione C#.

Qui https://devblogs.microsoft.com/dotnet/choose-a-net-game-engine/ un post con vari riferimenti sui vari componenti gratuiti, mentre qui https://devblogs.microsoft.com/dotnet/game-development-with-net/ altro post sullo sviluppo dei video giochi.

Qui https://dotnet.microsoft.com/apps/games?WT.mc_id=gamedev-blog-abhamed il nuovo portale per la creazione dei video giochi, mentre qui https://dotnet.microsoft.com/learn/games?WT.mc_id=gamedev-blog-abhamed l'area formativa, qui https://dotnet.microsoft.com/learn/games/unity-tutorial/intro?WT.mc_id=gamedev-blog-abhamed l'area formativa Unity.

Che dire, buona programmazione e buon divertimento.

sabato 7 dicembre 2024

patch per risolvere il problema shrinklocker ransomware

Come riportato qui https://www.bitdefender.com/en-us/blog/businessinsights/shrinklocker-decryptor-from-friend-to-foe-and-back-again è possibile scaricare una software per risolvere nel caso si è attaccati dal ransomware shrinklocker 

venerdì 6 dicembre 2024

TypeScript Finding the max value date of a property in an array of objects

Tramite il metodo "reduce" di un array, possiamo ricercare il valore massimo di una data di una proprietà di un oggetto di una lista di oggetti.

Di seguito si riporta il frammento di codice di tale utilizzo nel linguaggio TypeScript.


TypeScript:

this.nominativi.push(new Nominativo('Emanuele', 'Mattei',
new Date('12/12/1974')));
this.nominativi.push(new Nominativo('Luigi', 'Cristaldi',
new Date('12/12/1984')));
this.nominativi.push(new Nominativo('Luca', 'Rossi',
new Date('12/12/1954')));
this.nominativi.push(new Nominativo('Max', 'Bianchi',
new Date('12/12/1994')));
var DataMassimo = this.nominativi.reduce(function (a, b)
{ return a.Eta  > b.Eta ? a : b; });
console.log(DataMassimo);  // Restituisce Max Bianchi

giovedì 5 dicembre 2024

C#.Net know if your pc is powered by battery power only

Il frammento di codice qui di seguito rileva se il proprio pc fa uso solo della batteria o della corrente elettrica.
Tramite il linguaggio di programmazione C# e la classe PowerStatus, con la proprietà PowerLineStatus, possiamo sapere se è alimentato solo dalla batteria (offline) o dalla corrente elettrica (online)


PowerStatus statoBateria = SystemInformation.PowerStatus;
 MessageBox.Show("Alimentato a corrente: " + statoBateria.PowerLineStatus); // offline non collegato

martedì 3 dicembre 2024

Angular read file get byte array TypeScript

In questo esempio di codice, viene illustra una tecnica nella tecnologia Angular e con il linguaggio TypeScript, per leggere un file restituendo il byteArray, il tutto tramite il controllo input per la selezione del file.


HTML:

<input type="file" id="fileInput" />

TypeScript:

  ngOnInit(): void {

document.getElementById('fileInput')?.addEventListener
('change', (event) => {
const input = event.target as HTMLInputElement;
if (input.files && input.files[0]) {
const file = input.files[0];
const fileReader = new FileReader();

fileReader.onload = async () => {
const arrayBuffer = fileReader.result as ArrayBuffer;
const uint8Array = new Uint8Array(arrayBuffer);
console.log(uint8Array);
          };

          fileReader.readAsArrayBuffer(file);
      }
  });
  }

lunedì 2 dicembre 2024

C# Linq il metodo AggregateBy in .Net 9

Nel nuovo Framework .Net versione 9, sono stati diversi metodi per la gestione dei dati con Linq, in particolare è stato aggiunto il metodo "AggregateBy" che permette di raggruppare determinati elementi secondo la condizione impostata.

Nel frammento di codice qui di seguito sono raggruppati tutti quelli che hanno un certo ruolo. 

Classe:

   public class Anagrafica()

   {

     public string Nome { get  ; set ; }

     public string Cognome { get; set; }

 

    public string Ruolo { get; set; }


   }


C#

  var persone = new List<Anagrafica>

  {

      new Anagrafica{Nome = "Emanuele", Cognome = "Maffei", Ruolo = "Impiegato" },

      new Anagrafica{Nome = "Luigi", Cognome = "Castaldi", Ruolo = "Direttore" },

      new Anagrafica{Nome = "Luca", Cognome = "Bianchi", Ruolo = "Funzionario" },

      new Anagrafica{Nome = "Max", Cognome = "Rossi", Ruolo = "Impiegato" },

       new Anagrafica{Nome = "Francesca", Cognome = "Lafenia", Ruolo = "Funzionario" },

      new Anagrafica{Nome = "Maria", Cognome = "Verdi", Ruolo = "Impiegato" },

  };

 

//Risultato

    //Nominativo: Emanuele Maffei, Max Rossi,Maria Verdi Ruolo: Impiegato

    //Nominativo: Luigi Castaldi Ruolo: Direttore

    //Nominativo: Luca Bianchi, Francesca Lafenia Ruolo: Funzionario

 

    var risultAggreg = persone.AggregateBy(

        persona => persona.Ruolo,

        seed: new List<string>(),

        func: (totale, persona) => [..totale, persona.Nome + " " + persona.Cognome] );

    foreach (var (ruolo, nominativo) in risultAggreg)

    {

        Debug.WriteLine("Nominativo: " + string.Join(",", nominativo) + " Ruolo: " + ruolo);

    }


C# get level battery of the pc

Nel caso che si ha la necessità di sapere il livello della batteria del portatile, tramite la classe "PowerStatus" possiamo ottenere varie informazioni sulla batteria, tra cui anche il livello di carica.

Di seguito si riporta il frammento di codice per ottenere la percentuale di carica della batteria del portatile.



PowerStatus statoBateria = SystemInformation.PowerStatus;
float percentualeStatoBatteria = statoBateria.BatteryLifePercent * 100;
MessageBox.Show($"Livello Batteria: {percentualeStatoBatteria}%");

domenica 1 dicembre 2024

C# .Net lista componenti gratuiti per la creazione di video giochi

Lo sviluppo di video giochi, può comportare l'uso di componenti per gestire vari fasi, la grafica, suono o altro.
Di seguito l'elenco di varie librerie e componenti gratuiti per la creazione di video giochi.

I vari componenti permettono di gestire i vari aspetti della creazione di video giochi tramite il linguaggio di programmazione C# o tecnologia Asp.Net 



FlaxEngine Flax -  https://flaxengine.com/





Html5 PlayCanvas  https://playcanvas.com/


sabato 30 novembre 2024

Bing Mappe modalità sorvolo

 

bing modalità aereo

Il motore di ricerca Bing, tra le varie funzionalità, offre la possibilità di utilizzare le mappe, in queste c'è una funzionalità molto interessante denominata "Modalità volo".

Questa modalità permette di vedere la città come se stiamo sorvolando la città.

Una volta posizionati in una città (per esempio Boston) visualizziamo in maniera molto ampia, verrà visualizzata sulla parte destra un'icona a forma di aereo (figura 1).

bing modalità aereo
Figura 1 - L'icona di modalità aereo


Se al click sull'aereo si apre un menu con le varie città, selezionare quella di proprio interesse, altrimenti passerà in automatico alla modalità aereo.

A questo punto verrà visualizzata la città in movimento aereo, il tutto come mostrato in figura 2.

Bing modalità sorvolo
Figura 2 - La modalità sorvolo sulla città di Boston


Questa modalità inoltre permette in maniera automatica di scoprire i vari punti d'interesse/turistici,  della città.

Strumento online gratuito per convertire immagini in icone

 

Convertire immagini in icone

Il sito CloudConvert in lingua inglese, permette di convertire gratuitamente e senza registrazioni e senza lasciare email, immagini in formato icone.

Un sito molto ben fatto.



venerdì 29 novembre 2024

MAUI controlli gratuiti Syncfusion Toolkit for .NET MAUI

Come riportato nel seguente blog .NET MAUI Welcomes Syncfusion Open-source Contributions - .NET Blog da qualche giorno sono disponibili gratuitamente alcuni controlli di Syncfusion per la creazione di applicazioni con il Framework MAUI.
Un insieme di controlli per creare applicazioni multi piattaforma.

Linq .Net 9 il metodo Index esempio in C#

Un'altra novità del Framework .Net versione 9, è il metodo "Index" utilizzandolo in Linq per la selezione dei dati.
In particolare il metodo "Index" restituisce i dati presenti nell'enumerazione con l'indice per ogni dato (riga).
Di seguito si riporta un esempio di utilizzo del metodo "Index".

Classe:

    public class Anagrafica()

   {

       public string Nome { get  ; set ; }

       public string Cognome { get; set; }

       public string Ruolo { get; set; }

 

   }



Utilizzo:

//Caricamento dei dati

var persone = new List<Anagrafica>

{

    new Anagrafica{Nome = "Emanuele", Cognome = "Maffei", Ruolo = "Impiegato" },

    new Anagrafica{Nome = "Luigi", Cognome = "Castaldi", Ruolo = "Direttore" },

    new Anagrafica{Nome = "Luca", Cognome = "Bianchi", Ruolo = "Funzionario" },

    new Anagrafica{Nome = "Max", Cognome = "Rossi", Ruolo = "Impiegato" },

     new Anagrafica{Nome = "Francesca", Cognome = "Lafenia", Ruolo = "Funzionario" },

    new Anagrafica{Nome = "Maria", Cognome = "Verdi", Ruolo = "Impiegato" },

};

var risu = persone.Index();

foreach (var (indice, persona) in risu)

{

    Debug.WriteLine("Indice: " + indice + " Persona: " + persona.Nome + ' ' + persona.Cognome);

}


//Restituisce

 

  //Indice: 0 Persona: Emanuele Maffei

  //Indice: 1 Persona: Luigi Castaldi

  //Indice: 2 Persona: Luca Bianchi

  //Indice: 3 Persona: Max Rossi

  // Indice: 4 Persona: Francesca Lafenia

  //Indice: 5 Persona: Maria Verdi









giovedì 28 novembre 2024

C# e .Net il nuovo metodo Linq CountBy

Nella versione .Net 9,  in Linq è stato aggiunto un nuovo metodo denominato "CountBy", questo metodo raggruppa gli elementi e fa la conta per quanti elementi sono presenti in base alla condizione che si mette nel metodo.

Con questo metodo viene semplificata l'operazione di raggruppamento che nelle precedenti versioni del .Net si facevano tramite il metodo GroupBy.

Di seguito si riporta un esempio di tale utilizzo.

Classe:
 

public class Anagrafica()

{

    public string Nome { get  ; set ; }

    public string Cognome { get; set; }

    public string Ruolo { get; set; }


}



Utilizzo:

Nuovo metodo CountBy:

var risultato = persone.CountBy(persone => persone.Ruolo);

 //Restituisce

 //Ruolo: Impiegato Totali elementi: 3

 //Ruolo: Direttore Totali elementi: 1

 //Ruolo: Funzionario Totali elementi: 2

 foreach (var elemento in risultato) {

     Debug.WriteLine("Ruolo: " + elemento.Key + " Totali elementi: " + elemento.Value);

 }



In precedenza:

//Precedenti versioni

var contaPersone = persone

    .GroupBy(persona => persona.Ruolo)

    .Select(group => new { Ruolo = group.Key, Totali = group.Count() });

            

foreach (var personaConteggio in contaPersone)

{

    Debug.WriteLine($"Ruolo: {personaConteggio.Ruolo}, Totali elementi: {personaConteggio.Totali}");

}











Recensione libro gioca le tue carte

 

libro gioca le tue carte

La scheda del libro:

Editore:                  Tecniche Nuove

Prezzo:                  € 20,81

Caratteristiche:                  184 pag -  cm Rilegatura Brossura

ISBN:          978-88-481-4750-7

Anno di edizione:          30/08/2024

Numero dell'edizione:  1


Nonostante le circa 160 pagine possano sembrare poche, il libro Gioca le tue Carte  offre riflessioni molto chiare ed esaustive per superare tutte le limitazioni di ogni individuo. Il libro è diviso in "sette sessioni", che possiamo definire parti, ognuna delle quali riguarda diversi aspetti dell'individuo su come superare situazioni di blocco.

L’autore del libro, James Borg, è una persona molto apprezzata e conosciuta a livello mondiale per la sua professionalità e competenza in ambito psicologico e motivazionale. Inoltre, ha acquisito una notevole esperienza in varie parti del mondo. Con questo libro, si cerca di capire come superare quei blocchi e limiti interiori, migliorando il proprio modo di affrontare determinate situazioni.

Il libro contiene diverse frasi motivazionali e di saggezza di persone famose di varie epoche, anticipando così l'argomento trattato. Inoltre, sono presenti grafici e disegni che forniscono una maggiore chiarezza sugli argomenti affrontati.

Conclusioni

Un libro molto utile da leggere assolutamente per il tema trattato, ma soprattutto per scoprire meglio il proprio io interiore e come controllarsi in determinate situazioni. L’autore, con la sua esperienza e professionalità, offre ai lettori un manuale ben fatto, affrontando il tema in maniera chiara ed esaustiva.

mercoledì 27 novembre 2024

Strumento online per convertire immagini png in icone

 

convertire png in icone

Un valido strumento online, facilmente utilizzabile e che non richiede ne email e ne registrazione, per convertire file di tipo png in icone.

Il sito convertio in lingua italiana converte le immagini in formato icone.


martedì 26 novembre 2024

C# ottenere la temperatura della CPU del proprio pc

Si riporta un frammento di codice per rilevare la temperatura nella CPU del proprio computer, tramite il linguaggio di programmazione C#.


Spazio dei nomi:
using System;
using System.Diagnostics;
using System.Management;


C#
 try
 {
     ManagementObjectSearcher ManObjSearcher = new ManagementObjectSearcher(@"root\WMI", "SELECT * FROM MSAcpi_ThermalZoneTemperature");
     foreach (ManagementObject obj in ManObjSearcher.Get())
     {
         double temperaturaCPU = Convert.ToDouble(obj["CurrentTemperature"].ToString());
         //Converte in Celsius
         temperaturaCPU = (temperaturaCPU - 2732) / 10.0;
         MessageBox.Show($"temperatura CPU: {temperaturaCPU} °C");
          

     }
 }
 catch (Exception ex)
 {
     Console.WriteLine("Errore: " + ex.Message);
 }

Download gioco StarHeroes

 


Il gioco StartHeroes, è un video gioco per sistemi operativi Windows, di tipo sparatutto spaziale.

Il video gioco in lingua inglese è adatto ai bambini, ragazzi ed adulti con una grafica molto ben fatta .

Per maggiori informazioni ed altro visitate il seguente sito https://store.epicgames.com/it/p/starheroes-cdabb2

lunedì 25 novembre 2024

Rilasciato .Net 9

.Net 9


Come riportato in questo post Announcing .NET 9 - .NET Blog da qualche giorno è stata rilasciata la versione 9 del Framework . Net .
Diverse le novità in questa nuova versione, come riportato nel post.