Microsoft's Internet Explorer browser has no built-in vector graphics machinery required for "loss-free" gradient background themes.

Please upgrade to a better browser such as Firefox, Opera, Safari or others with built-in vector graphics machinery and much more. (Learn more or post questions or comments at the Slide Show (S9) project site. Thanks!)

Desktop GNU/Linux

Ubuntu: Applicazioni software

Master "Tecnologie OpenSource"

Previously on Desktop GNU/Linux

Obiettivi della lezione precedente:

Desktop GNU/Linux

  1. Introduzione alle tecnologie libere in ambiente Desktop
  2. Software Libero: Origini, Filosofia e Comunità di sviluppo
  3. Installazione, Uso del Desktop e Configurazione di Rete
  4. Applicazioni Desktop comuni
  5. Problemi comuni

Obiettivi della lezione

  • Conoscere i principi di funzionamento del web
  • Saper accedere al web attraverso il browser Mozilla Firefox
  • Conoscere le caratteristiche del browser Mozilla Firefox
  • Saper installare e disinstallare le estensioni di Mozilla Firefox
  • Conoscere i principi di funzionamento dei servizi email
  • Saper configurare il client di posta Evolution per accedere ai servizi email
  • Conoscere le caratteristiche del client di posta Evolution
  • Saper accedere alle funzionalità organizzative di Evolution
  • Conoscere gli applicativi che compongono una suite Office
  • Saper riconoscere ed eseguire gli applicativi OpenOffice
  • Conoscere il principio di funzionamento di un Foglio di Calcolo
  • Saper creare un semplice foglio di calcolo con OpenOffice Calc
  • Conoscere il principio di funzionamento di un Database Relazionale
  • Saper creare un semplice database relazionale con OpenOffice Base
  • Conoscere le altre applicazioni comuni di un Desktop GNOME

Principio di funzionamento di un browser web

tt

Nel grafico è schematizzata la tipica interazione client/server che regola lo scambio di dati nel web. Il browser inoltra le richieste e visualizza le risposte. Il server risponde alle richieste del browser producendo le risorse da esso richieste.

Il protocollo HTTP è nato agli inizi degli anni 90 come protocollo di trasporto per HTML, standard per documenti ipertestuali sviluppato dal fisico Tim Berners-Lee .

Dalla parte del client o dalla parte del server?

Sottolineare che negli ultimi tempi si è assistito allo sviluppo delle interfacce js.

Le componenti software che vivono nello spazio client e server hanno ruoli ben distinti.

Il browser web fornisce all’utente un’interfaccia con cui interagire.

Il web server produce le risorse che l’utente richiede.

Sino al Web 2 l’elaborazione avveniva completamente sul server (ad eccezione di tecnologie ad-hoc come Applet Java e Flash) con il browser come componente passiva.

La nuova architettura prevede sempre più elaborazione lato browser attraverso estensioni degli standard esistenti (es. HTML5) anzichè affidate a tecnologie ad-hoc.

Navigare con Ubuntu GNU/Linux: Mozilla Firefox

Sottolinea che firefox oltre ad essere standard, sicuro ed estendibile è ovviamente aperto!

Mozilla Firefox è un browser web multipiattaforma prodotto da Mozilla

Mozilla Firefox è un browser da guiness: il 18 Giugno 2008, ad un giorno dal rilascio della versione 3.0, è stato battuto il record dei download effettuati in 24 ore.

Mozilla Firefox è un software di successo perché:

Firefox

Conformità agli standard

Nel 1994 il padre fondatore del web Tim Berners Lee istituì un consorzio di nome World Wide Web Consortium (W3C). L’obiettivo del consorzio, tutt’ora attivo, è quello di stabilire, sviluppare e diffondere gli standard legati al web.

HTTP Network

I software che operano nell’ambito del web dovrebbero essere conformi a tali standard.

Tuttavia, questo non è sempre vero.

Firefox è un browser conforme agli standard.

Gli standard del web

Il W3C ha definito oltre 50 standard. Elenchiamo i più diffusi:

Hello, HTML!

hello_html.html

<html>
  <body>
    <p>Hello, HTML!</p>
  </body>
</html>

Punti di forza

Esempio: Hello, XHTML!

Utilizzando un semplice editor di testi come GEdit è possibile realizza una semplice pagina XHTML che visualizzi un’intestazione e un paragrafo e visualizzarlo attraverso Firefox

hello_xhtml.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
  <head>
    <title>Hello, XHTML!</title>
  </head>

  <body>
    <h1>Hello, XHTML!</h1>
    <p>very simple XHTML page.</p>
  </body>
</html>

Cascading Style Sheets

Sottolinea il ruolo di CSS nella separazione tra aspetto grafico e contenuti.

CSS (Cascading Style Sheets) è un linguaggio che descrive l’aspetto grafico di una pagina web.

Il meccanismo di associazione di uno stile CSS è un processo a cascata.

Gli stili CSS:

CSS è uno standard del web.

Esempio: Applicare uno stile CSS

external.css

/* assegna a tutti i paragrafi della pagina il colore rosso */
p {
  color: red;
}

/* colora di verde il link contenuto nei paragrafi quando ci si passa
su col mouse */

p a:hover {
  color: green;
}

Esempio: Applicare uno stile CSS

Utilizzando un normale editor di testi come ’’gedit’’ è possibile applicare uno stile ad una pagina HTML semplicemente aggiungendo al tag head del documento dei tag link

<link rel="stylesheet" href="external.css" type="text/css" />
<link rel="stylesheet" type="text/css" >
p.red {
  font-size: 14px;
  background-color: red;
}

/* colora di blu e sottolinea la parte di testo compresa tra i tag
<span> e </span> che si trova all'interno di una intestazione */

h1 span.underline {
  color: blue;
  text-decoration: underline;
}
</link>

Sicurezza

Spiega perché un software libero è intrisecamente più sicuro di un software proprietario (ammesso che sia vero :-D). Spiega cosa sono i malware e cos’è il phishing.

Fin dalle prima versioni di Mozilla Firefox gli sviluppatori si sono concentrati sugli aspetti legati alla sicurezza.

Mozilla Firefox è un browser sicuro perché:

Estendibilità

Le estensioni di Firefox sono vere e proprie applicazioni che permettono di aggiungere funzionalità al browser.

Un’estensione ha la possibilità di cambiare radicalmente le caratteristiche di Firefox trasformandolo, ad esempio, in un client IRC, in una stazione meteorologica, in un ambiente di sviluppo per il web.

Attualmente, le estensioni di Firefox si contano a migliaia

Firefox è un software libero per cui chiunque può sviluppare e distribuire la propria estensione!

Cercare e installare le estensioni

Per cercare e installare un’estensione per Firefox è sufficiente raggiungere l’opzione di menù:

Strumenti → Componenti aggiuntivi

Nel campo di ricerca si inserisce una parola chiave (ad esempio web developer ) relativa al componente che si desidera installare.

Infine cliccare su ‘Aggiungi a Firefox’ e riavviare l’applicazione.

La posta elettronica 1/2

HTTP Network

La posta elettronica è un servizio di rete la cui nascita risale al 1972.

I principali protocolli che regolano il servizio di email sono:

  • SMTP (Simple Mail Transfer Protocol)
  • POP (Post Office Protocol)
  • IMAP (Internet Message Access Protocol)

Il primo protocollo è relativo alla trasmissione dei messaggi. Gli ultimi due si occupano dell’ accesso alla casella di posta elettronica.

La posta elettronica 2/2

Il protocollo standard SMTP consente alla posta elettronica di spostarsi tra server gestiti da diversi fornitori di servizio e attraverso diverse implementazioni libere e proprietarie.

HTTP Network

I protocolli standard POP3 e IMAP4 consentono agli utenti di accedere ai server di posta mediante diverse applicazioni libere e proprietarie.

Evolution: il client di posta elettronica

Spiega che il calendario si può interfacciare con Google Calendar e iCal.

Evolution è il personal information manager ufficiale di Ubuntu.

Tra le varie componenti software di Evolution è presente anche un client email che supporta i pricipali protocolli di rete relativi alla posta elettronica.

Ma Evolution non è solo posta elettronica. Nell’applicativo troviamo anche:

Evolution

Software di produttività personale

Con il termine software di produttività personale si intendono quelle applicazioni che permettono ad un utente di produrre documenti di testo, fogli di calcolo, presentazioni, grafici, basi di dati.

Generalmente, una suite di applicazioni di produttività personale (o per l’office automation), comprende:

OpenOffice.org: La storia

OpenOffice.org è un software libero di produttività personale rilasciato da Sun Microsystems.

OpenOffice.org nasce dalle ceneri di StarOffice, una suite per l’ufficio sviluppata da una società tedesca in seguito acquistata da Sun Microsytems.

Nel 2000 Sun Microsystems decide di rilasciare il codice sorgente di StarOffice.

Questa scelta permette a Sun Microsystem di abbattare i costi e i tempi di produzione del software aumentandone la qualità.

OpenOffice.org

Il formato OpenDocument

Il formato OpenDocument è un formato aperto per documenti digitali quali:

Organizzazioni ed individui che utilizzano il formato OpenDocument per i propri documenti hanno la garanzia di poter accedere per sempre a tali informazioni non essendo vincolati ad un particolare produttore software (che nel frattempo potrebbe decidere di cambiare le specifiche del formato, modificare i termini della licenza d’uso, etc.)

OpenOffice.org supporta il formato OpenDocument.

OpenOffice.org: Tecnologie

OLE, COM

Una delle caratteristiche più innovative delle suite Office è costituita dalla possibilita’ di creare documenti composti dai singoli componenti della suite (Es. un documento di testo contenente una tabella ed un grafico proveniente da un foglio elettronico).

La tecnologia che consente questa composizione (comune nei sistemi ipertestuali come l’HTML) fù introdotta nel 1990 da Microsoft con il nome di OLE.

Successivamente la tecnologia si complicò con l’introduzione della tecnologie COM e DCOM (tecnologie simili allo standard CORBA).

OpenOffice.org: Tecnologie

UNO

OpenOffice.org così come la suite Microsoft Office comprende una tecnologia analoga a COM chiamata Uno (Universal Network Objects).

Attraverso questa tecnologia OpenOffice.org è in grado di offrire le medesime caratteristiche di composizione possibili con la suite office di Microsoft.

Uno è una tecnologia a componenti multipiattaforma e multilinguaggio e sono già presenti binding in diversi linguaggi di scripting (C, C++, Java, Python).

Il foglio di calcolo

Un foglio di calcolo è un software di produttività personale che permette di rappresentare dei dati su una griglia bidimensionale di celle.

Ogni cella è identificata attraverso una coppia di coordinate (colonna, riga).

Una cella può contenere dati di diverso tipo (numeri, parole, date, funzioni, etc.).

Un foglio di calcolo permette di rappresentare graficamente il contenuto delle celle.

OpenOffice.org Calc: il foglio di calcolo

OpenOffice.org Calc è il foglio di calcolo contenuto nella suite OpenOffice.org.

OpenOffice.org Calc comprende le medesime peculiarità di Microsoft Excel e ne estende le funzionalità.

Con OpenOffice.org è possibile:

Esercizio: Magazzino ortofrutticolo

  • Fai riprodurre la tabella ai corsisti.
  • Fai aggiungere la colonna ‘Descrizione’ selezionando la colonna ‘Prodotto’ e selezionando dal menu ‘Inserisci’ la voce ‘Colonna’.
  • Spiega come funzionano le formule. Sottolinea il fatto che occorre inserire il simbolo ‘=’. Spiega a cosa serve la funzione di completamento automatico. Fai vedere come cambiano i riferimenti alle celle quando si utilizza il completamento automatico. Magari fai vedere altri esempi di completamento automatico (es. giorni della settimana).
  • Fai calcolare il valore totale del magazzino utilizzando il tasto di sommatoria. Spiega brevemente come si utilizzando le funzioni in Calc (nome della funzione, parametri, valori ritornati). Fai vedere altri esempi di funzioni.
  • Spiega cosa si intende per incidenza (prezzo_prodotto/valore_magazzino). Calcola la prima incidenza e sottolinea come il valore sia compreso tra 0 e 1. Fai utilizzare il completamento automatico per calcolare le altre incidenze. Aspetta che i corsisti si sorprendano dell’errore. Lasciali fare supposizioni. Spiega la differenza tra riferimenti assoluti e riferimenti relativi. Fai un discorso sul formato celle e imposta il tipo di formato %.
  • Verifica che la somma delle incidenze percentuali sia pari al 100%.
  • Per realizzare il grafico a torta seleziona le colonne ‘Prodotto’ e ‘Incidenza %’. Approfitta per spiegare come si fa la selezione multipla di colonne non adiacenti (tasto CTRL). Inserisci il grafico a torta utilizzando il menu (Inserisci→Diagramma). Gioca un po’ con i parametri dal grafico (dimensioni, etichette, legenda, etc.).

Il responsabile della contabilità di un magazzino ortofrutticolo ha realizzato una tabella in cui sono riportati i prodotti disponibili, la loro quantità e il loro prezzo unitario.

OpenOffice.org: Documentazione

OpenOffice.org Base: il database

Il più giovane componente della suite OpenOffice.org è dedicato alla progettazione, l’implementazione e la gestione di basi di dati relazionali.

I database relazionali si basano su un modello di rappresentazione dei dati detto appunto modello relazionale.

Nel modello relazionale i dati sono rappresentati da una rete di relazioni tra tabelle.

OpenOffice.org Base permette di strutturare tabelle di dati e di definire delle relazioni tra di esse.

Esempio: Registro del docente

Supponiamo di voler implementare in OpenOffice.org Base una base di dati per gestire il registro di un docente.

Le tabelle che realizzeremo sono, nella nostra implementazione ingenua:

In OpenOffice.org Base è possibile strutturare delle tabelle definendo dei campi.

Una volta definite le tabelle è possibile metterle in relazione tra loro.

Per popolare le tabelle con i dati si utilizzano i formulari.

Per effettuare ricerche sui dati del database si utilizzano le viste (query).

Altre applicazioni per il Desktop

Internet

  • Pidgin (messagistica)
  • Transmission (client bittorrent)

Multimedia

  • Rhythmbox
  • Totem
  • Brasero

Grafica

  • The Gimp
  • Inkscape

XMPP: eXtendible Messaging and Presence Protocol (1/2)

XMPP

L’area della messagistica istantanea sino a qualche anno fa era coperta dallo standard IRC , il quale era orientato soprattutto alle chat di gruppo.

Con il dilagare di soluzioni di IM orientate alla presenza utente era necessario un nuovo standard per colmare tale lacuna.

Così nel 1998 viene annunciato il progetto Jabber , che diventa standard nel 2004 con il nome di XMPP .

XMPP: eXtendible Messaging and Presence Protocol (2/2)

XMPP Network Diagram

Nel 2005 Google annuncia il servizio Google Talk basato su XMPP.

Pidgin

Pidgin IM

Protocolli Supportati: AIM, Bonjour, Gadu-Gadu, Google Talk, Groupwise, ICQ IRC, MSN, MySpaceIM, QQ, SILC, SIMPLE, Sametime, XMPP Yahoo!, Zephyr

BitTorrent: P2P Protocol

Il protocollo ad oggi più utilizzato per il download di file di grosse dimensioni è senza dubbio BitTorrent , concepito e scritto da Bram Cohen nel 2001.

Il protocollo BitTorrent è molto utilizzato dai progetti di software libero per alleggerire le richieste in termini di risorse, generate dai numerosi download contemporanei che si verificano al rilascio di una nuova release.

Transmission

Transmission BT

Client BitTorrent Minimale

Restricted Extras: MP3 e DVD-CSS

Come anticipato precedentemente a causa di restrizioni/incertezze legislative non vengono distribuiti i codec MP3 e un decoder per la visione dei DVD originali.

L’installazione dei pacchetti software necessari può essere effettuata da una qualunque delle applicazioni APT disponibili (“add/remove programs”, synaptic, apt-get, aptitude etc.):

Inoltre alcune applicazioni (es. Totem e Rhythmbox) richiederanno l’installazione di tale pacchetti software la prima volta che si cercherà di riprodurre tali formati.

Rhythmbox / Totem / Brasero

Rhythmbox / Totem / Brasero

  • Rhythmbox : Music Player and Organizer
  • Totem : Minimal Video Player
  • Brasero : CD/DVD Burning Software

Gimp / Inkscape

Gimp / Inkscape

  • Gimp: GNU Image Manipulation Program
  • Inkscape: Open Source Vector Graphics Editor

Copyright (C) 2008 - Alca Societa' Cooperativa

http://alca.le.it - info@alca.le.it

released under CreativeCommons 2.5 by-nc-sa

NOTA: le immagini dei software e dei device contenuti
nella presentazione sono proprieta' dei relativi detentori
del copyright e sono state riprodotte a scopo esclusivamente didattico.