2. PRODUCEREN

IN HET BIJZONDER OVER HET PRODUCEREN VAN MULTIMEDIA PRODUCTEN

HET PRODUCEREN VAN MULTIMEDIA-PRODUKTEN

Door Rik Min
4e - gesplitste - versie, Enschede, okt. 2000.
(Deze tekst is in een andere
en uitgebreidere vorm ook gepubliceerd bij het vak
'OKT1', module 3, in 1997)

Inleiding

De wereld van de informatietechnologie (IT) is enorm in beweging en dientengevolge ook de wereld van de educatieve instrumentatietechnologie. Een vloedgolf van nieuwe media komt op ons af; niet alleen op de consument, maar ook, en vooral, op de ontwerper van multimedia- programmatuur. De ontwerper wordt heen en weer geslingerd tussen verschillende opvattingen over het ontwerpen en ontwikkelen van software. Een ontwerper dient een bepaald houvast te hebben aangaande enkele essentiële basisbegrippen, methoden en theorieën. De belangrijkste van deze basisbegrippen zullen tijdens zijn opleiding aan de orde moeten komen. De Universiteit Twente (UT) en de Faculteit der Toegepaste Onderwijskunde (TO) spelen hierin nadrukkelijk een bepaalde rol.

Binnen het vakgebied der informatietechnologie is het een komen en gaan van theorieën, methoden, concepten, ontwerp-richtlijnen, plannen van aanpak en filosofieën over hoe interactieve programmatuur door de ontwerper moet worden ontworpen, er voor de gebruiker uit moet zien, en door de programmeur moet worden gerealiseerd.

Over het ontwerpen van gingen de vorige teksten. Nu zullen we ons beperken tot de aspecten van het ontwikkelen en realiseren: de methoden en technieken in algemene zin.

Methoden en technieken

Onder technieken worden in deze verhandeling over ontwerpen bepaalde opties of nieuwigheden in bepaalde gereedschappen of programmeersystemen verstaan. Onder methoden verstaan we dingen die te maken hebben met het realiseren van software en het integreren van losse, statische bestanden in een geheel: hoe een totaalprodukt gemaakt wordt. Dus bijvoorbeeld door gebruik te maken van een auteurs-taal, een hogere programmeertaal of een editor. Kortom een methode, een ontwerp-methode, een plan van aanpak versus een techniek, in de zin van techniekjes die leveranciers leveren om deelproblemen op te lossen.

Filosofie achter het ontwikkelen

Bij de opleiding tot ontwerper van multimedia-produkten (en soortgelijke produkten) is het nodig om de basisprincipes van tools uit te begrijpen. Daarom worden niet zo zeer de mooiste, laatste of duurste tools gebruikt, maar in principe de eenvoudigste tools (bijvoorbeeld EditPad, TeachText, e.d.), temeer omdat de tool als zodanig niet het leren omgaan met de hoofdzaak, mag overstemmen. Bij het leren ontwerpen en maken van interactieve multimedia-programmatuur moet in hoofdlijnen de kern van de zaak duidelijk voorop blijven staan, niet het gereedschap.

De vormgevingskant dient echter geheel anders benaderd te worden. Daar gebruikt men geheel andere tools (bijv. Illustrator), d.w.z. in principe de meest geavanceerde tools. Dat is een logisch verschil tussen het leren omgaan met methoden en technieken voor het maken van programmatuur en de vormgeving van het geheel versus het maken van de afzonderlijke delen. Het is de maatschappelijke positie, die de ontwerper in spé later moet innemen, die bepaalt hoe de opleiding in elkaar zit. Enerzijds moet men kunnen programmeren (de inhoud) en anderzijds moet men de klant tegemoetkomen met de meest adequate aanbiedingswijze (de vorm). Zowel de top-down benadering als de bottom-up benadering is bij het leren ontwerpen noodzakelijk.


Beeldscherm georiënteerd

Het doel van courseware, educatieve software en/of multimedia-programmatuur in het algemeen is een presentatie of een leeromgeving op een beeldscherm. Dit stelt andere eisen aan vormgevers. Vormgevers zijn gewend plaatjes op papier of een videoprogramma te maken voor een TV-scherm: d.w.z. niet-elektronisch of digitaal, maar analoog en meestal statisch of lineair, d.w.z. niet interactief. Deze vormgevers werken analoog en niet digitaal en gebruiken vaak geen computers en een enkele keer gecomputeriseerde tools, maar dan wel met een ander presentatiemedium voor ogen dan een computerbeeldscherm. Gecomputeriseerde tools zijn immers geen enkele voorwaarde om iets te maken in de grafische wereld. Maar bij multimedia-programmatuur is er wel een digitale aanpak nodig en dienen analoge bestanddelen in ieder geval gedigitaliseerd te worden. Hoe dan ook. Het computer-beeldscherm-georiënteerd bezig zijn is geheel anders dan papier- of videotape-georiënteerd bezig zijn. De afdeling ISM houdt zich daarom bij zijn onderzoek en onderwijs voornamelijk met IT producten bezig die beeldscherm-georienteerd zijn; en houdt zich in principe niet met papieren producten bezig.

Tot op heden werken vormgevers meestal aan de analoge kant van een object en de informatici aan de digitale kant van het object. Er is tot op heden nog steeds een overgangstraject tussen analoog en digitaal te constateren. Het is de vraag of dat ooit verdwijnt. Apparaten zoals een microfoon, een scanner, een lens in een foto- of videocamera blijven noodzakelijk aan de 'input'-kant. De digitale wereld kan voorlopig niet zonder dergelijke analoge input-apparatuur.

Waarom practica?

De rationale achter de practica van TO en TCW kan het best worden aangegeven door een uitspraak van Van Holten (1979), gebaseerd op soortgelijke ideeën van anderen:

Over het nut van practica valt veel te vertellen. In deze verhandeling komen slechts enkele aspecten aan de orde. De gereedschappen voor het ontwerpen van (deel)oplossingen bij ontwerp-problemen krijgt men sneller onder de knie als men dat doet door middel van een probleem-georiënteerde instructie-methode ('practica nieuwe stijl'; wordt echter sinds 1997 niet meer gedaan) en vervolgens die kennis toepast bij de 'eindopdracht' van de practica.

Werkmethode

Wordt in het theoretische deel van onze vakken de stof via hoorcolleges (met overheadprojectie van demonstratieprogramma's) aangeboden, bij de practica krijg je juist de kans om met specifieke aspecten direct zelf kennis te maken en zelf oplossingen te zoeken voor de problemen die de docent aanreikt. Je leert hierdoor beter de collegestof te begrijpen.

Je leert om te gaan met een programma door er gewoon zelf mee te gaan oefenen thuis of op de faculteit. Zonder oefening kun je niet met alle gereedschappen en alle aspecten van programmeren omgaan. Daarvoor krijg je van ons volop de gelegenheid in de practicumtijd - maar ook en vooral daarbuiten - flink te oefenen. Daarbij kan hij gebruik maken van zijn aantekeningen, de web-sites, de practicumhandleiding en andere hulpmiddelen.

Object georiënteerd denken

Een van de meest in zwang zijnde ontwerp-methoden is die methode die alle afzonderlijke onderdelen van een ontwerp als afzonderlijke objecten beschouwd. Elk object heeft wel zijn plaats in een geheel, maar komt op een andere manier tot stand dan een ander object; een plaatje anders dan tekst; een videofragment anders dan een simulatie. Er worden kortom specifieke gereedschappen gebruikt. Meestal zijn de afzonderlijke objecten tevens losse bestanden.

Vaak bestaan bestanden weer uit een serie andere objecten van gelijke aard of verschillende aard. Dat laatste is een ontwerp-keuze. Er is een keuze uit velerlei methoden en technieken. De ontwerp-keuze is meestal behoorlijk subjectief, hoewel ze gebaseerd zal zijn op een groot aantal bewuste of onbewuste overwegingen; vaak uit eerder empirisch onderzochte proefnemingen.

Bestanden.

Bestanden zijn niet alleen teksten maar ook plaatjes, foto's, bewegende beelden en geluid.

Al deze op communicatie gerichte elementen kunnen op een beeldscherm van een computer worden gepresenteerd; niet alleen op zichzelf staand, sequentieel, successievelijk d.w.z. na elkaar maar ook tegelijkertijd, d.w.z. simultaan.

De onderdelen kunnen naar behoeven door de ontwerper, maar later ook door de gebruiker (bijv. de leerling of ook de leraar) worden gemanipuleerd en in een volgorde of op een bepaalde manier worden gebruikt die men zelf wil.


Bottom-up / top-down

Als men met een bepaalde methode of techniek leert werken aan het kleinste onderdeel van een multimedia-presentatie en men leert dat tevens te zien als een onderdeel van een groter geheel, dan werkt men wat wordt genoemd 'bottom-up'. Deze methode wordt binnen de technische wetenschappen veelvuldig gebruikt. Binnen de sociale wetenschappen wordt echter meer gebruik gemaakt van de 'top-down' benadering. Een TO-student moet echter leren omgaan met beide benaderingen. De top-down benadering is: eerst het geheel proberen te overzien om vervolgens af te dalen naar de kleinste afzonderlijke elementen (objecten) en daar problemen zien op te lossen. Om vervolgens te trachten weer bottom-up te werken aan het totaalprodukt.

On-line ontwerpen met auteurs-systemen

Een van de meest recente ontwikkelingen in de wereld van ontwerpen is on-line ontwerpen met tools, zoals CAD/CAM systemen en/of auteurs-systemen. Zoals sinds een jaar of tien tekstschrijvers tekstverwerkers gebruiken, en niet meer schrijven met een potlood of een schrijfmachine. De consequenties van deze nieuwe technieken zijn uiteindelijk zeer groot. Werd vroeger gezworen om eerst een kladontwerp te maken, tegenwoordig is het handiger om dat kladontwerp ook maar meteen, vanaf nul met een computergereedschap (tool) te maken. Een ontwerper is ook maar een mens. D.w.z. hij is eigenlijk altijd te lui om dingen opnieuw in te typen of te tekenen, als hij tekstdelen of figuren voor een deel direct kan (her)gebruiken. Op dit moment zijn er nog maar weinig romanschrijvers die eerst een roman in het klad schrijven en daarna alles overtypen m.b.v. een tekstverwerker. Secretaresses moeten dit vaak nog wel doen, maar dat wordt zienderogen minder. Er is duidelijk een verschuiving in hun rol te bespeuren. Het wordt meer en meer het opmaken en uitprinten van (platte) teksten die hun opdrachtgevers hebben geschreven en hen op floppy of per e-mail hebben toegezonden. Toch zijn er nog vele nadelen verbonden aan het direct gebruiken van een computer-tool. Er moet gewaakt worden dat je niet onmiddellijk naar een tool grijpt, maar eerst nadenkt over wat je eigenlijk wil maken en ontwerpen. Daarover elders meer.

Als auteurssyteem hebben vele generaties TO studenten leren werken met AuthorWare, VisualBasic en SuperCard/HyperCard. Inmiddels worden voornamelijk web-based producten gemaakt en worden tools als Fusion, FrontPage en DreamWeaver - als auteurssyteem - gebruikt.

Het belang van leren programmeren

Het kunnen ontwerpen en realiseren van multimedia-produkten kan niet zonder een gedegen kennis van (basale) programmeer-methoden en -technieken. Het belang van gewoon leren programmeren in een programmer- of script-taal is - als je het aan vakmensen vraagt - vrij evident. Er is een 80/20-regel op dit punt. Die luidt: 80 procent van de educatieve IT producten worden welliswaar gemaakt met een tool, maar 20 procent van de IT producten is maar waardevol en daarvan bevat weer 80 % (essentiele) onderdelen die gemaakt zijn met (hogere) programmeertalen. Voorzichtige stelling: educatieve IT producten die (snel) met tools gemaakt zijn, zijn vaak geen blijvertjes.

Architecten hoeven niet zelf gemetseld te hebben om een huis te kunnen ontwerpen, ontwerpers van software of informatie-paketten moeten daarentegen wel enige ervaring met programmeren hebben. Men kan niet echt begrijpen wat programmeren is of kan betekenen voor jouw latere job als men het op de universiteit nooit zelf een een bepaald niveau ervaren heeft. TO-studenten, tot de lichting uit het studiejaar 1993/94, hebben leren programmeren in Pascal en vanaf het studiejaar 1994/95 in HyperTalk, zowel als Prolog. Daarna is de faculteit rond 1997 overgestapt op javaScript.

Momenteel kiezen we voor Java en Java-systemen (bij practica in het vierde studiejaar) en JavaScript in het tweede studiejaar. In het eerste studiejaar heeft men goed met HTML leren omgaan. De nieuwe aanpak is welliswaar een beperking (alleen web-software), maar maakt het toch mogelijk een goede fundamentele basis neer te leggen voor een latere carriere in andere soorten software.

Hoe leren programmeren?

Er zijn een groot aantal methoden om te leren programmeren. Het leren door het zelf te doen is er een van. Naast allerlei theoretische zaken is niets zo vruchtbaar als het zelf leren toepassen van methoden en technieken in een zinvolle context. In het curriculum van TO zit een ruime hoeveelheid verschillende programmeer-methoden verweven. Tot op heden (t/m 1995) leerde men de basismethoden en technieken in een vak "inleiding programmeren voor TO studenten" en een beetje in het vak "instrumentatietechnologie; introductie" ("ISM1"). Later in het curriculum zijn er vakken in het ontwerpen van multimediale producten met auteurs-systemen en verder het leren maken van interactieve educatieve software met behulp van de gekozen hogere programmeertaal (Pascal) waarbij procedure-bibliotheken, zowel als "black-box" als als "glass-box" worden gebruik. In latere keuzevakken (m.n. bij "simulatie als leermiddel") leert men o.a. "event-driven" software- producten te maken met behulp van "shells" en libraries. Al deze verschillende methoden van software ontwikkeling hebben de TO student een brede basis gegeven om met multimedia aan de slag te kunnen.

Compilers versus interpreters

Programmeren in Pascal werd in de tachtiger jaren geleerd in een programmeeromgeving waarbij gebruik gemaakt wordt van een compiler. HyperCard / HyperTalk en Prolog werd aangeleerd in een programmeeromgeving waarbij het programma wordt alleen maar wordt geïnterpreteerd. Dat was didactisch een prima beperking. Snelheid was hier niet een eerste vereiste. Nu werken we dan met Java (met JDK 'compilers') en bij Javascript met een interpreter (de browser zelf). Bij research projecten, waar het op snelheid en een goede performance aankomt, dus bij simulaties en animaties, worden programmeeromgevingen gebruikt waarbij gecompileerd kan worden en gewerkt kan worden met procedure-bibliotheken.

Methoden, technieken en tools bij TO practica

Sinds 1988 beschikt de afdeling Toegepaste Onderwijskunde over een speciale ontwerp-systemen voor het maken van computersimulatieprogramma's en andere vormen van sterk visuele en interactieve dynamische multimediale producten.

De software is onderverdeeld in allerlei losse objecten en het losse raamwerkprogramma. Deze aanpak maakt het mogelijk een goede functionele scheiding van werkzaamheden te bewerkstelligen tussen de rol van de informaticus en de rol van de instrumentatietehnoloog, maar ook en vooral van de taken van de vormgever. De informaticus maakt de tools in de procedure-bibliotheken en de instrumentatietechnoloog kan vervolgens op een vlotte gestroomlijnde manier deze tools aan elkaar "knopen" tot zeer grote specialistische type multimediale programmatuur. Alle programma's die met deze instrumenten gemaakt worden kunnen daarna worden geïntegreerd, waardoor een afwerking tot een volwaardig leermiddelen mogelijk is.

Vervolg:

De hierna volgende tekstfragmenten gaan over:

Je dient de daar genoemde begrippen en de indelingen (in bijvoorbeeld soorten) te weten en te kennen.

Enschede, nov, 2000