Stabilisci il vero interesse di una persona per la programmazione del gioco


30

Insegno ad un livello di programmazione di giochi di 4 anni di 3 ° livello (Laurea in Sviluppo di giochi per computer). Scopriamo che gli studenti nuovi e potenziali spesso confondono interessi e abilità nel gioco, nella progettazione del gioco e nella programmazione del gioco. (So ​​che il titolo potrebbe essere molto più specifico o descrittivo, ma ci sono ragioni interne per cui non possiamo cambiarlo). Abbiamo una giornata aperta in cui i potenziali studenti possono venire a parlare con docenti e studenti attuali.

Ciò si traduce in molti studenti che si iscrivono al nostro programma che si trovano con interessi e / o abilità mal allineati con il loro grado prescelto. Abbiamo opzioni per loro di cambiare importanti, ma sono quasi altrettanto impegnativi per la programmazione. Non abbiamo alcuna opzione per gli studenti che volevano davvero giocare con l'arte o il design correlati. Quindi alcuni studenti si limitano a farlo per 4 anni difficili / infelici, poiché è il livello più vicino a loro disponibile nei giochi.

Descriviamo il contenuto del programma nel nostro prospetto, ma la maggior parte degli studenti in arrivo ha poca esperienza di programmazione, quindi titoli di argomenti come strutture dati, ingegneria del software o grafica 3D non significano molto per loro.

"Non mi aspettavo così tanta matematica nella grafica 3D, immaginavo che sarebbe stato come disegnare ..."

Esiste un modo per aiutare a stabilire il genuino interesse di una persona nella programmazione dei giochi, in modo che possano prendere una decisione più informata sulla propria istruzione?


7
Perché è come qualsiasi altro grado? Alcuni dei domini di ingegneria più difficili, ad esempio, ottengono esattamente ciò che descrivi. Non usano solo i corsi di "eliminazione" all'inizio. Mi piacerebbe vedere altri programmi farlo.
Paul,

2
@Ken So che cambiare il nome probabilmente non è un'opzione, ma temo che la tendenza sia che "sviluppatore di giochi" non è necessariamente un programmatore. Ecco un grande successo di Kickstarter - prova a cercare "programmatore" nella pagina del loro team: tormentrpg.tumblr.com/teambios
Den

20
Sto facendo un dottorato in Grafica computerizzata e trovo davvero fastidioso quando dico a qualcuno "il mio dottorato è in computer grafica" e loro dicono "oh, sono terribile nel disegnare, devi essere un bravo artista!". ARGHHHHHHHH
Dan

5
@Dan Sembra la stessa cosa degli ingegneri elettrici. "Sto studiando ingegneria elettrica", "Oh mio zio è un elettricista!"
MichaelHouse

8
Mi ricorda "Sto studiando informatica". - "Fantastico, puoi sistemare il mio computer?"
Exilyth

Risposte:


16

Ho ancora un sincero interesse a potermi teletrasportare in giro. Ma ho le mie aspettative basate sulla realtà. Penso che l'interesse genuino non sia quello che dovresti valutare, ma piuttosto le aspettative degli individui.

Le lezioni di eliminazione sono indispensabili per qualsiasi laurea in ingegneria. Metti in chiaro che non è uno scapolo delle arti, ma uno della scienza. Calcolo, algebra lineare, fisica, matematica discreta e algoritmi dovrebbero essere tutti all'inizio del programma.

Inoltre, l'implementazione di un sondaggio di uscita dovrebbe aiutarti a raccogliere buone informazioni sul motivo per cui le persone stanno andando via e consentirti di affinare ulteriormente il tuo "marketing" del corso ai futuri studenti.


bel commento sulle aspettative di interesse v, ma se qualcuno è veramente interessato almeno saranno pronti a mettere il lavoro richiesto.
Ken

2
Abbastanza vero, anche se penso che alcune persone non siano in grado, anche lavorando duramente. Anche se l'interesse è lì. Il detto "puoi realizzare i tuoi sogni se lavori duro" è vero per la maggior parte, ma non per tutti.
MichaelHouse

Abbiamo un requisito di matematica delle scuole medie moderatamente alto per i candidati, quindi nella maggior parte dei casi non è la capacità che manca. (anche se abbiamo la nostra buona parte di coloro che "non ottengono" la codifica. O algebra lineare. O calcolo. O meccanica. O ...)
Ken

Se non è abilità, sai cosa sta facendo cadere gli studenti?
MichaelHouse

pensandoci un po 'di più, penso che tu abbia ragione; l'aspettativa è il problema. "Game Dev sembra divertente!", Fino a quando non ti viene chiesto di creare una matrice di visualizzazione. Possiamo aspettarci che abbiano un sincero interesse per qualcosa a cui non hanno avuto molte possibilità di essere esposti.
Ken,

7

Valuta di aumentare i requisiti per accedere al programma.

Quando stavo entrando a scuola, Ingegneria richiedeva almeno 3 corsi di matematica pesantemente calcolati: calcolo, algebra, fisica. Al momento non era necessaria la programmazione, ma l'ho preso comunque. Adesso potresti prenderlo in considerazione.

I pre-req dovrebbero dare agli studenti un'idea di cosa stanno facendo . Inoltre, sii più selettivo su chi far entrare nel programma: richiedi un minimo dell'80% nei corsi di programmazione e matematica.

Un po 'di luce dovrebbe spegnersi nella loro testa ... i prerequisiti implicano l'attesa, che implica ciò che verrà. "Hmm .. questo programma sembra voler farci conoscere un sacco di matematica!"


6

Come studente laureato in un corso di programmazione di gioco amo la tua domanda. Durante i tre anni della mia educazione la classe si è ridotta da 60 studenti a 11.

Anche se potrei non rispondere alla tua domanda, voglio condividere i miei pensieri:

  1. Sii trasparente, pubblica alcuni video di alcune delle lezioni e degli argomenti più spaventosi. Ovviamente è importante che lo studente sia informato che non dovrebbe capire tutto, ma la reazione naturale di un talento dovrebbe essere la curiosità e il fascino. Non uno schifo e un brivido lungo il collo.
  2. Non essere eccessivamente "sexy" e vendere nella descrizione. I giochi sono fantastici, la grafica 3D è fantastica, l'IA è fantastica, ma non dimenticare di parlare di alcuni degli altri argomenti che impareranno. Architettura software, modelli di progettazione, debug, matematica vettoriale, fisica newtoniana, test del software, risoluzione di problemi creativi ecc. Ecc.
  3. Assegna agli aspiranti studenti un compito, come formulare la migliore strategia per risolvere un tic-tac-toe 3x3. O come riuscire a indovinare sempre un numero compreso tra 0 e 100 in 10 o meno ipotesi. Questo potrebbe essere ospitato il primo giorno di scuola, in gruppo o in altro modo.

Questi sono i miei 1137 byte.


2
quel tasso di abbandono suona familiare ...
Ken

Credo che volevi dire "Questi sono i miei 1337 byte". Poi di nuovo, sono solo i miei $ 0,02.
supersam654,

Commento estremamente in ritardo, ma credo che la lunghezza del mio post sia di circa 1137 byte. Almeno in UTF-8;)
AlexanderBrevig,

6

Bene, per cominciare, facciamo un passo indietro rispetto a "Programmazione di giochi" e parliamo di programmazione in generale. Ogni programma / chiamata che comporta la scrittura di codice deve dirlo in modo esplicito e fare riferimento a un'altra descrizione della propria programmazione.

Ci sono poche persone che possono programmare e ancora meno a chi si divertirà. Ovviamente chiunque legga una laurea in questo campo dovrebbe godere della programmazione.

Quindi, prima dell'iscrizione, gli studenti dovrebbero compilare una sorta di sondaggio per aiutare loro (e tutti i consulenti di orientamento) a capire esattamente in cosa si stanno avvicinando e se apprezzeranno o meno.

Il sondaggio dovrebbe discutere le seguenti aree:

  • Matematica: lo studente ha apprezzato l'algebra / precalculus delle superiori?
  • Puzzle: Dedica allo studente prospettiva di risolvere i puzzle?
  • Logica: usa alcuni semplici problemi logici per vedere se lo studente ha buone capacità logiche
  • Pensiero critico: usa alcune domande che mettono alla prova le capacità di pensiero critico

A tutti gli studenti che non dispongono di quanto sopra non piacerà la programmazione e quindi non apprezzeranno la programmazione del gioco. Puoi anche spiegare loro alcuni concetti di base della programmazione, come variabili e sintassi di base, mostrare loro un po 'di codice e chiedere loro di spiegarne la dose. Se è semplice, non dovrebbe essere troppo difficile da capire per loro. Uno studente che si divertirà a programmare vedrà la sfida e farà del suo meglio per capire, e sebbene possano sbagliare, questo dimostra che hanno davvero un interesse. Coloro che non gradirebbero la programmazione probabilmente non risponderanno nemmeno, o risponderanno molto male, o semplicemente si renderanno conto che questo non fa per loro.

Poi ci saranno quelli che pensano di potersi divertire, ma non lo fanno. Assicurati che gli studenti entrino in una vera programmazione il prima possibile, in modo che possano capire in cosa stanno entrando e vedere come si divertono.

Personalmente, sto iniziando una laurea in informatica, anche se sto programmando da anni. So che mi piace perché quando vedo un problema il mio primo pensiero è "Come potrei scrivere un programma per risolverlo". Mi piace pensare alla struttura del programma, come posso renderlo più efficiente o come posso riorganizzarlo per renderlo più logico. So di amarlo perché l'ho provato, e quando sto programmando perdo la cognizione del tempo, e mi ritrovo alle 4 del mattino senza aver notato che sono passata la mezzanotte.

Per sapere davvero se a qualcuno piacerà la programmazione, devono provarlo. E non hai nemmeno bisogno di un corso universitario, ho imparato la maggior parte di ciò che so da Internet (grazie a Dio per l'overflow dello stack!). Potresti provare a offrire una sorta di corso introduttivo online (prima dell'iscrizione) alla programmazione (suggerirei JavaScript + HTML, è facile da capire e gli effetti del lavorare con JS su una pagina Web sono molto più gratificanti rispetto alle applicazioni console). Con tale corso lo faranno. . .

  • Scopri l'importanza della sintassi
  • Impara concetti di base come variabili, operatori, condizionali, loop e funzioni.
  • Impara le abilità di problem solving
  • Comprendi cos'è la programmazione

Chiunque ami veramente e abbia attitudine per la programmazione dovrebbe avere poche difficoltà in questo corso. Gli studenti perché trovano difficile il materiale introduttivo probabilmente non apprezzeranno l'apprendimento di linguaggi più impegnativi come Java e C ++.

Una volta stabilito che lo studente apprezzerà la programmazione in generale, quindi determinare se apprezzerà la programmazione del gioco dovrebbe essere semplice come porre loro la domanda.


3

Bene, sono uno studente del corso di sviluppo di giochi per computer, sebbene il titolo non sia esattamente lo stesso (il mio è Interactive Software Technology). Come studente, la prima cosa che conta di più per stabilire interessi nella programmazione / sviluppo del gioco è il modo in cui il docente tiene lezioni. Nel mio corso, ho argomenti come Calcolo, Sviluppo di giochi per computer (Teorie di progettazione di giochi), Programmazione di giochi per computer (Materiale di programmazione reale). Ho eccellenti docenti per lo sviluppo di giochi per computer e la programmazione di giochi per computer.

Teorie, tutti le odiano (principalmente), lo stesso vale per me. Ma indovinate un po? Sono motivato e interessato a studiare la teoria e praticare la programmazione da solo grazie ai docenti, o almeno l'influenza maggiore è venuta da loro. Il modo in cui conducono le lezioni è divertente, interattivo, ci incoraggiano a pensare e divertirci.

Secondo me, i bravi docenti non tengono solo lezioni , ma ispirano e motivano i loro studenti . Il nome del tuo programma non ha importanza dopo che gli studenti si sono iscritti al corso una o due settimane dopo. Dovresti farlo in questo modo, gli studenti si iscrivono per il nome del corso , rimani a causa dei contenuti interessanti che ha. Proprio come nella progettazione del gioco, la trama del gioco attira i giocatori per un certo periodo di tempo, impara le meccaniche di gioco, quindi dovrebbero essere le meccaniche di gioco a far continuare i giocatori a giocare. Per far sì che i giocatori continuino a giocare, le meccaniche di gioco devono essere interessanti. Lo stesso vale per il tuo corso, renderlo interessante ei tuoi studenti saranno motivati ​​o almeno interessati a continuare l'apprendimento. E oh, una cosa che ho notato nel mio corso è che avremo concorsi per la progettazione del gioco e la programmazione del gioco , il vincitore riceve il premio. E ho notato che alcuni dei compagni di classe pigri sono diventati improvvisamente così appassionati di programmazione e progettazione di giochi, hanno lavorato giorno e notte senza dormire molto. Forse ti aiuterà un po ': D

Bene, solo un pensiero di uno studente. Spero che sia d'aiuto, in caso contrario, mi dispiace :)


È fantastico che tu abbia buoni docenti e hai ragione sul fatto che l'approccio alla lezione ha un grande effetto sugli studenti, ma penso che l'OP stia chiedendo qualcosa di più fondamentale. Voglio dire, stai supponendo che la persona sarebbe motivata da un buon docente, ma per me qualcuno che dice "Non mi aspettavo così tanta matematica in Grafica 3D, ho pensato che sarebbe stato come disegnare ..." è solo chiaramente nella maggiore sbagliata. Insegno ad alcune lezioni del college, quindi sono stato nella posizione di dire a qualcuno che potrebbe adattarsi meglio a un diverso diverso (a parte: è strano che le persone si alzano così in braccio per un consiglio onesto)
scherzando il

@hahhhhhhhhhhhh, mi ha fortuna. Il motivo per cui ho pubblicato questa risposta è dovuto a "Esiste un modo per aiutare a stabilire il vero interesse di una persona per la programmazione del gioco", quindi sì, ho pensato che sarebbe stato appropriato. Sì, potrebbe essere nel maggiore sbagliato ma non è la fine del suo studio nel corso giusto? Sì, lo capisco, perché per gli studenti si vergogneranno e forse avranno "Stai dicendo che non sono abbastanza intelligente" questo tipo di mentalità quindi l'emozione. Voglio dire, è davvero doloroso sentirlo dire :(
Xeon

1
Penso che la confusione porti da "stabilire". Mi sembra che l'OP volesse comunicare "determinare", "scoprire", mentre tu l'hai capito come "generare", "creare".
mikołak,

Hmm, ora che l'hai detto, credo che tu abbia ragione. Che errore: D
Xeon

3

Sono attualmente al mio quarto e ultimo anno di laurea in programmazione di giochi, quindi mentre potrei non essere in grado di rispondere direttamente alla tua domanda, ho pensato di condividere le mie esperienze. L'università in cui studio ha un corso di "Game Design"; che è fondamentalmente la modellazione 3D e l'uso del middleware (ad esempio Unity), e alcuni studenti scelgono di passare a questo corso (o una progettazione / programmazione ibrida).

  • Quando ho fatto domanda per la mia università c'è stato un colloquio di pre-accettazione in cui mi è stato sostanzialmente chiesto il mio background, cosa volevo ottenere ecc. aiutare a dissuadere gli studenti che non hanno un vero interesse per la programmazione del gioco .
  • Ci è stato detto in anticipo i linguaggi di programmazione utilizzati nel corso, anche se non è richiesta una conoscenza preliminare della programmazione, è stato chiarito quanto tecnicamente fosse coinvolto il corso. C'era anche un'indicazione del livello di matematica coinvolto , e se ricordo bene il corso richiedeva almeno una B in matematica a livello A.
  • All'open day c'erano molti lavori degli studenti in mostra, principalmente dai primi anni. Le cose in mostra erano relativamente "primitive"; semplici giochi 2D con meccanica di base, questo potrebbe aiutare a soddisfare le aspettative degli studenti che pensano di fare il prossimo Call of Duty, per esempio.
  • Ho anche avuto l' opportunità di parlare con gli attuali studenti del corso (e ho ricevuto degli ottimi consigli) che sicuramente mi hanno dato una visione delle abilità necessarie e delle sfide.
  • Fin dall'inizio della mia laurea ci sono stati moduli di "eliminazione" , tra cui matematica complessa, programmazione e teoria grafica generale. Se uno studente si aspettava di essere un modello 3D, presto avrebbe saputo che stavano seguendo una rotta sbagliata.

Alla fine ci saranno sempre degli studenti che non riescono a tenere il passo; nel corso di un corso di 4 anni la mia classe si è ridotta di circa il 75%, ma non credo che ci sia molto altro che si possa fare se non chiarire agli studenti cosa comporta il corso.


Esiste un modo per aiutare a stabilire il vero interesse di una persona nella programmazione del gioco

Nel tentativo di rispondere alla tua domanda, tuttavia, la soluzione più semplice sarebbe quella di chiedere loro? Dalla citazione che hai dato a uno dei tuoi studenti, sembra che sappiano cosa volevano fare, ma hanno frainteso il contenuto del corso.


Il tuo suggerimento di "chiedere loro" è in realtà il motivo per cui mi piace la risposta di Zeel. Suggerisce anche di porre loro (ad es. Un sondaggio) ma dà domande specifiche da porre. Non si tratta solo di porre, si tratta di porre le domande giuste.
deridere il

2

Non sono un insegnante, ma sto studiando informatica (anche se non un certo titolo di gioco).

Tendiamo ad avere alcune persone ogni anno che pensano di poter "fare computer" quando sanno solo come usare una suite per ufficio o pensano di sapere come programmare quando tutto ciò che hanno fatto è copiare e incollare insieme una pagina web. La mia università lavora duramente per mantenere bassi i loro numeri, ma ci sono sempre alcuni che non danno suggerimenti.


Nella mia università, quando c'è una giornata aperta , le facoltà mostrano alcuni dei progetti a cui stanno lavorando o su cui stanno lavorando. Di solito espongono i programmi risultanti nelle aule.

Per aiutare a spiegare i progetti, appendono poster con immagini, testo e formule matematiche . Questo potrebbe essere ad esempio un poster che spiega il pathfinding nei giochi RTS, che spiega anche A *, o un poster che spiega le proiezioni, che mostra la matematica dietro le matrici di proiezione, o un poster che spiega i semafori modellati utilizzando reti di Petri. Spesso, i problemi sono descritti in un modo in cui i visitatori possono relazionarsi (ad es. Commesso viaggiatore come il giro turistico più breve o il percorso in taxi), con una spiegazione su come il problema è risolto.

Questo ha un duplice scopo: in primo luogo, i visitatori possono vedere come funziona l'argomento in questione, il che potrebbe suscitare ulteriore interesse. Secondo, c'è la matematica proprio lì, quindi non è una sorpresa. (inoltre, come effetto collaterale, i visitatori informati abbastanza spesso lo solleveranno proprio lì.)

Upside : Diamo un'occhiata alle cose interessanti e ai concetti alla base della "magia" di cui è stata estratta.

Unico inconveniente : molti preparativi necessari.


Le facoltà organizzano anche corsi di orientamento prima dell'inizio del semestre, in cui gli studenti possono ottenere un aggiornamento sulla programmazione e sulla matematica. Durante l'orientamento, i potenziali studenti vengono anche visitati nel campus e vengono aiutati a trovare le informazioni di cui hanno bisogno per mettere insieme i loro piani di lezione. A questo punto, agli studenti verrà mostrata la quantità di corsi di matematica (Le informazioni (quali corsi devono essere seguiti e uno schema approssimativo del loro contenuto) sono anche disponibili gratuitamente sui siti Web delle facoltà e nelle guide di studio, in modo che gli studenti possano vedere cosa ti iscrivi a lungo prima che si iscrivano). Durante l'orientamento, i membri della facoltà e gli studenti che aiutano con l'orientamento di solito parlano delle proprie esperienze (vengono sempre raccontate storie su come tirare tutti i vicini e lavorare più di un giorno su esercizi / compiti).

Upside : le persone sanno a cosa servono e hanno un inizio più facile.

Unico inconveniente : preparazione necessaria. I siti Web devono essere aggiornati. Alcuni futuri studenti saltano questa preparazione opzionale.


Quindi, la maggior parte dei corsi di matematica sono iniziati e sono piuttosto impegnativi , convincendo coloro che non hanno ottenuto i suggerimenti generali per andare alla ricerca di pascoli più verdi. Inoltre, la maggior parte dei corsi interessanti viene dopo e hanno i corsi di base come requisito (ad es. Programmazione grafica dopo algoritmi e strutture di dati e, soprattutto, dopo il corso di matematica che copre gli spazi vettoriali).

Gli esercizi per le lezioni di base di algortihm e strutture dati richiedono (dopo un tutorial di una volta) la programmazione fin dall'inizio. Questo è un altro fattore importante che contribuisce all'abbandono. (Gli studenti possono eseguire fino a quattro esercizi in questa lezione ... dopo quattro settimane, coloro che non possono programmare sono spariti.)

Unico inconveniente : molte persone abbandonano dopo il primo semestre o passano ad altri campi. Circa il 50% -75% di perdita totale dopo il secondo semestre, immagino.

Upside : le persone rimanenti sanno cosa stanno facendo.


0

Ho il sospetto che il problema sia che il tuo programma non attira persone di alto livello, perché questo tipo di confusione fondamentale è semplicemente stupido. (Il tuo dipartimento di ingegneria ha studenti che pensano che avrebbero imparato a guidare i treni?) La stupidità mostra una correlazione inversa abbastanza buona con queste cose chiamate gradi, specialmente nelle materie accademiche.

Il tuo dipartimento non cerca buoni voti in materie come la matematica e le scienze? Qualcuno con un A + in Algebra o Fisica penserebbe che creare giochi per computer non implichi una programmazione informatica difficile? O hai impostato un livello basso per attirare i candidati, in modo che il programma sembri più popolare? Un'altra cosa: hai un esame di ammissione?

Hai programmi o attività di orientamento o tutoraggio? C'è qualche attività organizzata in cui matricole, o potenziali matricole, possono trascorrere del tempo interagendo con gli studenti del terzo o quarto anno? O anche ex studenti? Tieni d'occhio gli ex-alunni e invia loro spam invitando loro a fare volontariato con i soldi.

Poi c'è la formazione del corso matricola. Vari programmi universitari richiedono agli studenti di sviluppare abilità e conoscenze che mancano nei programmi generici delle scuole superiori. I corsi per colmare queste lacune vengono introdotti dall'inizio. Ad esempio, gli studenti CS di solito affrontano una dura struttura di dati e corsi di progettazione del programma nel primo e nel secondo anno. I rami della matematica specializzati necessari nelle discipline vengono introdotti il ​​più presto possibile, così come le abilità speciali. Ad esempio, gli ingegneri delle matricole potrebbero dover seguire un corso di redazione, con i laboratori che fanno CAD. Un grado di sviluppo del gioco dovrebbe portare la matematica e la programmazione fin dal primo semestre. Gli studenti che hanno un'idea sbagliata possono scoprire che hanno torto all'inizio.

Gli studenti universitari che abbandonano sono vacche da mungere per la scuola, giusto? Non vi è praticamente alcun costo aggiuntivo per l'aggiunta di più corpi a una classe di 200, se c'è spazio fisico, ma un sacco di entrate extra. Quindi qual è il rovescio della medaglia? È una racchetta fantastica. Ogni dipartimento ha una "piramide" restrittiva: un attrito anno per anno degli studenti. Guarda le dimensioni delle fotografie annuali della classe di laurea appese nei loro corridoi, quindi guarda quanti bambini che frequentano lo stesso programma sono riuniti in una sola sala per le lezioni del primo anno. Perché questo corso di laurea in sviluppo del gioco dovrebbe essere diverso? Confronta il tuo logoramento con quello di altri dipartimenti e preoccupati solo se è significativamente diverso. Se quasi tutte le matricole che entrano nel tuo programma si diplomano, non è necessariamente una buona indicazione, e nemmeno un tasso molto basso.


1
Non sono necessariamente in disaccordo con tutto ciò che stai dicendo, ma il ragazzo viene offensivo e / o amaro. Affermazioni come "E 'una racchetta fantastica" sono piuttosto passivi aggressivi (o forse solo verso l'alto aggressivo.)
jhocking
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.