Docker, Google, Microsoft e Amazon stanno sviluppando insieme uno standard comune per i contenitori software

Docker

Fondata nel 2010 da Solomon Hykes Docker è un progetto open-source basato sul sistema operativo Linux, lanciato e gestito da dotCloud, che consente di automatizzare la distribuzione di qualsiasi applicazione all’interno dei “software containers” (contenitori software) che includono sistema operativo e applicazioni e sono una strada per sfruttare maggiormente le risorse di sistema inutilizzate.

Le macchine virtuali di Docker vengono chiamate container, e all’interno di un container possiamo inserire qualsiasi cosa: da un intero sistema operativo, ad un pool di applicazioni, fino al singolo servizio, la struttura dei container di Docker è estremamente granulare ed applicabile a qualsiasi livello. Inoltre, la comodità di Docker è che può essere usato in ambienti virtuali. Non importa assolutamente il mezzo, il programma funziona ovunque con la stessa metodologia e ugualmente bene.

Dopo anni di sviluppo finalmente anche i grandi dell’informatica hanno capito l’utilità di questo progetto open-source e insieme a Docker (che donerà il proprio software) si sono decisi a lanciare ieri alla conferenza DockerCon 2015 l’Open Container Project (Ocp), per offrire a singoli sviluppatori e aziende la sicurezza di poter realizzare soluzioni pienamente compatibili tra loro, senza frammentare troppo la scena e realizzando un vero standard. L’iniziativa ospitata all’interno della Linux Foundation, vede tra i principali protagonisti Amazon Web Services, Cisco, CoreOs, Google, Hp, Huawei, Ibm, Intel, Microsoft, Red Hat etc..

Tutto questo conferma per l’ennesima volta la bontà dello sviluppo software open-source (cioè mediante la condivisione della conoscenza) fondamentale nel realizzare uno standard comune vettore di progresso tecnologico per tutti, comprese le aziende informatiche.

Invece il modello closed-source cioè software proprietario non libero fatto di guerre di brevetti e marketing arricchisce solo pochissime persone come amministratori delegati e avvocati non apportando nessun progresso tecnologico alla società.

Voi cosa ne pensate?

Java: impostare la dimensione minima della finestra

In Java 1.6, Sun ha aggiunto la possibilità di impostare la dimensione minima di una Finestra, Frame, or JFrame. Per impostare la dimensione minima della finestra, chiamando il metodo setMinimumSize(). Questo previene l’utente di ridimensionare la finestra più piccola delle dimensioni che abbiamo previsto. Ecco un esempio:

import javax.swing.JFrame;
import java.awt.Dimension;

//Creiamo una nuova finestra
JFrame frame = new JFrame(“Prova da www.marcobruni.info”);
frame.setSize(600, 600);

//Impostiamo la dimensione minima
Dimension minimumSize = new Dimension(400, 400);
frame.setMinimumSize(minimumSize);

//Mostriamo la finestra
frame.setVisible(true);

Provatelo magari seguendo le istruzioni del mio corso online sulla programmazione in Java 🙂 Happy Code 🙂

Google App Engine PHP Runtime ora disponibile per tutti

Google App Engine PHP Runtime

Google App Engine PHP Runtime oggi , dopo un periodo di prova limitato, è stato reso disponibile per tutti. Al Google I/O, all’inizio di quest’anno, hanno aggiunto PHP, il quarto linguaggio di programmazione per realizzare applicazioni in Google App Engine.

Non è più necessario per fortuna far parte della whitelist per sviluppare la nostra applicazione PHP su Google App Engine. PHP è oggi uno dei linguaggi di programmazione per il web più popolari al mondo. Dal momento che è stato lanciato al Google I/O all’inizio di quest’anno, migliaia di sviluppatori in tutto il mondo hanno iniziato a utilizzare App Engine per PHP, per eseguire software famosi fatti in PHP come phpMyAdmin , Drupal e phpBB e framework quali Laravel , Silex e CodeIgniter utilizzando anche le API di Google come Drive e Google+ su App Engine.

Uno dei primi utilizzatori di Google App Engine per PHP è stato VICE.com, con cui ci gestisce il blog principale. Riceve milioni di visitatori al mese, e gira su un CMS fatto in casa realizzato grazie al popolare framework PHP Yii. Dopo aver spostato completamente il tutto in Google App Engine sembra che siano davvero entusiasti, “E ‘nostro parere che Google sta costruendo la Platform as a service(PaaS) di nuova generazione”, ha dichiarato il CTO di VICE.com, Jesse Knight. Fin dall’introduzione del runtime PHP, Google ha fatto alcuni miglioramenti, tra cui:

Se si lavora nel cloud, è possibile creare, testare e distribuire il progetto dal browser utilizzando DevTable o CodeEnvy che sono degli IDE on the cloud 🙂 . Se si preferisce lavorare dal proprio desktop, ora è possibile lavorare a livello locale ed eseguire il debug e distribuire Google App Engine grazie all’ IDE JetBrain PhpStorm. Infine per concludere gli sviluppatori interessati a PHP ora possono creare un account in Google App Engine PHP Runtime e distribuire immediatamente le applicazioni PHP e volendo possono condividere le loro avventure con la comunità di Google+.

Voi l’avete provato?

Via googlecloudplatform.blogspot.it

[C# .NET] Come inserire dati da una tabella di un database dentro un DropDownList con SqlDataAdapter e un DataSet

C_Sharp1C# (si pronuncia “see sharp”) è un linguaggio di programmazione orientato agli oggetti sviluppato da Microsoft all’interno della suite di prodotti .NET (pronunciato dotnet) ovvero una piattaforma di sviluppo software che esprime una versatile tecnologia di programmazione ad oggetti. (cit. wikipedia).

In questo piccola guida inseriremo i valori della tabella del database nell’oggetto dropdownlist (che rappresenta una lista di valori) presente in una pagina aspx usando gli oggetti di C# SqlDataAdapter e un DataSet.

Leggi tutto “[C# .NET] Come inserire dati da una tabella di un database dentro un DropDownList con SqlDataAdapter e un DataSet”

10 suggerimenti di programmazione per principianti e non

Programmazione

Ecco un elenco di dieci suggerimenti che vi aiuteranno (forse 🙂 ) ad andare avanti, soprattutto se sei un principiante in programmazione. Questi suggerimenti sono utili da ripassare anche per un programmatore esperto perchè nella mia decennale esperienza, capita lo stesso ogni tanto, di perdere tempo in stupidaggini che normalmente risolverei in 5 minuti. Leggi tutto “10 suggerimenti di programmazione per principianti e non”

Frammenti di WordPress: Reindirizzare il feed RSS verso il nostro Feedburner

Feedburner è un servizio ben noto che consente di sapere quante persone hanno sottoscritto il tuo feed RSS. Con questo codice facciamo in modo che il nostro feed Rss di default di wordpress come ad esempio per questo blog http://www.marcobruni.info/wordpress/rss/ venga reindirizzato automaticamente al mio Feedburner http://feeds.feedburner.com/marcobruni.

Basta incollare queste 4 righe di codice all’interno del file functions.php (Funzioni Tema) tramite il menù di wordpress Aspetto->Editor, salvate il file e il gioco è fatto!

// Redirect RSS feeds to Feedburner
add_action('template_redirect', 'cwc_rss_redirect');

function cwc_rss_redirect() {
	if ( is_feed() && !preg_match('/feedburner|feedvalidator/i', $_SERVER['HTTP_USER_AGENT'])){
		header('Location: http://feeds.feedburner.com/marcobruni');
		header('HTTP/1.1 302 Temporary Redirect');
	}
}

Come iniziare con PHP?

Cosa è PHP?

PHP è l’acronimo per Hypertext Preprocessor ed è un linguaggio scripting lato-server per lo sviluppo del web. Lato-server vuol dire che il codice PHP viene eseguito sul server web ed il risultato è una pagina HTML che viene mandata nel nostro browser. Script vuol dire che non ha bisogno di essere compilato per eseguire il suo codice. PHP può essere inserito all’interno dell’HTML.

PHP può creare siti web e applicazioni web davvero impressionati, ed oggi è lo standard di fatto perchè utilizzato nel 70% dei server web mondiali. Si può facilmente imparare PHP se si ha familiarità con la programmazione come il linguaggio C.

Di cosa hai bisogno per eseguire PHP nel tuo computer?

1. web server(Apache, IIS, etc.)
2. PHP (http://www.php.net/downloads.php)
3. MySQL (http://www.mysql.com/downloads/)

Puoi installare questi 3 software uno ad uno oppure un solo pacchetto software che li installi automaticamente tutti semplificandoti la vita e la gestione, come ad esempio:

For Windows – WAMP, XAMPP, EasyPHP, AMPPS
For Mac – XAMPP, MAMP
For Linux – XAMPP

XAMPP
Per quanto mi riguarda, io uso XAMPP che voglio introdurvi con questo articolo. XAMPP è possibile installarlo ed eseguirlo su tutti i più importanti sistema operativi.

Installazione

  • Vai all’home page di XAMPP tramite questo link.
  • Scegli il tuo sistema operativo
  • Scarica ed esegui l’installer

Questo è tutto. Adesso sei pronto a scrivere il tuo sito in PHP.

ESEGUI IL TUO SERVER
Esegui il tuo Pannello XAMPP tramite il link dal Desktop oppure dal menù di start se sei su windows.

Se non hai eseguito il tuo Apache, clicca la spunta e avvialo come puoi vedere nello screenshot.

Apri il tuo browser e vai all’indirizzo http://localhost/ e scegli la tua lingua, come puoi vedere dallo screenshot.

Congratulazioni: hai installato con successo XAMPP nel tuo sistema!

Scriviamo in PHP
Come da tradizione ogni volta che si inizia ad imparare un nuovo linguaggio di programmazione, il primo programma che si scrive è la frase Hello World.

Facciamolo anche noi, apriamo un editor di testo e scriviamo:

Salviamo il file hello.php nella cartella C:\xampphtdocs . Apri il tuo browser e vai all’indirizzo http://localhost/hello.php e come per magia vedrai “Hello World!” sul tuo browser.

Come lavora?
Come avete visto sopra, il nostro codice si trova tra ? , questo per far capire al server che quelle righe sono PHP. La scrittura del codice PHP può avvenire in 3 forme come di seguito. È possibile utilizzare una delle opzioni.

Inserire codice PHP all’interno dell’HTML
Come sapete, stiamo creando un sito web quindi è necessario inserire il codice PHP all’interno dell’ HTML, come di seguito.

Se avete domande o consigli non esitate a contattarmi.

Neal Gafter parla di Java sotto la gestione Oracle

Il dipendente Microsoft Neal Gafter, che fu il progettista principale e realizzatore del Java SE 4 e 5 che ha portato molti miglioramenti al linguaggio e ora lavora per Microsoft sui Linguaggi per la piattaforma NET, discute l’impatto dell’acquisizione di Oracle di Sun su Java, consente la possibilità di aggiungere stack segmentato e un meta-oggetto del protocollo di Java, e offre alcune indicazioni sul confronto tra Java e C#/.NET

Java 7 viene fornito con grave bug

La lucidimagination.com ha appena pubblicato un annuncio su un bug grave nella recente pubblicazione della versione Java 7. Pare che alcuni cicli non compilati bene siano causa di errori nelle ottimizzazioni del compilatore HotSpot, che causa il fallimento dei programmi. Il bug interessa diversi progetti di Apache direttamente come Apache Lucene Core e Apache Solr ed hanno già sollevato un allarme, notando che il bug potrebbe essere presente anche in Java 6

Eclipse 3.7 (Indigo) è disponibile

In perfetto orario, L’Eclipse Foundation ha rilasciato Eclipse 3.7 (Indigo). In realtà, Indigo è una versione che contiene decine di progetti tra cui la piattaforma Eclipse, Java tool di sviluppo, strumenti di controllo del codice sorgente, GUI designers, e altro ancora. Questo è l’ottavo anno consecutivo in cui la comunità Eclipse rilasica una versione di Eclipse nei tempi previsti.

Statistiche di Indigo:

  • 62 team di progetto hanno partecipato
  • 46 milioni di righe di codice
  • 408 sviluppatori hanno contribuito al codice
  • 49 organizzazioni hanno collaborato al rilascio di questa versione
  • 10 pacchetti predefiniti che permettono semplice il download e l’uso

Indigo include importanti nuove funzionalità per gli sviluppatori Java, innovazioni nella tecnologia di modellazione, e avanzamenti nella tecnologia Eclipse runtime.

Le principali nuove funzionalità per gli sviluppatori Java:

  • EGit release 1.0 offre supporto di prima classe per gli sviluppatori Java con Git per la gestione del codice sorgente
  • WindowBuilder, una classe Eclipse-based GUI builder, è ora disponibile come progetto open source Eclipse.
  • Test automatizzati con GUI per le applicazioni Java e HTML incluse in Jubula.
  • m2eclipse crea stretta integrazione con Maven e lo spazio di lavoro Eclipse, consentendo agli sviluppatori di lavorare con progetti Maven direttamente da Eclipse.
  • Mylyn 3.6 supporta Hudson build monitoring direttamente dall’area di lavoro Eclipse.
  • Eclipse Marketplace Client supporta ora l’installazione drag and drop di soluzioni basate su Eclipse direttamente in Eclipse rendendo molto più facil installare nuove soluzioni.
  • Supporto preliminare per Java 7 (a breve).

Altri cambiamenti importanti della piattaforma:

  • Attuazione del prossimo OSGi R4.3 Core Specification.
  • Multi-touch.
  • Supporto per WebKit su tutte le piattaforme (Windows, Linux e OS X).
  • Numerosi miglioramenti a Cacao per OS X.

Indigo è disponibile per il download immediato dal www.eclipse.org/downloads . Oltre alla piattaforma Eclipse 3.7 di produzione, il rilascio Indigo include anche una anteprima della prossima generazione, versione 4.1, disponibile dalla pagina di download 4.x.

Per maggiori informazioni:

Eclipse Indigo – Nuovo e Degno di nota
I Numeri di Indigo
Eclipse Java 7 Beta istruzioni di installazione (attualmente non disponibile – Riprova più tardi)

Fonte: zdnet.com

6 Librerie Java per risparmiare tempo

1. Joda-Time :- una classe migliore di quella ufficiale Java date/time. Questa libreria permette di risolvere tutti i problemi dei dati date/time affrontato dallo sviluppatore java. http://joda-time.sourceforge.net/

2. Apache-Commons:- Un estensione delle funzionalità principali di Java. http://commons.apache.org/

  • BeanUtils:- Fornisce metodi per gestire i Beans. Ad esempio: BeanUtils.copyProperties (targetBean, sourceBean), per copiare i valori delle proprietà simili.
  • Lang :- Fornisce funzionalità extra per gestire le classi java.lang.ad esempio: StringUtils.isEmpty(str);

3. Google Guava :- Qualcosa di simile ad Apache Commons. http://code.google.com/p/guava-libraries/

4. Apache Lucene (http://lucene.apache.org/) : Un libreria che devi avere per l’indicizzazione. Aggiungi Lucene per velocizzare le ricerche. http://lucene.apache.org/java/docs/index.html

5. iText :- destinati alla trasformazione in formato PDF. http://www.itextpdf.com/

6. Apache POI :- destinati alla trasformazione vari formati di file come Word, foglio di calcolo, gli standard Open XML ecc.. http://poi.apache.org/

Fonte: http://semanticjava.wordpress.com

Biliardo fatto col nuovissimo HTML5

Agente 008 Ball è un gioco di biliardo di Pixel Lab in cui si gioca insieme all’agente 008 e avete il compito di impedire all’organizzazione terroristica GESSO di vincere il Torneo Internazionale di Biliardo.

Il gioco è stato commissionato da Microsoft come uno dei siti vetrina per il lancio di Internet Explorer 9 (in verità Google Chrome supporta html5 da almeno 1 anno), chiedendo a Pixel Lab un app che fosse stata come una applicazione nativa installata. Agente 008 Ball utilizza gli HTML5 Canvas e funzionalità audio e un motore fisico JavaScript per un risultato finale che si sente come qualcosa di scritto in Flash o per i desktop.

Occhio perché da dipendenza 🙂