lunedì 9 aprile 2018

Idera, Inc.: cosa ci aspetta nel 2018




Quali sono stati i trend di sviluppo del 2017 e cosa ci aspetta nel 2018?

Lo scopriamo con il "pronostico" di Atanas Popov, Embarcadero General Manager:


Il nostro scopo è quello di fornire i migliori strumenti per lo sviluppo, il database management e per i testing.
Monitoriamo con attenzione gli sviluppi del settore per assicurarci che i nostri prodotti si evolvano e garantiscano valore ai migliaia di utenti sparsi in tutto il mondo. 

La nostra attività ha avuto un notevole successo nel 2017 e Delphi continua a guadagnare terreno in maniera incredibile!
Inoltre, lo scorso agosto, abbiamo acquisito Sencha ExtJS combinando il nostro principale framework commerciale JS e gli strumenti per lo sviluppo web nel nostro portfolio.

Visto che il 2018 è appena iniziato, è il momento giusto per rivisitare i trend del 2017 del nostro settore e provare a fare alcune predizioni per il futuro. 
Perché si sa, gli sviluppatori domineranno il mondo!

La strategia da adottare è rendere le cose sempre più semplici per gli sviluppatori che premendo un solo pulsante potranno avere una serie di strumenti integrati. 

[...]

Quest'anno inizieremo anche a vedere un aumento nell'utilizzo di Progressive Web App  (PWA) con aggiornamenti nei browser mobile. Gli sviluppatori Web adotteranno velocemente le tecnologie PWA con servizio di assistenza, notifiche e sincronizzazione, e creeranno Web App PWA moderne, veloci ed affidabili come le app native.

Inoltre le aziende cercheranno un equilibrio tra uno sviluppo veloce su molte piattaforme rispetto all'esperienza nativa. I framework Web come Reactive Native (e ExtJs) continueranno a diventare sempre più popolari, ma lo saranno anche in altri framework nativi come Xamarina e FireMonkey (FMX).
Anche gli strumenti nativi per Android e iOS continueranno a migliorare.

Vedremo anche un ritorno all'IDE di programmazione orientata agli oggetti e gli IDE avranno più componenti di servizi cloud con una facile implementazione e opzioni di integrazione.

Di base possiamo dire che gli sviluppatori hanno a disposizione moltissime scelte e che questa tendenza non può che aumentare. Gli strumenti di sviluppo Idera, Inc.  offrono le migliori soluzioni al mondo per aiutare gli sviluppatori a creare delle cose straordinarie. Non vedo l'ora di vedere cosa ci sarà di nuovo nel corso del nuovo anno!

Fonte: https://community.embarcadero.com/article/16604-idera-inc-2018-predictions


martedì 20 febbraio 2018

UPGRADE: ultima occasione!


Attraverso la voce del General Manager Atanas Popov, Embarcadero ha annunciato un’importante novità: a partire dal 31 marzo 2018 verranno dismessi gli SKU relativi agli upgrade.

Dal 1° aprile 2018 (e no, non è uno scherzo!) resteranno disponibili solamente le nuove licenze e l’Update Subscription, un abbonamento annuale che consente di mantenere il proprio prodotto aggiornato alle ultime release.

Prima di ritirare l’upgrade, Embarcadero concede a tutti gli utenti che non l’avessero ancora fatto di aggiornare la propria licenza tramite un "Upgrade Amnesty". Un’ultima occasione per trasformare la propria datata versione precedente alla XE6 in una 10.2 Tokyo.


Dal post di Atanas Popov del 22/01/2018:

Cari clienti,


Alcuni anni fa abbiamo introdotto il nostro programma di Update Subscription. [...] La nostra roadmap e la strategia di realese dei prodotti sono allineate con questa filosofia, poiché ci impegniamo a rendere molto più semplici gli aggiornamenti alle nuove versioni.

[...]

Il nostro obiettivo è rendere più facile per tutti usufruire delle ultime funzionalità e correzioni che abbiamo sviluppato. Oggi, la maggior parte dei nostri clienti si è spostata su Update Subscription e lo SKU Upgrade non ha molto senso.

Questo trimestre (che termina il 31 marzo) sarà l'ultimo ad offrire aggiornamenti. In linea con la nostra pratica di avvisi anticipati, vogliamo lasciare un margine di tempo ai clienti che per qualsiasi ragione volessero effettuare l’upgrade per aggiornare il proprio prodotto.
Abbiamo eseguito diverse Amnesty (vale a dire la possibilità di eseguire l'aggiornamento da versioni datate) negli ultimi due anni e ne eseguiremo un'altra mentre ritiriamo questo SKU. 

[...]

Insieme, abbiamo fatto grandi passi avanti nella divulgazione di RAD Studio per lo sviluppo di Delphi e C ++. Monitoriamo attentamente le offerte competitive e siamo fermamente convinti che il valore che i clienti ricevono con i nostri prodotti sia di gran lunga superiore al costo. Spero che tu ti senta allo stesso modo.

Sono davvero entusiasta di alcune delle prossime versioni. Sia il 10.2.3, questo trimestre, sia le numerose release future, offriranno funzionalità e miglioramenti di qualità eccezionale. Il 2018 sarà un altro anno che vedrà Delphi e C ++ Builder prendere il volo! 

Go RAD Studio !!!

FONTE: https://community.embarcadero.com/article/articles-support/16598-upgrade-sku-to-be-discontinued-in-q4

Se hai una licenza precedente alla XE6, adesso è davvero il momento (l'ultimo momento) per aggiornarla tramite un upgrade!

martedì 7 novembre 2017

Delphi Day 2017 (Padova Edition)



Wintech-Italia s.r.l. organizza l’evento Delphi Day 2017 (Padova Edition): un incontro, gratuito, di mezza giornata per un aggiornamento sullo stato attuale di Delphi.

L'evento in edizione 2017 raddoppia! Al pomeriggio il classico evento gratuito di mezza giornata dedicato a tutti i programmatori Delphi ansiosi di conoscere le novità dello strumento di sviluppo.
Al mattino sono previsti due seminari a pagamento ad alto contenuto tecnico.

Conferenza: Lo stato dell'arte di Delphi


L'incontro offre una panoramica sullo "stato dell'arte" di Delphi, a partire dagli aspetti più generali, per affrontare elementi architetturali (come linguaggio e librerie), per parlare anche delle novità più recenti con particolare attenzione all'apertura multipiattaforma di Delphi (Linux, MacOSX, iOS, Android). L'incontro si propone di essere fondamentalmente un momento di scambio e discussione tra i partecipanti.

Il biglietto di ingresso gratuito comprende l'ingresso alla conferenza del pomeriggio e il coffee break

Conferenza: Delphi + Ext JS: la soluzione definitiva per il Web?



Con l'acquisizione di sencha da parte di IDERA, entra come strumento di sviluppo una delle migliori libreria JavaScript esistenti sul mercato. In Wintech abbiamo usato questa libreria da diversi anni per lo sviluppo Web e siamo convinti che per uno sviluppatore Delphi questa libreria rappresenti la scelta migliore per la costruzione di applicativi web performanti, con un'interfaccia utente gradevole e moderna, con pesante accesso a database e con buone performance!

Il biglietto di ingresso gratuito comprende l'ingresso alla conferenza del pomeriggio e il coffee break


Conferenza: High Performance 3D con Delphi


Se avete bisogno di creare e gestire modelli e scene 3D (applicazioni industriali, automazione, ecc...) realmente performanti i linguaggi ad alto livello (Delphi, Java, C#) non riescono a competere con le librerie 3D scritte in C++. In questa sessione vedremo come unire il meglio dei due mondi: la potenza e le prestazioni di calcolo di C++ e la facilità d'uso di Delphi:

Il biglietto di ingresso gratuito comprende l'ingresso alla conferenza del pomeriggio e il coffee break


Conferenza: Deployment su Linux: quali vantaggi


Lo sviluppo su piattaforma Linux amplia notevolmente le possibilità di deployment degli applicativi (server) costruiti in Delphi. Oggigiorno è importantissimo sfruttare appieno le possibilità offerte dai servizi "cloud" di Amazon AWS, Microsoft Azure, Google Cloud, ecc.. per avere piattaforme di distibuzione a basso costo, performanti e comode da gestire.

Il biglietto di ingresso gratuito comprende l'ingresso alla conferenza del pomeriggio e il coffee break


Seminari pre-conferenza


Sala A: Applicazioni MVVM cross-framework (VCL-FMX-WEB)

Riusabilità, manutenibilità e testabilità sono concetti importantissimi per chi sviluppa software al giorno d'oggi. Riutilizzare la maggior parte del codice anche tra progetti cross-platform e, perché no, anche cross-framework (VCL-FMX-WEB), sarebbe bello vero? Obiettivo di questo corso è dimostrare come, con l'utilizzo di strumenti adatti (iORM-MVVM), sia possibile applicare questo pattern anche in Delphi senza dover necessariamente rinunciare alle caratteristiche RAD che lo hanno reso il nostro ambiente di sviluppo preferito... anzi!


Sala B: Architettura a microservizi in Delphi

Un'architettura monolitica per la costruzione degli application server può risultare comoda all'inizio ma rappresenta un limite alla crescita e alla complessità dell'architettura stessa. L'architettura microservices consente di espandere a piacimento la propria architettura senza incorrere in limiti predefiniti. In questo workshop vedremo nel dettaglio la teoria dell'architettura microservices, i vantaggi e gli svantaggi e come costruirli con Delphi.

Il biglietto di ingresso per i seminari comprende l'ingresso ai seminari, alla conferenza, al pranzo e ai coffee break







Agenda conferenza
13:45

Registrazione dei partecipanti

14:20 Lo stato e il futuro di Delphi

Paolo Rossi - Wintech Italia

Un altro anno importante per Delphi: una nuova piattaforma supportata, ottimi risultati di vendita e un generale "ritorno" di Delphi tra la comunità internazionale degli sviluppatori. In questa sessione scopriremo cosa ci riserva il futuro del nostro strumento di sviluppo.

15:00

Sviluppo Linux in Delphi: Quali vantaggi?

Paolo Rossi, Luca Minuti - Wintech Italia

Lo sviluppo su piattaforma Linux amplia notevolmente le possibilità di deployment degli applicativi (server) costruiti in Delphi. Oggigiorno è importantissimo sfruttare appieno le possibilità offerte dai servizi "cloud" di Amazon AWS, Microsoft Azure, Google Cloud, ecc.. per avere piattaforme di distribuzione a basso costo, performanti e comode da gestire.

15:50

Coffee Break

16:10

High performance 3D in Delphi

Paolo Rossi - Wintech Italia


Se avete bisogno di creare e gestire modelli e scene 3D (applicazioni industriali, automazione, ecc...) realmente performanti, i linguaggi ad alto livello (Delphi, Java, C#) non riescono a competere con le librerie 3D scritte in C++.
In questa sessione vedremo come unire il meglio dei due mondi: la potenza e le prestazioni di calcolo di C++ e la facilità d'uso di Delphi:

17:00

T.B.D.

17:40
Delphi REST + Sencha Ext JS = Web
Paolo Rossi, Luca Minuti - Wintech Italia

Con l'acquisizione di sencha da parte di IDERA, entra come strumento di sviluppo una delle migliori libreria JavaScript esistenti sul mercato. In Wintech abbiamo usato questa libreria da diversi anni per lo sviluppo Web e siamo convinti che per uno sviluppatore Delphi questa libreria rappresenti la scelta migliore per la costruzione di applicativi web performanti, con un'interfaccia utente gradevole e moderna, con pesante accesso a database e con buone performance!

18:15

Conclusione




Agenda seminari

08:45

Registrazione dei partecipanti

09:20

Track 1: Applicazioni MVVM cross-framework (VCL-FMX-WEB)

Maurizio Del Magno - Levante Software

Riusabilità, manutenibilità e testabilità sono concetti importantissimi per chi sviluppa software al giorno d'oggi. Riutilizzare la maggior parte del codice anche tra progetti cross-platform e, perché no, anche cross-framework (VCL-FMX-WEB), sarebbe bello vero? Obiettivo di questo corso è dimostrare come, con l'utilizzo di strumenti adatti (iORM-MVVM), sia possibile applicare questo pattern anche in Delphi senza dover necessariamente rinunciare alle caratteristiche RAD che lo hanno reso il nostro ambiente di sviluppo preferito... anzi!
  • Logica di visualizzazione
  • Logica di presentazione
  • Command binding
  • Data binding
  • Contesto di visualizzazione
09:20 Track 2: Architettura a microservizi in Delphi

Luca Minuti - Wintech Italia

Un'architettura monolitica per la costruzione degli application server può risultare comoda all'inizio ma rappresenta un limite alla crescita e alla complessità dell'architettura stessa. L'architettura microservices consente di espandere a piacimento la propria architettura senza incorrere in limiti predefiniti. In questo workshop vedremo nel dettaglio la teoria dell'architettura microservices, i vantaggi e gli svantaggi e come costruirli con Delphi.
  • I vari tipi di architettura
  • SOA & REST
  • Programmazione stateless
  • I principi di scalabilità, disponibilità, consistenza
  • Costruire microservices con Delphi
11:00

Coffee Break

12:30 Conclusione e Pranzo

La conferenza ed i seminari si svolgeranno presso:
Hotel Sheraton Padova (Four Points)
Corso Argentina 5
35129 Padova

giovedì 7 settembre 2017

IDERA acquisisce Sencha




Di qualche giorno fa la notizia che IDERA ha acquisito Sencha, leader nello sviluppo di framework per Web application. Sencha andrà quindi ad affiancare Embarcadero come provider di strumenti di sviluppo.

Dalle parole di Atanas Popov, General Manager di Embarcadero, Sencha condivide la mission del gruppo IDERA di consegnare degli agili strumenti di sviluppo alla crescente comunità di programmatori. Questo, oltre ad ampliare i linguaggi supportati aggiungendovi JavaScript, farà nascere delle nuove sinergie con il portfolio dei prodotti già esistenti. Per esempio, proprio Sencha Ext JS, fornirà un potente Web Framework per RAD Studio a completamento dei framework nativi, compresi VCL per Windows e FMX per il Mobile.

La notizia è dunque sicuramente positiva visto che entra in Embarcadero una fortissima competenza di sviluppo frontend web. In più la libreria JavaScript Ext JS, molto usata in ambito business, potrebbe costituire la controparte di Delphi per quanto riguarda lo sviluppo web.

Esistono infatti già alcuni framework Delphi che usano Ext JS come frontend, il più famoso dei quali è la libreria UniGUI che consente di sviluppare applicazioni web usando l'approccio RAD tipico di Delphi.

Per correttezza bisogna dire che la prima libreria Delphi ad utilizzare Ext JS come frontend era stata ExtPascal progetto ora abbandonato (autore Wanderlan Santos dos Anjos) ma ancora interessante (contiene anche un'implementazione di FastCGI).

Personalmente, per lo sviluppo di applicazioni web, uso Ext JS fin dalla versione 3 e penso ancora che per costruire complesse app web sia lo strumento in assoluto più versatile e potente!

La domanda sorge quindi spontanea, a quando l'integrazione di Ext JS con Delphi?? 😀



Se vivete in Italia e siete interessati ad approfondire il tema dello sviluppo di applicazioni web con Sencha Ext JS e Delphi, Wintech Italia, uno dei pochi qualificati fornitori di corsi su Ext JS in Italia, organizza un corso il 12 e 13 ottobre 2017 in sede Wintech a Parma.



domenica 9 aprile 2017

Le novità di Delphi 10.2 Tokyo in dettaglio



Alla fine di marzo è stata rilasciata la versione 10.2 (Tokyo) di Delphi, vediamo nel dettaglio la serie di novità che ha portato.

Benvenuto Linux!


La principale feautore di Delphi 10.2 Tokyo è ovviamente il supporto di Linux 64 bit (server -side) tra i target di compilazione (per sfruttare questa caratteristica è però necessaria almeno la versione Enterprise di Delphi).


Con questa versione di Delphi è possibile creare applicativi (console, dll, package) nativi per Linux che possono girare in qualsiasi distibuzione Linux per architettura x86 a 64bit.

Non c'è (per ora) il supporto a FMX per Linux, non si possono cioè realizzare applicativi con interfaccia utente.. vedremo se questo verrà aggiunto nelle le prossime release.

Il supporto ufficiale delle distribuzioni è limitato a Ubuntu e Red Hat ma personalmente ho già provato i binari prodotti su un elevato numero di distribuzioni senza nessun problema.

Per lo sviluppo invece consiglio di installare le distribuzioni ufficialmente supportate se volete evitare qualsiasi intervento manuale di configurazione dell'ambiente.


Tecnicamente la compilazione e il deployment per Linux usano le stesse tecniche e strumenti delle altre piattaforme.



Nello specifico:
  1. Compilazione su Windows con il compilatorre Delphi (basato su LLVM)
  2. Pachettizazione usando le informazioni di deployment
  3. Spedizione alla macchina Linux target usando il PAServer (da installare sulla macchina Linux)
  4. Debug (eventuale) nell'IDE usando PAServer

E comunque possibile prendere il binario generato, copiarlo e lanciarlo su una qualsiasi macchina Linux (attenzione ai permessi del file quando lo copiate)


Come accennato prima, il compilatore Linux è basato su LLVM come quello per i sistemi operativi mobile (iOS e Android) quindi dovete ricordarvi alcune cose quando scrivete il codice sorgente:

  • ARC (Automatic Reference Count) per gli oggetti (non dovete quindi distruggerli)
  • Le stringhe non sono sempre 1-based come nel compilatore tradizionale ma:
    • Sono 0-based nei compilatori iOS e Android
    • Sono 1-based nel compilatore Linux

Se a prima vista la scelta per le stringhe può sembrare un po'.. fuorviante, devo dire che mi trova daccordo: Nella costruzione di applicazioni mobile il porting di grosse porzioni di codice Win32 è piuttosto raro, nel caso di Linux invece, è proprio una delle caratteristiche più interessanti. In questo caso dover rifattorizzare completamente l'accesso alle stringhe sarebbe un lavoro lungo e pericoloso. Come consiglio usate comunque gli helper per i tipi base per usare le stringhe 0-based su tutte le piattaforme.

Il livello di compatibilità del codice sorgente è ottimo, ho già compilato su Linux la mia libreria JWT (https://github.com/paolo-rossi/delphi-jose-jwt) e il progetto WiRL (https://github.com/delphi-blocks/WiRL) senza particolari problemi.

Altre novità nella 10.2

Ci sono anche altre novità nonostante sia una release incentrata principalmente su Linux. Di seguito elenco solamente queste novità riservandomi di espanderle in altri articoli. In particolare il prossimo articolo verterà su RTL e linguaggio comparando i sorgenti rispetto alla versione 10.1 Berlin per evidenziare tutte le modifiche.

FireDAC


Il componente TFDMemTable guadagna un design time editor che consente di visualizzare e modificare i dati della memory table a design-time!


Altre feature in FireDAC:

  • Supporto per MariaDB (v5.5)
  • New GUID access for TField
  • Supporto per la versione 5.7 di MySQL
  • Support Firebird per Direct I/O
  • Grazie al BLOB streaming ridotta memoria sui client
  • Il componente VCL TDBImage supporta direttamente i formati JPEG e PNG

IDE


Il menu View dell'IDE è stato completamente riorganizzato per consentire una miglior categorizzazione delle numerose voci (nelle passate versioni rischiavano di uscire dallo schermo!)


Anche il supporto per le alte risoluzioni è stato migliorato, ormai i monitor High DPI sono arrivati a prezzi accessibili ed è sempre più facile che ci chiedano supporto nelle nostre applicazioni.

Altre funzionalità nell'IDE:
  • Migliorato supporto per Azure e AWS con nuove API
  • Il compilatore a riga di comando supporta ora large-memory-address
  • Supporto per il debugging e simulatore nei nuovi macOS e iOS

FireMonkey


  • Supporto Multi-Threading per le classi TBitmap, TCanvas e TContext3D
  • Maggior velocità dell'interfaccia utente (UI) Android grazie ad un miglior supporto multi-thread
  • Migliorata l'esperienza utente in TMultiView
  • Possibilità di modifica di SystemStatusBar.Color in iOS tramite nuove proprietà nella classe TForm
  • Nuovo stile FMX per macOS e Android

RTL


  • Nuova proprietà SynchronizeEvents per le classi TTetheringManager e TTetheringProfile per controllare la sincronizzazione con il thread principale
  • Supporto delle funzioni di hashing MD5 e SHA1 per file e stream

Installer/GetIt


L'installer basato su GetIt è ulteriormente migliorato come velocità ed esperienza utente. Consiglio a tutti l'installazione di Delphi con questo nuovo strumento che oltre ad una esperienza di installazione sicuramente migliore consente anche di aggiungere/rimuovere piattaforme e funzionalità in un quasiasi momento.

Anche GetIt sta guadagnando sempre più consenso in quanto l'installazione di componenti tramite questo tool è facile e immediata.

In questo momento sono già presenti una buona selezioni di componenti/expert già aggiornati a RAD Studio 10.2 Tokyo.



Considerazioni finali

Per me la 10.2 Tokyo è un'importantissima release grazie all'introduzione di Linux come target ma introduce anche una buona lista di feature in altre aree e una lista di bug fissati decisamente lunga.

Avendo usato 10.2 Tokyo per qualche settimana posso dire che la stabilità sembra buona, il mio consiglio finale è sicuramente di installarlo e usarlo per lo sviluppo dei vostri applicativi.

Link a risorse

DocWiki What's New
http://docwiki.embarcadero.com/RADStudio/Tokyo/en/What%27s_New

What's New in RAD Studio 10.2
https://www.embarcadero.com/products/rad-studio/whats-new-in-10-2-tokyo

New features and customer reported issues fixed in RAD Studio 10.2 Tokyo
https://edn.embarcadero.com/article/44747


Un saluto


martedì 8 novembre 2016

Licenze open source

Una delle caratteristiche che ha sempre contraddistinto Delphi è l'ampia disponibilità di componenti e librerie di terze parti, sia gratuite che a pagamento. Molti di questi hanno da sempre dato la possibilità di ottenere i sorgenti. Al giorno d'oggi è possibile trovare molto materiale interessante sui principali siti di condivisione di codice tra i quali ricordiamo: GitHubSourceForgeBitbucket e l'ormai pensionato Google code. Questi siti ospitano codice open source, che ricordo non è sinonimo di gratis, ma significa che è possibile ottenere e modificare il sorgente a patto di rispettare le varie clausole imposte dalla licenza.


Visto che molti di noi usano, e qualche volta contribuiscono alla sviluppo di questo tipo di codice, mi sembrava giusto scrivere un breve vademecum sulle licenze più usate.

Innanzitutto volevo ribadire il fatto che open source non significa gratis. Dipende ovviamente dalla licenza specifica, ma per esempio potete tranquillamente vendere un software con licenza GPL a patto di rilasciare i sorgenti a chiunque abbia una copia del vostro software. Certo, per come funziona la GPL, il licenziatario del vostro software può tranquillamente a sua volta modificare o rivendere il vostro software, di conseguenza alcuni modelli di business non sono praticabili.

In effetti la maggior parte di chi sviluppa in questo ambito guadagna tramite sponsorizzazioni o supporto tecnico a pagamento.

    GPL e LGPL

    «Le licenze per la maggioranza dei programmi hanno lo scopo di togliere all'utente la libertà di condividerlo e di modificarlo. Al contrario, la GPL è intesa a garantire la libertà di condividere e modificare il free software, al fine di assicurare che i programmi siano "liberi" per tutti i loro utenti.»

    Queste sono le prime righe riportate nel preambolo della licenza. È abbastanza evidente il forte messaggio che Richard Stallman voleva dare. Fondamentalmente la licenza impone di rendere disponibili sempre i sorgenti insieme ai file binari di un software. I sorgenti poi possono essere modificati senza particolari limiti se non che versioni derivate dal software originale devono rimanere con la medesima licenza.

    La licenza di solito viene considerata piuttosto restrittiva perché per "codice derivato" si intende anche software completamente separato (come un'altro eseguibile) che usa il software licenziato sotto GPL. Questo di fatto impedisce ad un software commerciale closed source di usare una libreria GPL.

    Proprio per questo esiste anche una versione della GPL più "debole", la LGPL, che non richiede che software linkato al programma sia rilasciato con la stessa licenza. Questo tipo di licenza infatti viene di solito usata dalle librerie. Con questa licenza modifiche alla libreria devono essere rilasciate con la stessa licenza, ma applicazioni separate che usano la libreria non hanno questo vincolo.

    Riferimenti: Testo originale delle licenza, Traduzione non ufficiale in italianoFAQ

      Apache license

      La Apache License nasce con l'omonimo web server. Come la GPL permette di usare il software, modificarlo e ridistribuirlo, ma a differenza di quest'ultima non è necessario che il software derivato abbia la stessa licenza. L'unico requisito necessario è includere un'informativa sul tipo di licenza usata.

      Per quanto riguarda l'uso di librerie sotto licenza apache da parte di applicazioni proprietarie l'unico vincolo è includere nella distribuzione due file: uno in cui si dà credito agli autori della libreria e l'altro con una copia della licenza stessa.

      Riferimenti: Testo originale della licenza

      BSD license

      La licenza BSD è molto simile alla Apache License, di conseguenza è anch'essa estremamente permissiva. Tanto che il software con cui è nata la licenza, il sistema operativo Unix  Berkeley Software Distribution (BSD), è stato incorporato da Apple in Darwin che è a tutti gli affetti un OS closed source.

      La licenza consta di soli quattro punti che riporto testuali dalla traduzione italiana:


      1. Le ridistribuzioni del codice sorgente devono conservare la nota di copyright sopra riportata, questa lista di condizioni e la seguente limitazione di responsabilità.
      2. Le ridistribuzioni in forma binarie devono riprodurre la nota di copyright sopra riportata, questa lista di condizioni e la seguente limitazione di responsabilità nella documentazione e/o altri materiali forniti con la distribuzione.
      3. Ogni materiale pubblicitario che riporti caratteristiche o uso di questo software deve mostrare la seguente attestazione: Questo prodotto include software sviluppati dalla <organizzazione>.
      4. Né il nome della <organizzazione>, né i nomi dei suoi collaboratori possono essere utilizzati per avallare o promuovere prodotti derivati da questo software senza uno specifico permesso scritto.


      Di conseguenza le uniche accortezze per chi usa librerie con questa licenza sono contenute negli ultimi due punti: la necessita di citare gli sviluppatori originari ma senza che questo faccia intendere che questi ultimi promuovono il prodotto finale.

      Riferimenti: Testo originale della licenza

      MIT license

      La licenza MIT è stata creata dal Massachusetts Institute of Technology (MIT) ed è addirittura più permissiva della BSD. Chi licenzia software sotto MIT license deve solo includere il file di licenza, mentre chi lo usa a tutti gli effetti non ha nessun limite particolare. In pratica la licenza contiene solo una generica clausola di esclusione di responsabilità.

      Riferimenti: Testo originale delle licenza

      MPL

      La licenza MPL (Mozilla Public License) è stata creata da Netscape Communications Corporation durante lo sviluppo del browser open source Mozilla. La licenza nasce come un ibrido tra le licenze molto permissive come MIT/BSD e più restrittive come GPL.

      In pratica è permessa la modifica dei file sorgenti originali del prodotto solo a condizione che siano resi disponibili a chiunque abbia la versione binaria del codice con lo stesso tipo di licenza. È invece possibile aggiungere nuovi file al prodotto con licenze diverse e senza la necessità di ridistribuirli.

      Riferimenti: Testo originale della licenzaFAQ

      lunedì 7 novembre 2016

      Conferenza Delphi Porte Aperte 2016



      Wintech-Italia s.r.l. organizza anche quest’anno l’evento Delphi Porte Aperte, un incontro, gratuito, di mezza giornata per un aggiornamento sullo stato attuale di Delphi.

      L'evento in edizione 2016 raddoppia! Al pomeriggio il classico evento gratuito di mezza giornata dedicato a tutti i programmatori Delphi ansiosi di conoscere le novità dello strumento di sviluppo. Al mattino sono previsti due seminari a pagamento ad alto contenuto tecnico tenuti da Paolo Rossi e Luca Minuti.

      Conferenza: Lo stato dell'arte di Delphi


      L'incontro offre una panoramica sullo "stato dell'arte" di Delphi, a partire dagli aspetti più generali, per affrontare elementi architetturali (come linguaggio e librerie), per parlare anche delle novità più recenti con particolare attenzione all'apertura multipiattaforma di Delphi (MacOSX, iOS, Android, Linux). L'incontro si propone di essere fondamentalmente un momento di scambio e discussione tra i partecipanti.

      Il biglietto di ingresso gratuito comprende l'ingresso alla conferenza del pomeriggio e il coffee break
      Eventbrite - Delphi Porte Aperte 2016


      Seminari: Applicazioni stabili e sicure


      Nella Sala A si terrà il seminario dal titolo: Eccezioni e debug: avere il controllo delle applicazioni
      Quante volte una vostra applicazione in deployment dal cliente ha dato errori oppure si è bloccata in modo anomalo senza alcuna indicazione? Quante volte avete perso ore nel tentativo di debuggare codice complesso senza venirne a capo?
      Seguendo questa sessione imparerete tutti i trucchi per avere il controllo completo delle vostre applicazioni soprattutto quando queste diventano instabili, vedremo come tenere sotto controllo anche le applicazioni che girano sulle macchine dei clienti senza più avere errori "sconosciuti"


      Nella Sala B si terrà il seminario dal titolo: Sviluppare applicazioni (più) sicure
      La possibilità di accedere alle applicazioni fuori dalle mura aziendali ha portato una serie di problematiche sia nelle applicazioni web che in quelle tradizionali. In questo seminario parleremo dei problemi di sicurezza più rilevanti dal punto di vista dello sviluppatore. Verranno presentate le tecniche di hacking più comuni (come SQL Injection e XSS) e i metodi per prevenirle. Inoltre parleremo di sicurezza dei dati, delle password e qualche accenno sui protocolli di rete e sulla crittografia. In dettaglio, vedremo come sviluppare applicazioni più sicure

      Il biglietto di ingresso per i seminari comprende l'ingresso ai seminari, alla conferenza, al pranzo e ai coffee break
      Eventbrite - Delphi Porte Aperte 2016





      Agenda conferenza
      13:45Registrazione dei partecipanti
      14:20Delphi: Presente e Futuro
      Paolo Rossi - Wintech Italia
      Il punto della situazione sulla salute di Delphi e dell'ecosistema. Le nuove piattaforme supportate, la roadmap di Delphi in dettaglio, tutto l'occorrente per predire il futuro del nostro strumento di sviluppo
      15:00RTL: Cosa vi siete persi nelle ultime versioni di Delphi
      Luca Minuti - Wintech Italia
      Siamo abituati ad associare ogni nuova release di Delphi ad un numero limitato di caratteristiche rilevanti: il supporto ad una nuova piattaforma, un nuovo modello di sviluppo (web, mobile, ..) o l’integrazione con qualche nuovo DB. In realtà ogni nuova versione comprende tante piccole aggiunte e migliorie che sommate assieme possono cambiare il modo in cui scriviamo il codice. In questa sessione faremo una carrellata su alcune di quelle più rilevanti
      15:50Coffee Break
      16:10Delphi per Linux: Come preparare il proprio codice
      Paolo Rossi - Wintech Italia
      Delphi per Linux sta per arrivare, ma voi siete pronti a compilare il vostro codice per questa piattaforma? In questa sessione vedremo in dettaglio come cominciare già da subito a scrivere codice compatibile con la piattaforma Linux
      17:10Application Server REST con WiRL
      Paolo Rossi, Luca Minuti - Wintech Italia
      Per lo sviluppo multipiattaforma (Mac OS, Android iOS e Linux) e per lo sviluppo web l'application server è diventato un elemento basilare delle architetture software. In questa sessione vedremo come utilizzare una delle più moderne librerie REST per Delphi (WiRL) per costruire facilmente un servizio REST
      17:50Domande e discussione finale
      Spazio per le vostre domande
      18:15Conclusione



      Agenda seminari
      08:45Registrazione dei partecipanti
      09:20Track 1: Eccezioni e debug: avere il controllo delle applicazioni
      Paolo Rossi - Wintech Italia

      Quante volte una vostra applicazione in deployment dal cliente ha dato errori oppure si è bloccata in modo anomalo senza alcuna indicazione? Quante volte avete perso ore nel tentativo di debuggare codice complesso senza venirne a capo?

      Seguendo questa sessione imparerete tutti i trucchi per avere il controllo completo delle vostre applicazioni soprattutto quando queste diventano instabili, vedremo come tenere sotto controllo anche le applicazioni che girano sulle macchine dei clienti senza più avere errori "sconosciuti":
      • Le eccezioni queste.. sconosciute??
      • Salvataggio di file di log e di report sulle eccezioni
      • Il ruolo dello stack nella gestione delle eccezioni
      • L'uso di strumenti esterni di gestione delle eccezioni
      • Procedure di debug basilari ed avanzate
      • Debugging di applicazioni multithread
      • Debugging remoto con Delphi
      09:20Track 2: Sviluppare applicazioni (più) sicure
      Luca Minuti - Wintech Italia

      La possibilità di accedere alle applicazioni fuori dalle mura aziendali ha portato una serie di problematiche sia nelle applicazioni web che in quelle tradizionali. In questo seminario parleremo dei problemi di sicurezza più rilevanti dal punto di vista dello sviluppatore. Verranno presentate le tecniche di hacking più comuni (come SQL Injection e XSS) e i metodi per prevenirle. Inoltre parleremo di sicurezza dei dati, delle password e qualche accenno sui protocolli di rete e sulla crittografia.

      In dettaglio, vedremo come sviluppare applicazioni più sicure:
      • (SQL) Injection, XSS
      • Validazione dell'input
      • Social engineering
      • Sicurezza delle password
      • Sicurezza dei dati
      • Crittografia, Connessioni SSL
      • OTP, password, biometriche
      • Autenticazione e autorizzazione
      11:00Coffee Break
      12:30Conclusione e Pranzo


      La conferenza ed i seminari si svolgeranno presso:
      Hotel Sheraton Padova (Four Points)
      Corso Argentina 5
      35129 Padova