13 Nov

¡A programar! 1- El teu primer programa

Això ja comença a ser malaltís…Quart curs d’Scratch en 2 mesos…El primer, #MoocBot; el segon, “Pensamiento computacional en la escuela”; el tercer, #UOCScratch (en curs) i, ara, el quart, “¡A programar! Introducción a la programación”. Comença d’aquí quinze dies i està conduït per dues dones: Inés Friss de Kereki, de la Universidad ORT Uruguay dóna la versió castellana i Areti Manakati, de la Universitat d’Edimburg dóna l’anglesa.

Resulta que el curs comença el 30 de novembre però et deixen accedir als continguts de la primera setmana. I no me n’he pogut estar…A la presentació, a més de donar la benvinguda, es justifica el curs. Resumint, sempre és millor programar que ser programat…Un curs més de divulgació del pensament computacional a través d’Scratch. I jo encantada de la vida que m’hi apunto (tot i que patrocini un “banco malo”).

Anem per feina: en aquesta primera unitat ja crearem el nostre primer programa. Ens aproparem als conceptes bàsics de la programació i als principals elements d’Scratch. Tractarem algoritmes, seqüències, decisions (if-then), iteració (forever), desenvolupament incremental de programes, proves simples de programes i l’interfície d’Scratch, a més dels blocs de moviment, aparença i les coordenades de l’escenari. Som-hi!

¿QUÈ ÉS UN ALGORITME? ESTRUCTURES DE CONTROL. SEQÜÈNCIA

Per tal d’apropar conceptes que semblen llunyans, se’ns presenten exemples de coses que les persones que no sabem de programació no prendriem com a algoritmes. Però ho són. Perquè un algoritme, “simplement”, és un conjunt d’instruccions endreçades que permeten dur a terme alguna tasca concreta. Una tasca que pot ser: donar una direcció a algú perquè arribi a algun lloc, lligar-se els cordons de les sabates, fer un entrepà o canviar una bombeta…

  1. Si es fon una bombeta, haurem d’anar-ne a buscar una.
  2. Apagarem el contacte amb l’electricitat per no prendre mal.
  3. Farem les repeticions necessàries en el sentit contrari a les agulles del rellotge per a descargolar la bombeta fosa.
  4. Llençarem la bombeta fosa a la brossa.
  5. Farem les repeticions necessàries en el sentit de les agulles del rellotge per a cargolar la bombeta nova.
  6. Encendre el contacte i…tachán algoritme!

A programar1_bombilla

Com veiem, es tracta d’un procés pas a pas o algoritme, d’una seqüència d’instruccions en ordre on utilitzem una decisió (si em falta recanvi). A més, hi ha repeticions a descargolar i cargolar. A les repeticions també se’ls hi diu iteracions. La seqüència, la decisió i la iteració són estructures de control i amb elles construim els programes.

REPRESENTACIÓ D’ALGORITMES

De vegades, hi ha més d’una solució a un problema. Per exemple, donar una direcció a algú. Suposem que tenim aquest mapa i que algú vol anar de l’hotel a l’estació de tren.

Primera opció:

  1. Enfocar a oest
  2. Caminar un carrer
  3. Enfocar a nord
  4. Caminar dos carrers

Segona opció:

  1. Enfocar a nord
  2. Caminar dos carrers
  3. Enfocar a oest
  4. Caminar un carrer

Com veiem, les dades de l’algoritme es poden mostrar de diferent manera: en un mapa o com a text, en un diagrama de flux o en codi de computació.

A programar_direcciones

PRECISIÓ I SUPOSICIONS

Altres casos d’algoritmes serien: creuar un carrer, posar-se una camisa, sumar dos números de tres dígits cadascun o explicar-li a un alien com respallar-se les dents. En cada cas, hem de reflexionar sobre les suposicions que fem. Abans de crear un algoritme per creuar el carrer, per exemple, què donem per suposat en la regulació del trànsit? Es circula per la dreta o per l’esquerra? D’on vénen els vehicles? I si li volem ensenyar a un alien a respallar-se les dents. No és que estigui sonada la profe és que l’alien és la mascoteta del curs, aquesta del logo que té tres ulls i és de color verd. Es diu Codi (o Cody o Codie….)

Després d’analitzar el problema i fer qualsevol suposició necessària o hipòtesi, podem seguir endavant i començar a definir com seran aquestes tasques que desenvolupa l’algoritme: les intruccions han de ser clares y precises.

QUÈ ÉS SCRATCH? EXEMPLES: POSTAL ANIMADA I JOC FLAPPY BIRD

Scratch és un llenguatge de programació, una forma de comunicar-nos amb l’ordinador. Amb Scratch podem crear jocs i animacions. Desenvolupada pel MIT al 2007, l’eina és gratuïta i es pot fer servir on i offline. La comunitat d’Scratch i l’editor gràfic són molt potents.

Se’ns presenta un primer exemple, una postal d’aniversari, animada i interactiva:

 

Per l’exemple del joc, se’ns mostra un Flappy Bird fet amb Scratch. Hi ha molts altres jocs però jo tinc una mena de predilecció pels retro, sobretot el Pong…M’encanta fer-ne versions.

 

COMENÇAR AMB SCRATCH

Per començar a crear els nostres projectes el primer que hem de fer és crear un usuari a la comunitat Scratch. Aquí deixo el tutorial d’en Pau Fernández per CodeClubCat, que està en català. Passes bàsiques a seguir per crear un usuari:

  1. Anar a l’adreça d’Scratch
  2. Seguir les passes que s’indiquen en la creació del nou usuari

Necessitarem:

  • Un compte de correu electrònic
  • Un nom d’usuari que estigui disponible
  • Una contrasenya que sigui fàcil de memoritzar!!!

Per conèixer millor con funciona l’editor d’Scratch recomano també el tutorial d’en Pau Fernández: ho explica molt rebé. I fins aquí el tastet d’aquesta primera setmana d’avançament. Recordar que el curs comença realment el 30 de novembre.

Actualització 4 d’abril de 2016: resulta que vaig fer el curs…Quina decepció…Els vídeos i les explicacions estaven molt bé, la veritat. I si tinc temps, ampliaré les entrades d’aquesta categoria. Ara, el que em frena o postposa l’ampliació és el fet que, només arrencar el curs, es demanava com a exercici, una animació i jo, que a més estava tristota, em vaig programar un acudit d’aquests de “Se abre el telón”. Endevina la peli! :)

Em va sorprendre que no es treballés online…Ens feien programar a la nostra màquina i després, passar els arxius a través de la plataforma del MOOC, en aquest cas, Coursera. Participo poc als fòrums dels cursos perquè els trobo molt sorollosos…

Tot i així, em feia il·lusió compartir la meva animació interactiva (un acudit d’aquests del Teló) amb la resta dels participants del curs i vaig penjar la URL del projecte al fòrum. Quina va ser la meva sorpresa quan em van banejar el comentari i el link perquè el codi d’honor del curs no permetia compartir els exercicis dels participants públicament.

I em vaig queixar argumentant que era incongruent fer ús d’una comunitat i d’una eina que, justament, estan dissenyades per a compartir. En fi, que això passa quan es malinterpreta la tecnologia… Al MOOC aquest només alimentaven el hype sense donar cap mena d’importància al que hauria de ser l’objectiu final del curs: aprendre compartint.

Conclusió: no crec que torni a fer cap MOOC a Coursera. M’adono que la plataforma i les Universitats participants només pretenen que les persones que ens enregistrem paguem els certificats…Coses del Capitalisme 2.0…

Fi de l’actualització del 4 d’abril de 2016.

Actualització del 14 d’abril de 2017: Amb l’escalforeta de l’entrada em vaig oblidar de dir que, pel curs, vaig crear un joc: “Lost Soul”. Aviso que té molts clons i es ralentitza. Aquí el deixo, clica la imatge per accedir al joc: recorda que Scratch 2.0 requereix Flash. Fi de l’actualització del 14 d’abril de 2017

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *