<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://bytes.cat/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://bytes.cat/feed.php">
        <title>bytes.cat</title>
        <description></description>
        <link>https://bytes.cat/</link>
        <image rdf:resource="https://bytes.cat/lib/tpl/dokuwiki/images/favicon.ico" />
       <dc:date>2026-04-19T05:38:31+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://bytes.cat/django_react?rev=1776191200&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_lliga?rev=1773162525&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/libgdx_comunicacions?rev=1775989355&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/integracio_de_django_amb_react?rev=1688639115&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/wiki:syntax?rev=1632908400&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/java_lectura_escriptura?rev=1669309331&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_multimedia?rev=1765397805&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/nodejs_selenium?rev=1738694203&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_docker?rev=1708441154&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/ids-maltrail?rev=1657893198&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/fastapi?rev=1687968209&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_frontend?rev=1688626832&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_bluetooth?rev=1769369608&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/docker_nodejs?rev=1688381902&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django?rev=1775753034&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/dockerfile?rev=1699298086&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/libgdx_jsyn?rev=1740961460&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/python_web?rev=1670957026&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_test?rev=1765875609&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/open_nebula?rev=1773951780&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_api?rev=1773864631&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/cluster_hardware_amb_pacemaker_i_corosync?rev=1688626324&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_imatges?rev=1775583524&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_auth?rev=1749109642&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/php?rev=1758636511&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/flask_basic?rev=1688679460&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/docker_flask?rev=1687959550&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_camera?rev=1765395485&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_persistencia?rev=1764600967&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_projectes_investigacio?rev=1688141420&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/selenium?rev=1689001478&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/playground:playground?rev=1696498381&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/vagrant_ubuntu_libvirt?rev=1771371559&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_spinner?rev=1666026234&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/apache_dnie?rev=1734305912&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/webscraping_apache?rev=1659337528&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_threads?rev=1760467980&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/materialize?rev=1764186935&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/unity_ar?rev=1666186535&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/docker_swarm_stacks?rev=1750354189&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android?rev=1759159868&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_comunicacions?rev=1761581767&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_listview?rev=1761578715&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_recyclerview?rev=1767203282&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/websockets_php?rev=1688582133&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/java_lectura_escriptura_xml?rev=1669308595&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/libgdx_viewport?rev=1772755518&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/docker-compose?rev=1697567305&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_bindings?rev=1768834102&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/python_web_test?rev=1670958966&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_heroku?rev=1646677859&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_react_produccio?rev=1776180919&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_fragments?rev=1736299192&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_sensors?rev=1736792918&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/opendata_pandas?rev=1688513026&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/java_sqlite?rev=1669227500&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/vagrant?rev=1761145201&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/git_exemple_de_conflicte?rev=1711649395&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/ansible?rev=1717059372&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_sudoku?rev=1666617554&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/docker_swarm?rev=1668539316&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/wacom_ubuntu?rev=1632908400&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/jenkins_django?rev=1642407715&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/nodejs_railway?rev=1669228241&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/dockeritzacio_aplicacions_php?rev=1657798286&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/dockeritzacio_aplicacions_symfony?rev=1657413603&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/libgdx_stage?rev=1775662964&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/introduccio_javascript?rev=1701648305&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_railway?rev=1683900325&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/iot_django_aproximacio_un_dashboard_sobre_raspberry_pi?rev=1687674964&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_ninja?rev=1775750465&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/react_native?rev=1772818457&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/esp32?rev=1769369383&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/cordova?rev=1764870770&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/pdo?rev=1764339679&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_canvas?rev=1762825983&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/jquery?rev=1759426021&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/python_venv?rev=1746691466&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/php_mysql?rev=1731680892&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/django_mongo?rev=1718643442&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/java_cmd?rev=1697734458&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/dam_mp07_uf1_ft03?rev=1694007022&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/email_linux_docker?rev=1688133187&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/entorn_grafic_docker?rev=1687958620&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/wordpress?rev=1687846199&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/android_test?rev=1714436416&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/cordova_install?rev=1726676098&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/passwords_gnu_linux?rev=1642360071&amp;do=diff"/>
                <rdf:li rdf:resource="https://bytes.cat/apache2_en_debian_ubuntu?rev=1636998347&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://bytes.cat/lib/tpl/dokuwiki/images/favicon.ico">
        <title>bytes.cat</title>
        <link>https://bytes.cat/</link>
        <url>https://bytes.cat/lib/tpl/dokuwiki/images/favicon.ico</url>
    </image>
    <item rdf:about="https://bytes.cat/django_react?rev=1776191200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-14T18:26:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_react</title>
        <link>https://bytes.cat/django_react?rev=1776191200&amp;do=diff</link>
        <description>Django i React

Farem una plantilla de projecte amb Django i React, i emprarem Django Ninja com a motor per a l'API.

A l'article integracio de Django amb React podeu veure la versió amb Django REST Framework.



fpinfor daw dawmp06 dawmp07 django framework python react javascript web




Creació projecte base Django

Es podria fer en dos repositoris separats, però per simplicitat ho farem en un sol. Farem un projecte Django i hi posarem la part de React dins la carpeta</description>
    </item>
    <item rdf:about="https://bytes.cat/django_lliga?rev=1773162525&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-10T17:08:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_lliga</title>
        <link>https://bytes.cat/django_lliga?rev=1773162525&amp;do=diff</link>
        <description>Exercici lliga de futbol en Django

El Mundo Deportivo ens encarrega una web per fer el seguiment de La Liga de 1a, 2a i 3a divisió.

La nostra empresa decideix realitzar el projecte utilitzant el framework web Django per minimitzar el temps de desenvolupament aprofitant el seu</description>
    </item>
    <item rdf:about="https://bytes.cat/libgdx_comunicacions?rev=1775989355&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-12T10:22:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>libgdx_comunicacions</title>
        <link>https://bytes.cat/libgdx_comunicacions?rev=1775989355&amp;do=diff</link>
        <description>Comunicacions en libGDX

Aquest article ve de jocs libGDX on implementem jocs multiplataforma.

libGDX es programa en Java, per tant podriem emprar les llibreries estàndard de comunicació HTTP o WebSockets. Però si utilitzem les pròpies de liBGDX ens facilitarà el codi, ja que ens estalviarem la gestió dels</description>
    </item>
    <item rdf:about="https://bytes.cat/integracio_de_django_amb_react?rev=1688639115&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-07-06T10:25:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>integracio_de_django_amb_react</title>
        <link>https://bytes.cat/integracio_de_django_amb_react?rev=1688639115&amp;do=diff</link>
        <description>Integració de Django amb Reactjs

De manera simplificada, Reactjs és una biblioteca Javascript per desenvolupar aplicacions de pàgina única (SPA), amb una documentació molt detallada i ben estructurada. Per a aquest exemple, on gestionarem clients i els seus comptes associats, React servirà com a frontend, gestionant la interfície d'usuari (UI) a través de la petició al framework de Django i amb l'ajuda de Django REST Framework.</description>
    </item>
    <item rdf:about="https://bytes.cat/wiki:syntax?rev=1632908400&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-09-29T09:40:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>wiki:syntax</title>
        <link>https://bytes.cat/wiki:syntax?rev=1632908400&amp;do=diff</link>
        <description>Formatting Syntax

DokuWiki supports some simple markup language, which tries to make the datafiles to be as readable as possible. This page contains all possible syntax you may use when editing the pages. Simply have a look at the source of this page by pressing</description>
    </item>
    <item rdf:about="https://bytes.cat/java_lectura_escriptura?rev=1669309331&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-24T17:02:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>java_lectura_escriptura</title>
        <link>https://bytes.cat/java_lectura_escriptura?rev=1669309331&amp;do=diff</link>
        <description>Lectura i escriptura d'arxius a Java

fpinfor dam dammp06 dammp06uf1 dammp06uf01

----------

Tipus d'arxius

Hi ha dos tipus d’arxius:

- De text: guarden dades en format text (caràcters llegibles)

- Binaris: guarden dades en format binari (0s i 1s)

Per llegir arxius de text fem servir dues classes:</description>
    </item>
    <item rdf:about="https://bytes.cat/android_multimedia?rev=1765397805&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-10T20:16:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_multimedia</title>
        <link>https://bytes.cat/android_multimedia?rev=1765397805&amp;do=diff</link>
        <description>Android Multimèdia

Per multimèdia s'entenen els diferents mitjans que permeten a la persona humana percebre l'entorn. Els més destacats son la visió i la oïda, però també podrien incloure's el tacte, el gust i l'olfacte. I també la orientació, sabem si estem cap per avall mercès als canals semicirculars de la oïda (no és ni una brúixola ni un GPS però algo és algo).</description>
    </item>
    <item rdf:about="https://bytes.cat/nodejs_selenium?rev=1738694203&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-04T18:36:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>nodejs_selenium</title>
        <link>https://bytes.cat/nodejs_selenium?rev=1738694203&amp;do=diff</link>
        <description>Testing amb Selenium en Node.js

Selenium es pot executar en diversos llenguatges, inclòs JS amb Node.js.

Ens pot ser molt pràctic per a realitzar tests per a Cordova o el propi NodeJS.



Referències:

	*  Selenium Webdriver en NPM
	*  NodeJS assert module
	*  Selenium docs for alerts
	*  Article d'exemple
	*  Configurar mode headless en Chrome.
	*  Execute shell commands in NodeJS.
	*  Doc oficial de child_process lib per comandes en NodeJS.

cordova nodejs node javascript

Basics

Si tenim u…</description>
    </item>
    <item rdf:about="https://bytes.cat/django_docker?rev=1708441154&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-02-20T14:59:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_docker</title>
        <link>https://bytes.cat/django_docker?rev=1708441154&amp;do=diff</link>
        <description>Dockeritzant una aplicació Django

En aquest article dockeritzarem una aplicació Django. Cal haver seguit el tutorial inicial Django o, com a mínim disposar d'un projecte Django amb el complement django-environ per a les variables d'entorn.



ciber cibermp03 ceti cetimp03 docker django python

Referències:

	*  Django : primer de tot cal seguir aquest article per disposar d'una app Django apta per a ser dockeritzada, en particular amb els ajustos per utilitzar les variables d'entorn (django-env…</description>
    </item>
    <item rdf:about="https://bytes.cat/ids-maltrail?rev=1657893198&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-15T13:53:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ids-maltrail</title>
        <link>https://bytes.cat/ids-maltrail?rev=1657893198&amp;do=diff</link>
        <description>pràctica-ids-maltrail

ids fpinfor ciber cibermp03 ceti cetimp03

Utilització de l’ids maltrail com a detector d’intrussions i afegirem opcions de bloqueig a les deteccions a traves d’un script que recull del log de l’ids.

Una vegada instal·lat té un entorn web per visualitzar els events a la</description>
    </item>
    <item rdf:about="https://bytes.cat/fastapi?rev=1687968209&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-28T16:03:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>fastapi</title>
        <link>https://bytes.cat/fastapi?rev=1687968209&amp;do=diff</link>
        <description>FastAPI

----------

Referències teoria i documentació:

Documentació oficial FastAPI

Instal·lació


pip install fastapi
pip install uvicorn
pip install python-multipart


El paquet uvicorn és el servidor que s'utilitza per arrancar les aplicacions FastAPI, és un Asynchronous Server Gateway Interface (ASGI)</description>
    </item>
    <item rdf:about="https://bytes.cat/django_frontend?rev=1688626832&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-07-06T07:00:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_frontend</title>
        <link>https://bytes.cat/django_frontend?rev=1688626832&amp;do=diff</link>
        <description>Django framework: frontend

Django és un framework web basat en Python molt popular. Està orientat a la rapidesa de desenvolupament, per això se'l coneix com «The web framework for perfectionists with deadlines».

En aquest article tenim per objectius:</description>
    </item>
    <item rdf:about="https://bytes.cat/android_bluetooth?rev=1769369608&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-25T19:33:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_bluetooth</title>
        <link>https://bytes.cat/android_bluetooth?rev=1769369608&amp;do=diff</link>
        <description>Android i Bluetooth

El tema de Bluetooth és ample i complex. En aquest article abordarem el codi necessari per:

	*  Gestionar els permisos per a comunicació Bluetooth.
	*  Llistar i triar entre els dispositius aparellats al sistema operatiu.
	*  Utilitzar</description>
    </item>
    <item rdf:about="https://bytes.cat/docker_nodejs?rev=1688381902&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-07-03T10:58:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker_nodejs</title>
        <link>https://bytes.cat/docker_nodejs?rev=1688381902&amp;do=diff</link>
        <description>Dockeritzant una RestApi amb nodejs i PostgreSQL

Cal conèixer:

	*  &lt;https://nodejs.org/en&gt;
	*  &lt;https://www.postgresql.org/download/&gt;
	*  Docker
	*  Docker-compose
	*  Dockerfile

fpinfor ceti ciber cetimp03 cibermp03 daw dawmp07 dawmp08 asixm06 docker containers devops restapi nodejs web




Creació Bases de Dades i RestApi en local

En primer lloc en el PostgreSQL, amb el PgAdmin o un altre editor com per exemple DBeaver &lt;https://dbeaver.io/&gt;, creem una base de dades, en aquest exemple li he…</description>
    </item>
    <item rdf:about="https://bytes.cat/django?rev=1775753034&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-09T16:43:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django</title>
        <link>https://bytes.cat/django?rev=1775753034&amp;do=diff</link>
        <description>Django Web Framework

Django és un framework per a aplicacions web en Python.

És conegut com The framework for perfectionists with deadlines per la seva rapidesa de desenvolupament.

En aquest article tractarem els temes de l'entorn d'execució d'un projecte Django, per tal que es pugui posar en producció de forma segura.</description>
    </item>
    <item rdf:about="https://bytes.cat/dockerfile?rev=1699298086&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-06T19:14:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dockerfile</title>
        <link>https://bytes.cat/dockerfile?rev=1699298086&amp;do=diff</link>
        <description>Dockerfile : creant les nostres pròpies imatges

El Dockerfile ens permetrà crear els nostres propis contenidors personalitzats.

Veurem com crear un contenidor «des de zero» o from scratch, afegint només els arxius del SO imprescindibles per a la funció que volem resoldre.</description>
    </item>
    <item rdf:about="https://bytes.cat/libgdx_jsyn?rev=1740961460&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-03-03T00:24:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>libgdx_jsyn</title>
        <link>https://bytes.cat/libgdx_jsyn?rev=1740961460&amp;do=diff</link>
        <description>Utilitzant JSyn en libGDX

libGDX és una biblioteca de codi multiplataforma pensada per a la creació de jocs.

La gestió del so en libGDX és senzilla per a llençar sons registrats en arxius, que és el què es sol necessitar per als jocs. Però si volem generar els nostres son amb alguna llibreria, la cosa es pot complicar.</description>
    </item>
    <item rdf:about="https://bytes.cat/python_web?rev=1670957026&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-13T18:43:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>python_web</title>
        <link>https://bytes.cat/python_web?rev=1670957026&amp;do=diff</link>
        <description>Python Web amb Flask

Python és un llenguatge amb una gran implantació en l'àmbit acadèmic, de recerca, en particular en intel·ligència artificial, però que també té excel·lents eines per treballar el desenvolupament web. A més, és el llenguatge que més ha prosperat en els darrers anys.</description>
    </item>
    <item rdf:about="https://bytes.cat/django_test?rev=1765875609&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-16T09:00:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_test</title>
        <link>https://bytes.cat/django_test?rev=1765875609&amp;do=diff</link>
        <description>Tests amb Django

L'elaboració de tests automatitzats és molt important de cara al desenvolupament i manteniment del programari. Un projecte sense tests no serà acceptat per una comunitat de desenvolupadors que puguin contribuir (si estem parlant d'un projecte de codi lliure).</description>
    </item>
    <item rdf:about="https://bytes.cat/open_nebula?rev=1773951780&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-19T20:23:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>open_nebula</title>
        <link>https://bytes.cat/open_nebula?rev=1773951780&amp;do=diff</link>
        <description>Open Nebula Environment - ONE

Open Nebula Environment és un gestor de infraestructura de virtualització.

Instal·lació de proves amb Vagrant

Tenim aquí els arxius per a una instal·lació típica de 1 frontend + 2 workers KVM (que es poden augmentar fàcilment).</description>
    </item>
    <item rdf:about="https://bytes.cat/django_api?rev=1773864631&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-18T20:10:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_api</title>
        <link>https://bytes.cat/django_api?rev=1773864631&amp;do=diff</link>
        <description>APIs amb Django

Les API o Application Programming Interface ens permeten accedir de forma controlada a les dades d'una aplicació web, típicament a través del format JSON, tot i que inicialment es fes servir XML.

Es basen en l'arquitectura software REST. Aquesta estableix estàndards per a HTTP que faciliten la interoperativitat, en particular:</description>
    </item>
    <item rdf:about="https://bytes.cat/cluster_hardware_amb_pacemaker_i_corosync?rev=1688626324&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-07-06T06:52:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>cluster_hardware_amb_pacemaker_i_corosync</title>
        <link>https://bytes.cat/cluster_hardware_amb_pacemaker_i_corosync?rev=1688626324&amp;do=diff</link>
        <description>Cluster amb Pace Maker i Corosync

asixmp11uf04 asixmp11 asix fpinfor pacemaker corosync cluster

Introducció

De vegades necessitem crear un cluster amb més seguretat que un contenidor o màquina virtual, ja que en cas que ens guanyin accés a la màquina física, si muntem un entorn amb docker en alta disponibilitat, ens el poden tombar igualment, es per això que en aquests casos podem optar per un cluster hardware. Exemple d’això poden ser muntar un cluster de firewall o de routing.</description>
    </item>
    <item rdf:about="https://bytes.cat/django_imatges?rev=1775583524&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-07T17:38:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_imatges</title>
        <link>https://bytes.cat/django_imatges?rev=1775583524&amp;do=diff</link>
        <description>Tractament d'imatges en Django

Les imatges, en Django, necessiten un tractament particular.



fpinfor daw dawmp07 django framework python web




Algunes consideracions

Django processa eficientment les dades de l'aplicació, però no és ràpid per servir els arxius voluminosos com les imatges, o d'altres que es demanen molt sovint com els arxius estàtics (</description>
    </item>
    <item rdf:about="https://bytes.cat/django_auth?rev=1749109642&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-05T07:47:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_auth</title>
        <link>https://bytes.cat/django_auth?rev=1749109642&amp;do=diff</link>
        <description>Autenticació a Django



Pots llegir la doc oficial d'autenticació de Django:

	*  &lt;https://docs.djangoproject.com/en/stable/topics/auth/default/&gt;

Aquest article continua d'altres articles d'aquesta wiki:

	*  Django
	*  Django Frontend
	*  Django Lliga

fpinfor daw dawmp07 dawmp07uf02 dawmp07uf2 django framework python web

Auth Quickstart

Per anar ràpid, podem instal·lar el model sencer auth (llegir doc) i totes les seves rutes. També afegirem</description>
    </item>
    <item rdf:about="https://bytes.cat/php?rev=1758636511&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-23T14:08:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>php</title>
        <link>https://bytes.cat/php?rev=1758636511&amp;do=diff</link>
        <description>PHP

PHP és el llenguatge de programació web entorn servidor més popular des de fa molts anys. La web de referència és &lt;http://php.net&gt; i on haurem de consultar de forma oficial sempre que tinguem dubtes.



Les sigles PHP ténen el què es coneix per definició recursiva. «PHP»</description>
    </item>
    <item rdf:about="https://bytes.cat/flask_basic?rev=1688679460&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-07-06T21:37:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>flask_basic</title>
        <link>https://bytes.cat/flask_basic?rev=1688679460&amp;do=diff</link>
        <description>Flask és un framework o entorn de treball dedicat a facilitar la creació d'aplicacions web utilitzant el llenguatge de programació Python.


Un framework és un marc o esquema de treball que consisteix en un conjunt d'eines i mòduls per a facilitar-nos el desenvolupament de programari. En aquest cas, Flask, igual que el famós Django, és un</description>
    </item>
    <item rdf:about="https://bytes.cat/docker_flask?rev=1687959550&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-28T13:39:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker_flask</title>
        <link>https://bytes.cat/docker_flask?rev=1687959550&amp;do=diff</link>
        <description>Dockeritzant una aplicació Flask

Cal conèixer:

	*  Python Web
	*  Redis - getting started
	*  Docker
	*  Docker-compose
	*  Dockerfile

fpinfor ceti ciber cetimp03 cibermp03 daw dawmp07 dawmp08 docker containers devops python web flask




Mini projecte Flask dockeritzat

Segons la pàgina getting started de Docker-compose disposem d'un exemple amb el framework web Flask:


version: &quot;3&quot;
services:
  web:
    build: .
    ports:
      - &quot;5000:5000&quot;
  redis:
    image: &quot;redis:alpine&quot;</description>
    </item>
    <item rdf:about="https://bytes.cat/android_camera?rev=1765395485&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-10T19:38:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_camera</title>
        <link>https://bytes.cat/android_camera?rev=1765395485&amp;do=diff</link>
        <description>Ús de la càmera amb Android - DEPRECATED

Aquesta pàgina està DEPRECATED.

L'actual versió està a Android Multimedia.

En aquest article veurem com fer ús del hardware de la càmera per a capturar imatges i vídeos. També tractarem sobre l'emmagatzematge dels arxius multimèdia.</description>
    </item>
    <item rdf:about="https://bytes.cat/android_persistencia?rev=1764600967&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-01T14:56:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_persistencia</title>
        <link>https://bytes.cat/android_persistencia?rev=1764600967&amp;do=diff</link>
        <description>La persistència en Android és un tema sensible degut al model de seguretat que asseguri la privacitat de les dades de les aplicacions.

Referències:

	*  Android
	*  Model de seguretat d'Android

android dam dammp08 dammp08uf01 dammp08uf01

Segons Android Data Storage tenim diversos tipus d'emmagatzematge:

	*  Preferències compartides: tipus simples en forma clau-valor.</description>
    </item>
    <item rdf:about="https://bytes.cat/django_projectes_investigacio?rev=1688141420&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-30T16:10:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_projectes_investigacio</title>
        <link>https://bytes.cat/django_projectes_investigacio?rev=1688141420&amp;do=diff</link>
        <description>Pràctica en Django: Projectes d'investigació d'un institut de recerca

A la UB cada vegada es duen a terme més projectes de recerca per part del personal investigador de la universistat.
Per tal de facilitar la gestió dels projectes i de l'assignació de personal ens demanen implementar un sistema que permeti fer el següent:</description>
    </item>
    <item rdf:about="https://bytes.cat/selenium?rev=1689001478&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-07-10T15:04:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>selenium</title>
        <link>https://bytes.cat/selenium?rev=1689001478&amp;do=diff</link>
        <description>Parsing de planes web amb Selenium

python selenium fpinfor daw dawmp07 dawmp07uf04

Selenium és una eina per a l'automatització de proves i la interacció amb pàgines web. Integrar Selenium a Django perme llegir les dades d'una pàgina web i utilitzar-les a la teva aplicació Django.

Pas 1: Instal·lar Selenium i el controlador del navegador:
El primer pas és assegurar-te que tens Selenium instal·lat a la teva màquina. Pots instal·lar-lo fàcilment utilitzant l'eina de gestió de paquets de Python, …</description>
    </item>
    <item rdf:about="https://bytes.cat/playground:playground?rev=1696498381&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-05T09:33:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>playground:playground</title>
        <link>https://bytes.cat/playground:playground?rev=1696498381&amp;do=diff</link>
        <description>PlayGround

Caixes - Wrap

Un advertiment o warning.

icons

&lt;https://pictogrammers.com/library/mdi/&gt;











Tab Box plug-in







Vagrant

Vagrantfile per a tenir un «client» linux passant per una gateway Kali i poder inspeccionar el trànsit amb Wireshark.


# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure(&quot;2&quot;) do |config|

  config.vm.define &quot;client&quot; do |client|
    client.vm.box = &quot;ubuntu/jammy64&quot;
    client.vm.network &quot;private_network&quot;, ip: &quot;192.168.56.100&quot;
    client.vm.prov…</description>
    </item>
    <item rdf:about="https://bytes.cat/vagrant_ubuntu_libvirt?rev=1771371559&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-02-17T23:39:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vagrant_ubuntu_libvirt</title>
        <link>https://bytes.cat/vagrant_ubuntu_libvirt?rev=1771371559&amp;do=diff</link>
        <description>Vagrant amb Libvirt en Ubuntu

El sistema de virtualització format per QEMU, KVM i libvirt és molt eficient per treballar, en especial quan ho fem de forma automatitzada, com en el cas de Vagrant. KVM és emprada per distribucions tan potents com Proxmox i, en general, és la opció més adoptada pels grans proveïdors ja que és codi lliure molt provat i robust, i que permet estalviar costos de llicències.</description>
    </item>
    <item rdf:about="https://bytes.cat/android_spinner?rev=1666026234&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-10-17T17:03:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_spinner</title>
        <link>https://bytes.cat/android_spinner?rev=1666026234&amp;do=diff</link>
        <description>Android Spinner o Dropdown

Un spinner d'Android és un widget (element gràfic) que habitualment coneixem en altres entorns com a dropdown menu, selector o menú desplegable.

La programació en Android és, però, més complicada que en altres entorns degut a la gestió de la RAM en llistes molt llargues amb recursos costosos com les imatges, explicat a l'article</description>
    </item>
    <item rdf:about="https://bytes.cat/apache_dnie?rev=1734305912&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-15T23:38:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>apache_dnie</title>
        <link>https://bytes.cat/apache_dnie?rev=1734305912&amp;do=diff</link>
        <description>Apache amb DNIe

Configurar el servidor web (en aquest cas Apache) per a que validi certificats de confiança (en aquest cas del DNIe) és una tasca important en les mesures de seguretat i autenticació de l'administració pública, i pot esdevenir-ho també en un futur per a la gestió privada. L'administració pública necessita uns estàndards molt alts de seguretat, sobretot en el què respecta a autenticació i validació de la identitat de l'usuari.</description>
    </item>
    <item rdf:about="https://bytes.cat/webscraping_apache?rev=1659337528&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-08-01T07:05:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>webscraping_apache</title>
        <link>https://bytes.cat/webscraping_apache?rev=1659337528&amp;do=diff</link>
        <description>Webscraping amb python i capçaleres http d’Apache

Webscraping fa referència a les tècniques per a recuperar dades d'una web de manera automatitzada, 
i Python és un llenguatge de programació que té llibreries especialitzades que faciliten aquesta 
tasca.</description>
    </item>
    <item rdf:about="https://bytes.cat/android_threads?rev=1760467980&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-14T18:53:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_threads</title>
        <link>https://bytes.cat/android_threads?rev=1760467980&amp;do=diff</link>
        <description>Threads en Android

Aclarirem certs conceptes de threading aplicats a Android, en particular per a les comunicacions REST HTTP.



Referències:

	*  Android
	*  Android Comunicacions
	*  Android ListView

dam dammp08 dammp08uf01 dammp08uf1 dammp08uf02 dammp08uf2 dammp09 dammp09uf02 dammp09uf2 android threads mobile java kotlin

Conceptes previs

El mes important treballant amb threads en Android és saber que:

	*</description>
    </item>
    <item rdf:about="https://bytes.cat/materialize?rev=1764186935&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-26T19:55:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>materialize</title>
        <link>https://bytes.cat/materialize?rev=1764186935&amp;do=diff</link>
        <description>Materialize CSS

Materialize CSS és un framework per treballar interfícies en HTML, CSS i JavaScript implementant els criteris Material Design de Google.

Estava dirigit a ser «agnòstic» respecte als frameworks de JavaScript, però molts dels gadgets i eines que té necessiten de</description>
    </item>
    <item rdf:about="https://bytes.cat/unity_ar?rev=1666186535&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-10-19T13:35:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>unity_ar</title>
        <link>https://bytes.cat/unity_ar?rev=1666186535&amp;do=diff</link>
        <description>Realitat Augmentada amb Unity

La Realitat Augmentada, en el contexte d'aplicacions mòbils, són aquelles aplicacions que afegeixen informació digital a la realitat física que captura la càmera del nostre dispositiu mòbil.

Per altra banda, Unity</description>
    </item>
    <item rdf:about="https://bytes.cat/docker_swarm_stacks?rev=1750354189&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-19T17:29:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker_swarm_stacks</title>
        <link>https://bytes.cat/docker_swarm_stacks?rev=1750354189&amp;do=diff</link>
        <description>Docker Swarm: treballant amb stacks

Prerequisits: conèixer Docker i Docker Swarm.

Els stacks son arxius de configuració de serveis per a Docker Swarm, amb la mateixa sintaxi que el docker-compose però amb alguns paràmetres afegits, en particular a través de l'etiqueta</description>
    </item>
    <item rdf:about="https://bytes.cat/android?rev=1759159868&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-29T15:31:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android</title>
        <link>https://bytes.cat/android?rev=1759159868&amp;do=diff</link>
        <description>Android

Android és un sistema operatiu per a dispositius mòbils impulsat per Google. Està basat en Linux, però conté també mòduls privatius.



Referències:

	*  Apunts de MP08 de DAM del IOC.

dam dammp08 dammp08uf1 dammp08uf01 dammp08uf2 android mobile java

Altres articles d'Android a aquesta web




Desenvolupament Android

Hi ha diverses opcions per desenvolupar per a Android, fem un breu resum de les més habituals:</description>
    </item>
    <item rdf:about="https://bytes.cat/android_comunicacions?rev=1761581767&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-27T16:16:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_comunicacions</title>
        <link>https://bytes.cat/android_comunicacions?rev=1761581767&amp;do=diff</link>
        <description>Comunicacions en Android



Referències:

	*  Android: article general d'Android
	*  Android Threads: s'hi treballa connexions REST HTTP
	*  Android ListView

dam dammp08 dammp08uf01 dammp08uf1 dammp08uf02 dammp08uf2 dammp09 dammp09uf02 dammp09uf2 android threads mobile java kotlin

Comunicacions REST HTTP

Les comunicacions de les APIs habituals es solen fer amb HTTP/HTTPS. El problema habitual sol ser que aquestes crides de xarxa bloquegen el fil d'execució fins que es reben les dades. Això no…</description>
    </item>
    <item rdf:about="https://bytes.cat/android_listview?rev=1761578715&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-27T15:25:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_listview</title>
        <link>https://bytes.cat/android_listview?rev=1761578715&amp;do=diff</link>
        <description>Aquest article segueix del principal Android en aquesta wiki.

	*  ListView és un widget obsolet.
	*  Es manté per backward compatibility.
	*  Widget recomanat actual: Android RecyclerView (però més complicat d'utilitzar).

Referències:

	*  Article Android en aquesta wiki.
	*</description>
    </item>
    <item rdf:about="https://bytes.cat/android_recyclerview?rev=1767203282&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-31T17:48:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_recyclerview</title>
        <link>https://bytes.cat/android_recyclerview?rev=1767203282&amp;do=diff</link>
        <description>Android RecyclerView

RecyclerView és l'objecte adequat per a visualitzar llargues llistes d'objectes en les darreres versions d'Android. Similarment a Android ListVieẉ però amb un funcionament una mica més sofisticat, la idea segueix sent reciclar les «targetes</description>
    </item>
    <item rdf:about="https://bytes.cat/websockets_php?rev=1688582133&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-07-05T18:35:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>websockets_php</title>
        <link>https://bytes.cat/websockets_php?rev=1688582133&amp;do=diff</link>
        <description>Pràctica. Creació d'un laberint amb WebSockets i PHP

Joc online. Apunts.

Video-joc UF4 M7

Ho anirem fent per activitats (etapes) incrementals, que aniran incorporant diferents funcionalitats.

Objectiu: L’objectiu és crear dues aplicacions: un servidor de jocs i un client. El nostre client ha de poder connectar-se (i jugar) sobre la resta de servidors.</description>
    </item>
    <item rdf:about="https://bytes.cat/java_lectura_escriptura_xml?rev=1669308595&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-24T16:49:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>java_lectura_escriptura_xml</title>
        <link>https://bytes.cat/java_lectura_escriptura_xml?rev=1669308595&amp;do=diff</link>
        <description>Lectura i escriptura d'arxius XML a Java

fpinfor dam dammp06 dammp06uf1 dammp06uf01

----------

Arxius XML en Java

En Java, els arxius XML poden tenir un tractament especial, per tal de poder accedir directament a les dades que contenen a través del seu arbre. Els exemples d'aquest document fan referència a un XML tipus:</description>
    </item>
    <item rdf:about="https://bytes.cat/libgdx_viewport?rev=1772755518&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-06T00:05:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>libgdx_viewport</title>
        <link>https://bytes.cat/libgdx_viewport?rev=1772755518&amp;do=diff</link>
        <description>libGDX : Viewport i resolucions

Referències: jocs_libgdx

libGDX és multiplataforma i podrem compilar el mateix codi per a diferents dispositius. És un gran avantatge però ens planteja un problema: la resolució de les pantalles pot ser diferent en cada dispositiu</description>
    </item>
    <item rdf:about="https://bytes.cat/docker-compose?rev=1697567305&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-17T18:28:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker-compose</title>
        <link>https://bytes.cat/docker-compose?rev=1697567305&amp;do=diff</link>
        <description>Docker Compose

Per utilitzar docker-compose cal que abans coneguis a fons Docker.

Referències:

	*  Documentació oficial Docker: &lt;https://docs.docker.com/compose/&gt;
	*  Una bona xuleta o Cheat Sheet de docker-compose

Articles previs:

	*  Docker pres teoria a bytes.cat
	*  Docker pràctiques inicials a bytes.cat

Segueix a:

	*  Docker upgrade de containers
	*  Dockerfile

fpinfor asix ceti ciber cetimp03 cibermp03 devops docker docker_compose compose wordpress

Instal·lació</description>
    </item>
    <item rdf:about="https://bytes.cat/android_bindings?rev=1768834102&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-19T14:48:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_bindings</title>
        <link>https://bytes.cat/android_bindings?rev=1768834102&amp;do=diff</link>
        <description>Android Bindings

ViewBindings és un mecanisme que facilita l'accés a les views des del codi de l'app Android.

Referències:

	*  View Binding.
	*  Vinculación de vista (en castellà).

dam dammp08 dammp08uf2 dammp08uf02 dammp08uf2 android mobile java kotlin




Objectiu i exemple

La idea dels view bindings és substituir les crides amb dynamic cast que poden retornar un valor erroni i resultar en excepcions tiupus</description>
    </item>
    <item rdf:about="https://bytes.cat/python_web_test?rev=1670958966&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-13T19:16:06+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>python_web_test</title>
        <link>https://bytes.cat/python_web_test?rev=1670958966&amp;do=diff</link>
        <description>Python web test amb Pytest

[By Holger Krekel - https://pypi.org/project/pytest/, CC BY 2.5, https://commons.wikimedia.org/w/index.php?curid=116199948 ]

Referències:

	*  Continua de Python Web , cal conèixer Flask
	*  Necessitaràs Python venv

daw dawmpdual dawmpproj dawmp07uf1 dawmp07uf02 dawmp07uf03 dawmp07uf04 dawmp07uf1 dawmp07uf02 dawmp07uf03 dawmp07uf04 ciber cibermp03 ceti cetimp03 python web flask test testing pytest




Per poder seguir els exemples d'aquesta pàgina cal que abans hagi…</description>
    </item>
    <item rdf:about="https://bytes.cat/django_heroku?rev=1646677859&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-03-07T18:30:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_heroku</title>
        <link>https://bytes.cat/django_heroku?rev=1646677859&amp;do=diff</link>
        <description>Desplegament de Django en Heroku

Heroku és un sistema de PaaS o Platform as a Service que ens permet posar en producció aplicacions sense necessitat de mantenir la virtualització, el sistema operatiu o la instal·lació de la base de dades.



fpinfor daw dawmp08 dawmp08uf2 dawmp08uf02 heroku iaas paas saas django web framework



Preparant el nostre projecte Django per a deplegament a Heroku</description>
    </item>
    <item rdf:about="https://bytes.cat/django_react_produccio?rev=1776180919&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-14T15:35:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_react_produccio</title>
        <link>https://bytes.cat/django_react_produccio?rev=1776180919&amp;do=diff</link>
        <description>Posada en producció d'un projecte Django + ReactJS

Aquest article continua de Django React. Posarem en producció el projecte creat en aquell article.

Hi ha diverses eines per a poder realitzar aquest desplegament. Les opcions més habituals son:

	*  Apache2 amb el plugin</description>
    </item>
    <item rdf:about="https://bytes.cat/android_fragments?rev=1736299192&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-01-08T01:19:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_fragments</title>
        <link>https://bytes.cat/android_fragments?rev=1736299192&amp;do=diff</link>
        <description>Android Fragments

Els Fragment ens permetran disposar de diverses Activity alhora en la mateixa pantalla, a mode de pestanyes. Podrem navegar amb una NavigationBar que acostuma a tenir disposicions diferents segons la grandària i orientació de la pantalla, o del tipus de dispositiu.</description>
    </item>
    <item rdf:about="https://bytes.cat/android_sensors?rev=1736792918&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-01-13T18:28:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_sensors</title>
        <link>https://bytes.cat/android_sensors?rev=1736792918&amp;do=diff</link>
        <description>Sensors de moviment d'Android



Referències:

	*  Doc oficial: sensors de moviment en Android.
	*  Com detectar sacsejos amb l'acceleròmetre.
	*  Kotlin en aquesta wiki.

dam dammp08 dammp08uf2 dammp08uf02 android mobile java kotlin sensors accelerometre accelerometer




Sensors

Quan parlem de «sensors» en Android solem referir-nos als de moviment: l'acceleròmetre i el giroscopi (brúixola 3D).

També son sensors (però no de moviment) la càmera, el micro, la pantalla tàctil i el GPS.</description>
    </item>
    <item rdf:about="https://bytes.cat/opendata_pandas?rev=1688513026&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-07-04T23:23:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>opendata_pandas</title>
        <link>https://bytes.cat/opendata_pandas?rev=1688513026&amp;do=diff</link>
        <description>Extracció de dades obertes amb la llibreria de Python Pandas.

fpinfor dawmp07 dawbiomp07 flask django pandas python

Objectiu

En aquesta guia veurem com obtenir dades obertes d'un servei web i guardar-les, per tal d'utilitzar-les a la nostra aplicació. Aquesta tècnica es coneix com a web scrapping.</description>
    </item>
    <item rdf:about="https://bytes.cat/java_sqlite?rev=1669227500&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-23T18:18:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>java_sqlite</title>
        <link>https://bytes.cat/java_sqlite?rev=1669227500&amp;do=diff</link>
        <description>SQLite a Java

fpinfor dam dammp06 dammp06uf2 dammp06uf02

----------

Exemples



Accés a Bases de Dades, JDBC

JDBC (Java Database Connectivity) és l’API bàsica de Java per accedir a Bases de Dades

- És fàcil de fer servir

- Pot connectar amb casi totes les bases de dades del mercat</description>
    </item>
    <item rdf:about="https://bytes.cat/vagrant?rev=1761145201&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-22T15:00:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>vagrant</title>
        <link>https://bytes.cat/vagrant?rev=1761145201&amp;do=diff</link>
        <description>Vagrant

Vagrant és una eina de codi lliure desenvolupada per HashiCorp per automatitzar la creació i gestió de màquines virtuals. La podriem classificar dins les eines de DevOps conegudes com a Infraestructure as Code. Vagrant no és un virtualitzador, només automatitza tasques de forma programàtica, pel què necessita que tinguem instal·lat algun</description>
    </item>
    <item rdf:about="https://bytes.cat/git_exemple_de_conflicte?rev=1711649395&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-28T18:09:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>git_exemple_de_conflicte</title>
        <link>https://bytes.cat/git_exemple_de_conflicte?rev=1711649395&amp;do=diff</link>
        <description>Git: Exemple de conflicte

Els conflictes de versions es donen quan dos desenvolupadors han modificat la mateixa línia (o línies) de codi. Forçarem un senzill exemple de conflicte que Git detectarà, simulant el treball de dos developers en branques diferents. Partirem d'un simple arxiu</description>
    </item>
    <item rdf:about="https://bytes.cat/ansible?rev=1717059372&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-05-30T08:56:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ansible</title>
        <link>https://bytes.cat/ansible?rev=1717059372&amp;do=diff</link>
        <description>Ansible: eina d'orquestració

Ansible és un sistema d'orquestració lliure, escrit en Python, que ens permet automatitzar la configuració d’una màquina d’una forma senzilla.

Ansible automatitza la gestió de sistemes remots i controla el seu estat desitjat.</description>
    </item>
    <item rdf:about="https://bytes.cat/android_sudoku?rev=1666617554&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-10-24T13:19:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_sudoku</title>
        <link>https://bytes.cat/android_sudoku?rev=1666617554&amp;do=diff</link>
        <description>Sudoku en Android

Guia per desenvolupar un joc de Sudoku en Android.



Els principals objectius son:

	*  Conèixer la creació d'elements gràfics de forma programàtica.
	*  Conèixer l'element Spinner (dropdown).
	*  Manipular els elements gràfics.
	*</description>
    </item>
    <item rdf:about="https://bytes.cat/docker_swarm?rev=1668539316&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-15T19:08:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>docker_swarm</title>
        <link>https://bytes.cat/docker_swarm?rev=1668539316&amp;do=diff</link>
        <description>Docker Swarm és el què es coneix com un orquestrador de contenidors, a l'igual que Kubernetes, només que aquest darrer és més potent (i més complicat). Els orquestradors ens permeten gestionar les instàncies de contenidors distribuïdes en diverses màquines físiques (o virtuals), pel què</description>
    </item>
    <item rdf:about="https://bytes.cat/wacom_ubuntu?rev=1632908400&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-09-29T09:40:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>wacom_ubuntu</title>
        <link>https://bytes.cat/wacom_ubuntu?rev=1632908400&amp;do=diff</link>
        <description>Configurar tauleta gràfica Wacom en Ubuntu


La tauleta gràfica (les més conegudes son les Wacom però hi ha altres marques) pot ser una eina molt útil per a impartir classes telemàtiques o simplement gravar vídeos. Ens permet escriure i dibuixar sobre la pantalla del PC i això ajuda a complementar les possibles explicacions que puguem fer amb dibuixos, esquemes i també assenyalar parts de la pantalla que ens interessi destacar.</description>
    </item>
    <item rdf:about="https://bytes.cat/jenkins_django?rev=1642407715&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-17T08:21:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>jenkins_django</title>
        <link>https://bytes.cat/jenkins_django?rev=1642407715&amp;do=diff</link>
        <description>CI/CD amb Jenkins, Django i Selenium

En el context de DevOps, els sistemes de CI/CD han esdevingut molt importants per evitar-nos de fer tasques repetitives de testeig d'aplicacions que necessiten una revisió i actualització constant.

&lt;https://jenkins.io&gt; és probablement el software d'automatització de testeig més popular. El provarem juntament amb un projecte web fet amb Django (conegut com</description>
    </item>
    <item rdf:about="https://bytes.cat/nodejs_railway?rev=1669228241&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-23T18:30:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>nodejs_railway</title>
        <link>https://bytes.cat/nodejs_railway?rev=1669228241&amp;do=diff</link>
        <description>Desplegament d'aplicacions NodeJS amb Railway.app

&lt;https://railway.app&gt; és un PaaS (Platform as a Service), una plataforma de desplegament d'aplicacions similar a &lt;https://heroku.com&gt;. Aquest ha estat el referent durant molts anys però a finals de 2022 ha abandonat la seva política de permetre aplicacions gratuïtes expulsant a molts desenvolupadors novells que cerquen alternatives com aquesta.</description>
    </item>
    <item rdf:about="https://bytes.cat/dockeritzacio_aplicacions_php?rev=1657798286&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-14T11:31:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dockeritzacio_aplicacions_php</title>
        <link>https://bytes.cat/dockeritzacio_aplicacions_php?rev=1657798286&amp;do=diff</link>
        <description>Dockerització d'aplicacions PHP amb connexió a BBDD

fpinfor ciber cibermp03 ceti php mysql docker symfony laravel

Requeriments previs

Per seguir bé aquest article cal tenir coneixements de Docker pràctic i Docker Compose i s'ha de tenir instal·lat al sistema docker i docker-compose

Referències

	*  Tutorial base d'aquest article: Create your first PHP/MySQL application in docker
	*  Documentació de Docker -</description>
    </item>
    <item rdf:about="https://bytes.cat/dockeritzacio_aplicacions_symfony?rev=1657413603&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-10T00:40:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dockeritzacio_aplicacions_symfony</title>
        <link>https://bytes.cat/dockeritzacio_aplicacions_symfony?rev=1657413603&amp;do=diff</link>
        <description>Dockerització d'aplicacions Symfony

Docker ens permet simplificar la construcció d'un entorn de desenvolupament igual per a tots els membres del nostre equip. A més, ens permet tenir diferents versions de les mateixes eines coexistint en la mateixa màquina i sense conflictes entre elles.</description>
    </item>
    <item rdf:about="https://bytes.cat/libgdx_stage?rev=1775662964&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-08T15:42:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>libgdx_stage</title>
        <link>https://bytes.cat/libgdx_stage?rev=1775662964&amp;do=diff</link>
        <description>libGDX: widgets clàssics

libGDX treballa principalment amb l'objecte SpriteBatch renderitzant bitmaps. Però disposa també d'alguns widgets «clàssics» com Button , TextView , etc. No són el cas d'ús més habitual, però per facilitar la seva creació existeix la</description>
    </item>
    <item rdf:about="https://bytes.cat/introduccio_javascript?rev=1701648305&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-04T00:05:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>introduccio_javascript</title>
        <link>https://bytes.cat/introduccio_javascript?rev=1701648305&amp;do=diff</link>
        <description>Introducció a Javascript

Javascript és el llenguatge més popular a internet. Javascript es va dissenyar per a fer-se servir dins els navegador i enriquir els documents HTML, fins al punt de permetre crear aplicacions en el propi browser. Progressivament han anat apareixent implementacions en altres àmbits fora del navegador, la més destacable és com servidor web amb</description>
    </item>
    <item rdf:about="https://bytes.cat/django_railway?rev=1683900325&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-12T14:05:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_railway</title>
        <link>https://bytes.cat/django_railway?rev=1683900325&amp;do=diff</link>
        <description>Django en producció a Railway.app

Railway.app és un PaaS similar a Heroku o altres que ens facilita la posada en producció d'aplicacions web.

Per posar en producció un app Django, però, el procés és un xic més complex que amb altres frameworks.</description>
    </item>
    <item rdf:about="https://bytes.cat/iot_django_aproximacio_un_dashboard_sobre_raspberry_pi?rev=1687674964&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-25T06:36:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>iot_django_aproximacio_un_dashboard_sobre_raspberry_pi</title>
        <link>https://bytes.cat/iot_django_aproximacio_un_dashboard_sobre_raspberry_pi?rev=1687674964&amp;do=diff</link>
        <description>IoT i Django: aproximació a un dashboard sobre Raspberry Pi

Introducció

Una de les necessitats que sovint es presenten en els projectes d'àmbit IoT (Internet of Things) és la gestió de les dades que es capturen amb multitud de dispositius connectats. Com a gestió, entenem el seu emmagatzematge, el seu accés, la seva visualització, etc.</description>
    </item>
    <item rdf:about="https://bytes.cat/django_ninja?rev=1775750465&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-09T16:01:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_ninja</title>
        <link>https://bytes.cat/django_ninja?rev=1775750465&amp;do=diff</link>
        <description>APIs amb Django Ninja

Django Ninja és una llibreria per a fer APIs alternativa a la clàssica Django REST Framework (que podeu veure a l'article Django API) i fortament inspirada en la molt adoptada recentment FastAPI.

El principal avantatge és certa simplicitat per crear els endpoints.</description>
    </item>
    <item rdf:about="https://bytes.cat/react_native?rev=1772818457&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-03-06T17:34:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>react_native</title>
        <link>https://bytes.cat/react_native?rev=1772818457&amp;do=diff</link>
        <description>React Native

React és un framework per a JavaScript molt popular desenvolupat per Facebook/Meta.

React Native son unes llibreries per poder desenvolupar aplicacions multiplataforma. A diferència de Cordova que executa el codi Javascript a l'arxiu executable final, React Native traudeix als diferents llenguatges nadius de les plataformes objectiu, en particular Android i iOS.</description>
    </item>
    <item rdf:about="https://bytes.cat/esp32?rev=1769369383&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-01-25T19:29:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>esp32</title>
        <link>https://bytes.cat/esp32?rev=1769369383&amp;do=diff</link>
        <description>Placa de desenvolupament ESP32

El xip ESP32 de Espressif és molt popular per a integrar en dispositius IoT i sistemes «embedded» (incrustats o embeguts). Disposa de funcions de comunicacions necessàries com Wifi, Bluetooth, BLE (Bluetooth Low Emission), NFC i una capacitat de còmput moderada. I se li poden connectar dispositius com càmeres o d'altres.</description>
    </item>
    <item rdf:about="https://bytes.cat/cordova?rev=1764870770&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-12-04T17:52:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>cordova</title>
        <link>https://bytes.cat/cordova?rev=1764870770&amp;do=diff</link>
        <description>Cordova

Apache Cordova (inicialment PhoneGap) son unes llibreries per al desenvolupament d'apps mòbils utilitzant JavaScript, HTML i CSS. La principal avantatge és que permet utilitzar un llenguatge web genèric (JS) i compilar l'app per a diverses plataformes diferents, d'entre les que destaquem les majoritàries</description>
    </item>
    <item rdf:about="https://bytes.cat/pdo?rev=1764339679&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-28T14:21:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pdo</title>
        <link>https://bytes.cat/pdo?rev=1764339679&amp;do=diff</link>
        <description>PDO: PHP Database Objects

Introducció

Les biblioteques de codi PDO o PHP Database Objects (doc oficial) tenen el gran avantatge que ens permet canviar de tipus de BD a la que ens connectem sense alterar les funcions de connexió i llançament de queries. Les (petites) diferències entre unes i altres en el llenguatge SQL no ho solventa, però no és gaire problema ja que aquestes diferències solen ser poques.</description>
    </item>
    <item rdf:about="https://bytes.cat/android_canvas?rev=1762825983&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-11T01:53:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_canvas</title>
        <link>https://bytes.cat/android_canvas?rev=1762825983&amp;do=diff</link>
        <description>Android Canvas : Views Personalitzades



Article de referència: Android

En aquest article veiem com crear una View o widget personalitzat, dibuixant directament sobre ell amb l'objecte Canvas.

dam dammp08 dammp08uf1 dammp08uf01 dammp08uf2 android mobile kotlin




Crear una nova View

Ves a la carpeta amb els arxius de codi Kotlin/Java i clica amb el botó dret o vés a:</description>
    </item>
    <item rdf:about="https://bytes.cat/jquery?rev=1759426021&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-02T17:27:01+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>jquery</title>
        <link>https://bytes.cat/jquery?rev=1759426021&amp;do=diff</link>
        <description>jQuery : facilitant el DOM de Javascript

jQuery son unes llibreries per a Javascript molt útils per facilitar el codi d'accés al DOM o Document-Object Model, fent-lo molt més curt, senzill i llegible.

Com a framework de client potser s'ha vist superat pels més novedosos React, VueJS, AngularJS, etc. però val a dir que aquests tenen una corba d'aprenentatge molt més pronunciada. En canvi, iniciar-se a jQuery és ràpid i agraït.</description>
    </item>
    <item rdf:about="https://bytes.cat/python_venv?rev=1746691466&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-05-08T08:04:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>python_venv</title>
        <link>https://bytes.cat/python_venv?rev=1746691466&amp;do=diff</link>
        <description>Les eines de virtual environment per a Python es fan servir per a aïllar cada aplicació (i les seves llibreries i dependències) del sistema operatiu i de les altres aplicacions.






	*  Desenvolupar o posar en producció aplicacions en Python requereix diferents llibreries per cada projecte</description>
    </item>
    <item rdf:about="https://bytes.cat/php_mysql?rev=1731680892&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-15T14:28:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>php_mysql</title>
        <link>https://bytes.cat/php_mysql?rev=1731680892&amp;do=diff</link>
        <description>Utilitzant PHP amb MySQL

Per accedir a bases de dades des de PHP tenim bàsicament dos tipus de llibreries:

	*  Llibreries particulars de cada BD: solen tenir funcions amb el nom de la BD com a prefix:
		*  MySQL (lib mysqli_XXX) : mysqli_connect, etc.</description>
    </item>
    <item rdf:about="https://bytes.cat/django_mongo?rev=1718643442&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-06-17T16:57:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>django_mongo</title>
        <link>https://bytes.cat/django_mongo?rev=1718643442&amp;do=diff</link>
        <description>Django amb MongoDB

En aquest article provarem de veure quines opcions tenim per treballar amb Django i la BD basada en documents: MongoDB. La informació està extreta de diversos tutorials, articles i materials multimèdia trobats a motors de cerca fins a la data d'avui (23-06-2023). És probable i desitjable (com veureu) que hi hagi millores a partir d'aquesta data sobre aquest tema.</description>
    </item>
    <item rdf:about="https://bytes.cat/java_cmd?rev=1697734458&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-19T16:54:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>java_cmd</title>
        <link>https://bytes.cat/java_cmd?rev=1697734458&amp;do=diff</link>
        <description>Execució de comandes del sistema operatiu des de Java

Des de Java podem executar comandes en un subprocess en  la shell del sistema operatiu.

Referències:

	*  ...TODO...

fpinfor dam dawmp03 dammp03 dammp06 dammp07 dammp09 java

Codi d'exemple

Donem un timout de 5 segons perquè la comanda s'executi, després la matem si encara no ha acabat (a l'exemple justament hem posat una comanda</description>
    </item>
    <item rdf:about="https://bytes.cat/dam_mp07_uf1_ft03?rev=1694007022&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-09-06T13:30:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dam_mp07_uf1_ft03</title>
        <link>https://bytes.cat/dam_mp07_uf1_ft03?rev=1694007022&amp;do=diff</link>
        <description>Carpeta d'assets

Carpeta de projecte</description>
    </item>
    <item rdf:about="https://bytes.cat/email_linux_docker?rev=1688133187&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-30T13:53:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>email_linux_docker</title>
        <link>https://bytes.cat/email_linux_docker?rev=1688133187&amp;do=diff</link>
        <description>Email Linux amb Docker

El servei de correu electrònic és força complexe ja que es composa de diversos processos o daemons. A part del típic servei de MTA (postfix, sendmail, etc.) ens cal també un servei de Fetchmail (Courier, Dovecot), antivirus, anti-spam, etc., a part de configurar els certificats i modes d'autenticació encriptada.</description>
    </item>
    <item rdf:about="https://bytes.cat/entorn_grafic_docker?rev=1687958620&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-28T13:23:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>entorn_grafic_docker</title>
        <link>https://bytes.cat/entorn_grafic_docker?rev=1687958620&amp;do=diff</link>
        <description>Entorn gràfic a Docker

docker grafic fpinfor ciber cibermp03 ceti cetimp03

	*  És possible arrencar aplicacions amb entorn gràfic amb docker. 
	*  Per fer-ho, es necessiten 2 passes:

1. Utilitzar la variable $DiSPLAY que et mostra el display actiu del host i compartir-lo al contenidor mitjançant la variable d'entorn DISPLAY
2. Compartir el directoris de l'xserver  al contenidor mitjançant un volum</description>
    </item>
    <item rdf:about="https://bytes.cat/wordpress?rev=1687846199&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-27T06:09:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>wordpress</title>
        <link>https://bytes.cat/wordpress?rev=1687846199&amp;do=diff</link>
        <description>wordpress programacio php formularis

Com programar un formulari a wordpress personalitzant el comportament programant en PHP

	*  Hem de tenir configurat el wordpress per accedir a les entrades a traves del nom de l’entrada, per fer-ho hem d’entrar a l’apartat enllaços permanents dins de l’apartat options.</description>
    </item>
    <item rdf:about="https://bytes.cat/android_test?rev=1714436416&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-04-30T00:20:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>android_test</title>
        <link>https://bytes.cat/android_test?rev=1714436416&amp;do=diff</link>
        <description>Tests funcionals amb Android

Emprarem la llibreria &lt;https://appium.io&gt;

Podrem fer tests funcionals de forma molt similar a com utilitzem Selenium per a web.



Articles previs:

	*  Android

dam dammp08 dammp08uf1 dammp08uf01 dammp08uf2 dammp08uf02 ciber ceti cetimp03 android mobile java




Android Studio

Android Studio és l'eina oficial que Google recomana per a desenvolupa en Android.</description>
    </item>
    <item rdf:about="https://bytes.cat/cordova_install?rev=1726676098&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-18T16:14:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>cordova_install</title>
        <link>https://bytes.cat/cordova_install?rev=1726676098&amp;do=diff</link>
        <description>Cordova: instal·lació

Ve de l'article general Cordova.

Aquí s'especifiquen detalls de la instal·lació.



dam dammp08 dammpdual dawmpdual android ios cordova html javascript

Introducció i requisits

Per poder seguir aquest article se suposa que has de tenir coneixements de JavaScript, HTML i CSS.

Si tens coneixements molt bàsics també t'interessaria</description>
    </item>
    <item rdf:about="https://bytes.cat/passwords_gnu_linux?rev=1642360071&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-16T19:07:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>passwords_gnu_linux</title>
        <link>https://bytes.cat/passwords_gnu_linux?rev=1642360071&amp;do=diff</link>
        <description>shadow passwd bash fpinfor daw dawmp01 dawmp01uf1 dawmp01uf01 dam dammp01 dammp01uf1 dammp01uf01 asix asixmp01 asixmp01uf1 smx smxmp02 smxmp04

Paraules de pas a GNU/Linux

Actualment, els passwords en els sistemes GNU/Linux es guarden encriptats en el fitxer /etc/shadow

Com sempre, a la wikipedia (en anglès) hi podeu trobar molta informació molt detallada: &lt;https://en.wikipedia.org/wiki/Passwd#Shadow_file&gt;

Abans de seguir s'ha de tenir clar que el camí més senzill per un usuari per canviar la…</description>
    </item>
    <item rdf:about="https://bytes.cat/apache2_en_debian_ubuntu?rev=1636998347&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-15T17:45:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>apache2_en_debian_ubuntu</title>
        <link>https://bytes.cat/apache2_en_debian_ubuntu?rev=1636998347&amp;do=diff</link>
        <description>Apache2 en Debian / Ubuntu

Apache2 és el servidor web més conegut, juntament a lighttpd o Nginx.



apache webserver servidorweb www web http https serveis fpinfor daw dawmp08 dawmp08uf01 asix asixmp08 asixmp08uf02 smx smxmp07 smxmp07uf03

Instal·lació

Podem instal·lar Apache2 directament en la nostra distribució Linux amb:
$ sudo apt-get install apache2
Amb el què immediatament podem veure si funciona accedint a la web:</description>
    </item>
</rdf:RDF>
