Salta el contingut

Superset davant de Power BI, i storytelling amb dades

Exercici comparison-and-storytelling-annex.pdf · PDF

Tres amics han passat dos anys fent un joc. Estan a punt de llançar-lo a Steam, i et fan una pregunta senzilla a tu, el que "en sap de dades": hauríem de fer-ho, i a quin preu?

Obres el teu quadre de comandament (dashboard) Steam market i gires la pantalla cap a ells. Quatre KPI, una línia, unes quantes barres, dos filtres. El miren deu segons. Llavors un d'ells diu: "Val... i què fem?"

El teu quadre de comandament és correcte. Tots els números que hi surten són certs. I no ha respost la pregunta. Aquesta última lliçó va d'aquest buit: primer compares les dues eines que ja coneixes, i després aprens l'habilitat per a la qual cap de les dues eines té un botó: dir què signifiquen les dades per a la persona que tens al davant.

Què aprendràs

  • Comparar Superset i Power BI en cinc punts: llicència, model de dades, on s'executen, fonts API i qui les fa servir
  • Explicar per què "quina és millor?" és la pregunta equivocada
  • Distingir una conclusió clau (insight) d'una simple descripció d'un gràfic
  • Escriure una història amb dades de tres parts per a un lector concret: context, insight i acció
  • Anotar un quadre de comandament de Superset amb un titular, un bloc de text i un títol de gràfic que digui la conclusió
  • Indicar un límit honest de les dades al costat de l'afirmació a la qual afecta

Dues eines, una al costat de l'altra

Has construït els mateixos tres gràfics en dues consoles. Ara toca comparar-les bé. Una comparació justa no comença amb "quina és millor". Comença amb les mateixes preguntes fetes a totes dues.

Apache Superset Microsoft Power BI
Qui la fa Un projecte de l'Apache Software Foundation, construït per una comunitat de voluntaris i empreses Microsoft
Llicència Codi obert (open source), sota la Apache License 2.0: gratuïta per usar, canviar i allotjar tu mateix Propietària. Power BI Desktop és una descàrrega gratuïta. Al servei, una llicència gratuïta només cobreix el teu propi espai de treball; compartir necessita una llicència de pagament, per usuari
Model de dades Una capa fina: cada gràfic llegeix un dataset (una taula o una consulta desada) amb les seves mètriques. Els joins s'escriuen en SQL Un model semàntic: diverses taules enllaçades per relacions, amb càlculs escrits en un llenguatge de fórmules anomenat DAX. Un model per informe
On s'executa Una aplicació web en un servidor que algú ha de cuidar. L'uses des de qualsevol navegador. Les dades es queden a la base de dades Power BI Desktop, només a Windows, per construir; el núvol de Microsoft per compartir. Les dades solen estar importades: una còpia viatja dins del fitxer
Una API com a font No directament: representa taules SQL. Primer extreus, aplanes a una taula i la carregues a la base de dades, com vas fer a Datasets i destí Get data → Web llegeix una adreça que respon en JSON i l'hi passa a Power Query, on l'aplanes
Qui tendeix a fer-la servir Equips que saben SQL i gestionen els seus propis servidors Organitzacions que ja són a Microsoft 365; analistes que vénen d'Excel

Dues paraules d'aquesta taula mereixen una definició:

El programari de codi obert (open source) publica el seu codi font sota una llicència que deixa que qualsevol persona l'usi, l'estudiï, el canviï i el comparteixi. El programari propietari pertany a una empresa que es queda el codi i fixa les condicions d'ús.

D'on ve Superset

Superset va començar el 2015 com un projecte d'un hackató de tres dies de Maxime Beauchemin, enginyer a Airbnb. Va entrar a la incubadora de l'Apache Software Foundation el 2017 i va passar a ser un dels seus projectes de primer nivell el gener del 2021. Ningú no te'l ven: el descarregues i l'executes.

Compte: llicència gratuïta no vol dir sense cost

"Superset és gratuït, així que no costa res." La llicència és gratuïta. El servidor on s'executa no ho és, ni tampoc la persona que l'instal·la, l'actualitza i l'arregla a les tres de la matinada. Amb Power BI pagues per usuari i Microsoft cuida les màquines. Totes dues costen diners: simplement envien la factura a llocs diferents.

Una generalització, no una estadística

L'última fila, "qui tendeix a fer-la servir", és una regla empírica, no un fet mesurat. Trobaràs equips de SQL a Power BI i amants d'Excel a Superset.

Aleshores, quina és millor?

Rebutja la pregunta. Millor per a qui?

El lector de la decisió Què té L'eina que hi encaixa
Un ajuntament Llicències de Microsoft per a tothom, cap equip per gestionar servidors, personal que viu a Excel Power BI
Una start-up Una base de dades PostgreSQL, dos desenvolupadors que escriuen SQL, cap pressupost per a llicències Superset

La mateixa pregunta, respostes oposades, totes dues correctes. L'eina segueix el context. Guarda aquesta paraula a la mà: la necessites un altre cop d'aquí a un minut.

Del minimapa a la marca de missió

Tot l'any, aquest mòdul ha estat un videojoc de fabricació (crafting): vas collir els materials, els vas fondre, hi vas fabricar coses, i vas construir el HUD. Un quadre de comandament és el minimapa d'aquest HUD. Ho mostra tot: cada camí, cada enemic, cada cofre.

Ara pensa en un jugador nou deixat en aquell món. El minimapa és complet, exacte i inútil per a ell, perquè no diu on anar. El que necessita és la marca de missió: la fletxeta que diu allà.

El data storytelling és convertir una troballa de les dades en un missatge per a un lector concret: què has trobat, per què li importa i què hauria de fer-hi.

Un quadre de comandament és el minimapa: ho mostra tot. Una història és la marca de missió: diu on anar.

Els teus tres amics van mirar un minimapa perfecte i van demanar la marca.

Compte: les dades no parlen soles

És temptador pensar que un bon quadre de comandament no necessita text. Vas veure a la primera lliçó, Les dades no parlen soles, que això és fals: quatre conjunts de dades amb les mateixes estadístiques dibuixaven quatre imatges completament diferents. Un gràfic mostra. Algú encara ha de dir què significa per a aquest lector. Aquest algú ets tu.

Les tres parts d'una història amb dades

Una història amb dades té tres parts. Cadascuna respon una pregunta:

Part La pregunta que respon Al joc
Context Qui llegeix, i què ha de decidir? Quin jugador, quina missió
Insight Quina és la troballa, amb el seu número, que canvia la decisió? El que mostra el minimapa i que importa per a aquella missió
Acció I doncs, què hauria de fer? La marca: ves-hi
flowchart LR
    C["<b>Context</b><br>qui llegeix, què ha<br>de decidir"] --> I["<b>Insight</b><br>una troballa, amb el seu<br>número i el seu 'i què'"]
    I --> A["<b>Acció</b><br>què fer: comença<br>amb un verb"]
    L["<b>Límit</b><br>el que les dades<br>no et poden dir"] -. "escrit al costat de" .-> I

L'ordre importa, i comença pel lector, no pel gràfic. Aquesta és la primera lliçó d'un dels llibres més coneguts sobre el tema, Storytelling with Data de Cole Nussbaumer Knaflic (Wiley, 2015): abans de dibuixar res, saps qui és el teu públic i què necessites que sàpiga o faci.

Per això també una història per a l'estudi de tres no és la història per als directius de Steam. Les mateixes dades, el mateix quadre de comandament, una altra missió.

Què fa que una cosa sigui un insight

Un insight és una troballa que porta un número i una conseqüència: canvia el que decideix el lector.

La majoria dels primers intents d'insight són en realitat una descripció: diuen de què va el gràfic. La prova és senzilla. Hi ha un número? Hi ha un "i què"?

Una descripció Per què no és un insight L'insight
"Llançaments per any" És una etiqueta. Cap número, cap conseqüència "Els llançaments s'han multiplicat per 6.5 en quatre anys: el teu joc serà un més entre milers"
"La majoria de jocs de Steam són barats" Cap número, i i què? "El 43.5% dels jocs costen menys de 5, però només el 0.4% d'aquests són èxits: un preu baix tot sol no et portarà jugadors"
"Els èxits són rars" Quant de rars? A qui li importa? "Només 623 de 26,685 jocs, el 2.3%, arriben a un milió de propietaris"

Cada número de la columna de la dreta ve de games_clean. Aquí tens el primer, dibuixat:

%%{init: {"themeVariables": {"xyChart": {"plotColorPalette": "#4051b5"}}}}%%
xychart-beta
    title "Jocs publicats a Steam per any"
    x-axis ["2013", "2014", "2015", "2016", "2017", "2018"]
    y-axis "Jocs" 0 --> 9000
    bar [556, 1352, 2544, 4503, 6871, 8845]

De 1,352 jocs el 2014 a 8,845 el 2018. Si poses al gràfic el títol "Llançaments per any", el lector ha de fer aquest càlcul tot sol. Si el titules "Sis vegades més jocs en quatre anys", el títol ja l'ha fet.

La part honesta: digues el límit

Un insight és una afirmació. Un professional escriu, al costat, el que les dades no poden dir.

Un límit és una cosa que les teves dades no poden mostrar, indicada al costat de l'afirmació a la qual afecta.

Dos límits són dins de les dades de Steam, i tots dos farien mal als teus amics si els amagaves.

La trampa del 2018. La taula diu que el 87.6% dels jocs publicats el 2018 són de nínxol (niche): menys de 20,000 propietaris. Esfereïdor. Però les dades es van recollir el 2019. Un joc publicat al desembre del 2018 només va tenir setmanes per trobar els seus jugadors; un del 2014 en va tenir anys. El 2018 conté una tercera part de tots els jocs i només 37 dels 623 èxits. Els seus jocs no són pitjors. Són més joves. El 87.6% és cert i alhora exagerat.

Correlació no és causa. Mira la proporció d'èxits per franja de preu:

price_band games hit_pct
30 or more 565 10.4
15 to 30 2,367 7.1
Free 3,094 5.9
5 to 15 9,046 1.9
Under 5 11,613 0.4

"Els jocs barats fracassen, així que cobra 30." Compte. La taula mostra qui és un èxit, no per què. Els grans estudis cobren més i tenen pressupostos de màrqueting, noms coneguts i centenars de persones. El preu no va fer l'èxit. Escriu-ho com a límit, no com a consell.

Un límit no afebleix la teva història

Els principiants amaguen els límits, amb por de semblar insegurs. Funciona al revés. El lector que descobreix el límit tot sol deixa de refiar-se de tota la resta que has dit. El lector a qui s'ho has dit es refia més de la resta.

Prova-ho: la història de Steam

El teu lector: un estudi de tres persones que decideix si llançar-se a Steam, i a quin preu. Convertiràs el teu quadre de comandament Steam market d'un minimapa en una marca de missió.

Pas 1 — Troba l'insight. A SQL Lab, base de dades Dades classe, executa aquestes dues consultes una per una i llegeix els resultats lentament:

SELECT release_year, COUNT(*) AS games,
       ROUND(100.0 * COUNT(*) FILTER (WHERE owners_tier = 'Niche') / COUNT(*), 1) AS niche_pct,
       PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY price) AS median_price
FROM games_clean WHERE release_year >= 2013
GROUP BY release_year ORDER BY release_year;
release_year games niche_pct median_price
2013 556 16.5 9.99
2014 1352 29.9 7.99
2015 2544 47.0 4.99
2016 4503 59.4 4.99
2017 6871 77.2 4.99
2018 8845 87.6 3.99
SELECT price_band, COUNT(*) AS games,
       ROUND(100.0 * COUNT(*) FILTER (WHERE owners_tier = 'Hit') / COUNT(*), 1) AS hit_pct
FROM games_clean GROUP BY price_band ORDER BY hit_pct DESC;

La segona consulta retorna la taula de franges de preu que has vist a la secció anterior. Ara escriu una frase amb almenys dos números que preocuparia o animaria l'estudi.

Si niche_pct sempre acaba en .0

Has escrit 100 en lloc de 100.0. Sense el punt decimal PostgreSQL divideix nombres enters i llença els decimals: 87.0 en lloc de 87.6.

Pas 2 — Escriu la història. Tres frases, una per part. L'insight ha de portar els seus números. L'acció ha de començar amb un verb. Dona-les a un company: si pot dir quina frase és quina sense que li ho diguis, ja has acabat.

Pas 3 — Anota el quadre de comandament. Una història que ningú no pot veure al quadre de comandament és una història que només saps tu.

Fes això Per què
Obre el quadre de comandament, Edit dashboard. Al panell de la dreta, obre la pestanya Layout elements Aquí hi viuen els elements de text
Reescriu el Header de dalt de tot, o arrossega'n un de nou: l'insight com a titular amb un verb "Steam market 2004–2018" és una etiqueta; un titular diu alguna cosa
Arrossega un bloc Text / Markdown al costat del gràfic que ho prova. Fes-hi doble clic i substitueix el text d'exemple per l'insight, els seus números i, en cursiva, un límit L'afirmació és al costat de la seva prova, i el límit al costat de l'afirmació
Fes clic al títol d'aquell gràfic i escriu-hi la conclusió "Releases per year" passa a ser "Sis vegades més jocs en quatre anys". Només canvia en aquest quadre de comandament
Mou el gràfic que ho prova a la fila de dalt. Afegeix un últim bloc Text / Markdown a baix de tot amb l'acció. Save L'ull aterra primer a dalt a l'esquerra, i en surt amb què ha de fer

Has acabat quan algú que llegeix només el titular i els dos blocs de text sap què hauria de fer l'estudi.

Una història model — escriu la teva abans d'obrir això

Context. Sou tres persones a punt de llançar un joc a Steam.

Insight. Els llançaments van passar de 1,352 el 2014 a 8,845 el 2018, 6.5 vegades més, i la proporció de jocs amb menys de 20,000 propietaris va pujar del 29.9% al 87.6%. El preu mitjà (mediana) va baixar de 7.99 a 3.99.

Acció. No compteu que la botiga us porti jugadors: construïu una audiència abans del llançament, i no espereu que un preu baix ho faci per vosaltres.

Límit: els jocs del 2018 van tenir menys temps per reunir propietaris quan es van recollir les dades el 2019, així que la seva proporció de jocs de nínxol està exagerada.

Idees clau

  • Superset és de codi obert (Apache License 2.0), s'executa en un servidor que cuides tu i llegeix un dataset per gràfic. Power BI és propietari (Microsoft), es construeix a Windows, es comparteix pel núvol de Microsoft i importa les dades a un model semàntic.
  • Cap no és "millor". L'eina segueix el context: qui la farà servir, què té ja, qui la cuida. Una llicència gratuïta no és una eina gratuïta.
  • Un quadre de comandament és el minimapa; el data storytelling hi afegeix la marca de missió. Les dades no parlen soles.
  • Una història amb dades té tres parts: context (qui llegeix, què decideix), insight (una troballa amb el seu número i el seu "i què") i acció (què fer, començant amb un verb).
  • Una descripció no és un insight. "Llançaments per any" és una etiqueta; "els llançaments s'han multiplicat per 6.5 en quatre anys" és una troballa.
  • Indica sempre un límit al costat de l'afirmació a la qual afecta: els jocs del 2018 són més joves, no pitjors; un preu més alt va junt amb els èxits, no els causa.

Comprovació ràpida

1. Quina afirmació sobre llicències és certa?
  • Superset i Power BI són tots dos de codi obert
  • Superset és de codi obert sota l'Apache License 2.0; Power BI és programari propietari de Microsoft
  • Power BI és de codi obert, i Superset pertany a Airbnb
  • Superset és propietari, però gratuït per a escoles

Superset és un projecte de l'Apache Software Foundation, gratuït per usar, canviar i allotjar. Power BI pertany a Microsoft: Desktop és una descàrrega gratuïta, però compartir al servei necessita una llicència de pagament per usuari. Superset va néixer a Airbnb el 2015, però Airbnb no n'és propietari.

2. Un company diu: 'Superset és gratuït, així que no costa res.' Quina és la millor resposta?
  • Cert: el programari de codi obert mai no costa res
  • Fals: Superset té una quota mensual amagada per usuari
  • La llicència és gratuïta, però el servidor i la persona que el cuida no ho són
  • Cert, sempre que només construeixis quadres de comandament i no els publiquis mai

Una llicència gratuïta no és una eina gratuïta. Superset és una aplicació web en un servidor que algú ha d'instal·lar, actualitzar i reparar. Power BI cobra per usuari i Microsoft gestiona les màquines. Totes dues costen diners, en llocs diferents.

3. Quina d'aquestes és un insight?
  • "Llançaments per any, del 2013 al 2018"
  • "La majoria de jocs de Steam són barats"
  • "Aquest gràfic de barres mostra les cinc franges de preu"
  • "El 43.5% dels jocs costen menys de 5, però només el 0.4% d'aquests són èxits, així que un preu baix tot sol no et portarà jugadors"

Un insight porta un número i una conseqüència. La primera i la tercera opció són etiquetes: diuen de què va un gràfic. La segona no té cap número ni cap "i què".

4. En una història amb dades, què respon la part de context?
  • Qui llegeix, i què ha de decidir
  • Quin tipus de gràfic encaixa millor amb les dades
  • D'on es va descarregar el conjunt de dades
  • Què hauria de fer el lector a continuació

El context va primer: quin jugador, quina missió. Sense ell no pots triar l'única troballa que importa. Què hauria de fer el lector és l'acció, la tercera part.

5. El 87.6% dels jocs publicats el 2018 tenen menys de 20,000 propietaris. Per què ha de viatjar aquest número amb un límit?
  • Perquè el percentatge s'ha calculat malament
  • Perquè el 2018 té massa pocs jocs per treure'n cap conclusió
  • Perquè les dades es van recollir el 2019, així que els jocs del 2018 van tenir molt menys temps per trobar propietaris que els més antics
  • Perquè els jocs de nínxol no són jocs de veritat

El número és cert i exagerat. Un joc de finals del 2018 va tenir setmanes per reunir propietaris; un del 2014 en va tenir anys. Els jocs del 2018 són més joves, no pitjors. Una història honesta ho diu al costat de l'afirmació.

6. La taula de franges de preu mostra que el 10.4% dels jocs que costen 30 o més són èxits, enfront del 0.4% dels jocs de menys de 5. Un amic conclou: 'Doncs cobrem 30 i serem un èxit.' Què hi ha de malament?
  • Res: les dades proven que un preu alt crea èxits
  • La taula mostra qui és un èxit, no per què: els grans estudis cobren més i també tenen màrqueting i equips grans
  • Els percentatges són massa petits per significar res
  • La consulta hauria d'haver fet servir el preu mitjà, no les franges

Correlació no és causa. Els jocs cars són èxits més sovint, però els jocs que cobren 30 els fan sobretot estudis amb pressupostos que un equip de tres no té. Escriu-ho com a límit, no com a consell.

7. Una escola amb comptes de Microsoft 365 per a cada docent, cap tècnic per gestionar servidors i personal acostumat a Excel et pregunta quina eina triar per als seus informes d'assistència. Què respons?
  • Superset, perquè el codi obert sempre és la millor opció
  • Superset, perquè Power BI no sap dibuixar gràfics de barres
  • Power BI: encaixa amb el que ja tenen, i ningú no pot cuidar-hi un servidor
  • Cap: les escoles no haurien de fer informes

L'eina segueix el context. Superset necessita un servidor i algú que el mantingui, i recompensa la gent que escriu SQL. Aquesta escola té comptes de Microsoft i costums d'Excel. Per a una start-up amb una base de dades PostgreSQL i dos desenvolupadors, la resposta s'invertiria.

8. Estàs anotant el teu quadre de comandament per a l'estudi de tres. Tria els dos canvis que el converteixen d'un minimapa en una marca de missió.
  • Canviar el nom del gràfic "Llançaments per any" per "Sis vegades més jocs en quatre anys"
  • Afegir quatre gràfics més perquè no quedi cap detall fora
  • Afegir un bloc de text a baix de tot amb l'acció, començant amb un verb
  • Treure tots els números del text perquè es llegeixi més fàcilment

Un títol que digui la conclusió fa la lectura pel lector, i l'acció li diu on anar. Més gràfics fan un minimapa més gran, no una marca. I un insight sense el seu número és només una opinió.

Aquesta ha estat l'última missió. Vas començar aquest curs mirant quatre conjunts de dades que s'amagaven darrere d'estadístiques idèntiques, i l'acabes sabent extreure dades, netejar-les, dibuixar-les i dir què signifiquen, límits inclosos. Torna al registre de missions, Resultats d'aprenentatge, i rellegeix els nou criteris: aquest cop, cadascun descriu una cosa que ja has fet.