Domanda:
Un docente può costringerti a imparare una sintassi / linguaggio di programmazione specifico?
Student
2018-10-25 20:57:25 UTC
view on stackexchange narkive permalink

La mia classe sta attualmente imparando ulteriormente il nostro database relazionale / SQL come parte del corso.

Il docente che abbiamo attualmente ci sta limitando ad imparare specificamente la sintassi Oracle SQL piuttosto che concederci un'opzione per l'utilizzo di PostgreSQL , MySQL, SQLite, ecc.

Quando abbiamo sollevato la nostra preferenza nell'uso di sistemi alternativi a causa del lavoro con quelli sopra menzionati in tirocini o studi accademici dell'anno precedente, siamo stati persino discutere la questione.

È consentito nel Regno Unito limitare agli studenti l'utilizzo di una sintassi di database / ambiente software preferito?


Modifica per aggiungere: grazie per i tuoi suggerimenti e feedback. Il post è stato realizzato per conto mio e di una mezza dozzina di membri della classe che non conoscevano il percorso migliore per affrontare la questione, ma ora hanno una comprensione più chiara grazie a questa comunità. Per quello che vale, posso affermare con sicurezza che io e i miei compagni studenti siamo fiduciosi con Oracle, MySQL e altre nozioni di base di SQL da precedenti istruzione, progetti o occupazione e non abbiamo problemi a imparare qualcosa di nuovo per continuare a progredire.

I commenti non sono per discussioni estese;questa conversazione è stata [spostata in chat] (https://chat.stackexchange.com/rooms/84930/discussion-on-question-by-student-can-a-lecturer-force-you-to-learn-a-specifico-p).
Quattordici risposte:
problemofficer
2018-10-25 21:14:16 UTC
view on stackexchange narkive permalink

No, non possono. Ma possono farti superare la lezione.

I docenti di solito hanno libero sfogo sulle specifiche del materiale insegnato. Pertanto sono liberi di scegliere qualsiasi tecnologia o dialetto purché rientri nell'area del corso.

Nessuno può costringerti a studiare qualcosa se non se vuoi superare il suo esame o il corso ad es. presentando problemi di laboratorio, devi giocare secondo le loro regole.

Potrebbero non conoscere nessun altro dialetto e quindi essere solo in grado di insegnare (e valutare) Oracle SQL. Oppure potrebbero considerarlo il miglior dialetto, ad esempio, a causa dell'ampio uso nell'industria.

Infine, anche se sarei infastidito anche da questo, a volte devi succhiarlo e passare il corso. I docenti che insegnano lo stesso materiale (obsoleto) per 20 anni sono purtroppo una realtà nel mondo accademico. Almeno potresti imparare cosa evitare in futuro.

I commenti non sono per discussioni estese;questa conversazione è stata [spostata in chat] (https://chat.stackexchange.com/rooms/85334/discussion-on-answer-by-problemofficer-can-a-lecturer-force-you-to-learn-a-speci).
Patricia Shanahan
2018-10-25 21:28:51 UTC
view on stackexchange narkive permalink

A meno che non ci sia qualcosa nella descrizione del corso che dice diversamente, il docente può scegliere la sintassi per tutti i corsi e gli esami presentati. Scegliere una sintassi specifica rende le lezioni meno confuse, oltre a semplificare i test e la valutazione dei corsi e degli esami. Per superare il corso, dovrai imparare Oracle SQL.

Potresti confondere "richiederti di imparare X" con "impedirti di imparare Y". A lungo termine, dovrai imparare molto materiale durante la tua carriera e non sarà sempre possibile ricevere lezioni esattamente su ciò che devi imparare. Lo studio indipendente può diventare essenziale.

Considera la possibilità di ripetere alcuni dei corsi utilizzando il database di tua scelta, per la tua formazione.

Vorrei aggiungere all'eccellente risposta di Patricia dicendo che se finisci per fare questo per vivere, dovrai sviluppare la capacità di muoverti tra linguaggi e framework simili per sopravvivere.SQL, in particolare, non è una tecnologia di cui essere preziosi, perché è usata ovunque.Inoltre, la quantità di sforzo extra da parte tua è marginale rispetto alla quantità di lavoro che l'istruttore dovrebbe fare se ognuno scegliesse la propria versione.È folle.Sarebbe come un'azienda che consentisse a ciascun reparto di utilizzare la propria versione di SQL e quindi tentare di normalizzarla in un unico DB.
Oleg Lobachev
2018-10-26 02:34:48 UTC
view on stackexchange narkive permalink

Riformulata un po ', la tua domanda dice:

Un docente può basare il proprio corso su un dialetto specifico di uno strumento?

Posso e io fare.


Ma vorrei evidenziare un aspetto leggermente diverso di questo. Una lezione universitaria adeguata non riguarda (quasi) mai strumenti e linguaggi concreti. Si tratta di concetti.

In questo semestre insegno Programmazione Funzionale. Il materiale della lezione parla di Haskell. Gli esercizi sono ad Haskell. Se qualcuno li presentasse in ML, sicuramente fallirebbero. Ma i concetti di programmazione funzionale sono ciò di cui tratta in realtà questa lezione. E i concetti non cambiano.

Mi aspetto che gli studenti siano in grado di programmare in ML, Swift o altro, purché sia ​​un linguaggio di programmazione funzionale e si siano adattati alla sintassi. Sicuramente perderebbero alcuni concetti. Sicuramente avrebbero alcuni concetti che non hanno incontrato durante la lezione. Ma l'approccio di base, la mentalità generica e la maggior parte dei concetti saranno ancora presenti. E questo è l'argomento del mio corso.

In effetti, potrebbero non scrivere mai una sola riga di Haskell nella loro vita dopo aver ottenuto il voto. E li rende ancora programmatori e informatici migliori.


Fondamentalmente posso sostituire le parole e ottenere la stessa affermazione sui database relazionali. Il fatto che impari Oracle dovrebbe avere un impatto minimo sulla tua capacità di usare MySQL (o cosa no) più avanti nella tua vita. Un certo numero di grandi aziende utilizza comunque Oracle. Forse il tuo docente è più fluente in Oracle che in qualcos'altro, o forse il tuo dipartimento ha ottenuto quella grande e brillante licenza Oracle che sarebbe un peccato non usare, o qualcosa di completamente diverso. Il motivo è irrilevante, devi imparare Oracle.

Ciò che impari effettivamente sono le basi dei database relazionali. Queste basi si applicano a tutte le cose * SQL e anche ad alcune che non lo sono. Tutto il resto è un piccolo adattamento alla sintassi e alle stranezze locali, che non è un argomento di istruzione universitaria.

`Il fatto che impari Oracle dovrebbe avere un impatto minimo sulla tua capacità di usare MySQL` è molto vero.Devi usare * alcuni * linguaggi esistenti e ogni implementazione può avere le sue differenze.Tuttavia, se sai come scrivere query in * qualsiasi * dialetto SQL, sarai in grado di scriverle in qualsiasi dialetto.Una tabella funzionerebbe allo stesso modo in Oracle, PostgreSQL, MySQL, ecc., Quando si tratta di selezionare e aggiornare e così via.Alcuni casi speciali potrebbero differire, ma nel mondo reale non hai sempre una scelta nel fornitore di DB, probabilmente ti verrà richiesto di usare solo X e Y mentre conosci solo Z.
In qualità di educatori, ci piace rivendicare questa convinzione "concetti non tecnologie specifiche", ma non vedo molte prove che siano vere.I miei studenti di C ++ non si sentono a proprio agio con Java, anche se dico loro ad ogni turno qual è lo stesso 95% e quale è diverso il 5%.Il college di 4 anni in cui si trasferisce la maggior parte dei miei studenti di 2 anni non accetta un corso di C ++ in quanto soddisfa un requisito di programmazione Java.Gli annunci di lavoro richiederanno distintamente uno, non l'altro.Eccetera.
Apple e Google dividono il mercato e utilizzano principalmente strategie non cooperative.Microsoft è stata responsabile per il PC a prezzi accessibili, prima mano un personal computer da Macintosh ecc. Era un lusso.Ora chiunque può avere pieno accesso e possedere un computer completamente programmabile (al contrario di uno smart device Android / Apple che non è completamente programmabile).Come si può negare razionalmente questo?E non solo questo, Windows trova anche le soluzioni ottimali e bene.Non sacrificare prestazioni, compatibilità o convenienza.
Le finestre 95-windows 10 dell'era di Microsoft sono davvero una meraviglia moderna e ora con l'aumento di altri sistemi operativi.Aziende come Apple e Google, sta diventando sempre più chiaro quanto siamo stati fortunati tutti.Temo che questa era si stia riducendo in un cambiamento a tempi più regolari analoghi a prima degli anni '80.Detto questo, il mondo accademico non ha mai usato le finestre per studiare ironicamente, è sempre relegato in secondo piano e fuori dal sito.
Ora sono sicuro che le aziende sceglieranno ogni aspetto del 95-win10 o.s.E copialo.Ma il punto è che l'impresa del libero mercato avviata da Gates e Allen, che era in grado di realizzare ciò, sarà finita per sempre.
La discussione sembra sviare.Tecnologie _erode_.Ricordi J #?Perl?Tru64 UNIX?VAX?Il problema dell'insegnamento della "Programmazione in XY" è che le persone si perdono e non hanno un lavoro, quando XY è deprecato.
@DanielR.Collins: C'era una volta un lavoro in C #, ma due settimane prima di iniziare conoscevo solo C ++ e Java.Ha funzionato.Quindi, concetti, sì.
"Gli annunci di lavoro richiederanno chiaramente uno, non l'altro.": Ma questo dice solo quanto possano essere superficiali alcuni reclutatori.Un programmatore esperto che padroneggia, ad esempio, C ++, Python e Haskell, non avrà difficoltà a scegliere Java o C #.Sì, ci vorrà del tempo, ma preferirei dare una posizione Java a un programmatore del genere piuttosto che a qualcuno che ha programmato solo in Java nel corso della sua carriera.
Questa è una delle migliori risposte per me, perché affronta direttamente l'idea che l'istruzione universitaria consiste nel far capire a uno studente un principio generale piuttosto che un'implementazione specifica.Restando intrappolati nello specifico di dover ricordare LIMIT vs TOP, o pensando che i join (esterni) debbano essere eseguiti come `WHERE table.col = othertable.othercol (+)` (* rabbrividire * al pensiero di questo,sta accadendo) stanno perdendo di vista il quadro più ampio che sono lì per imparare a memorizzare e collegare i dati correlati insieme e considerarli in set piuttosto che riga per riga
@DanielR.Collins - Pragmaticamente parlando, tutti i principali DBMS dovrebbero supportare ANSI SQL e quindi le loro idiosincrasie sintattiche sono stratificate su questo.Tuttavia, la maggior parte dei datori di lavoro tende a elencare solo gli strumenti che utilizza e non riesce ad apprezzarlo davvero.A meno che tu non stia effettuando una messa a punto dettagliata delle query o facendo un uso massiccio di funzionalità specifiche della piattaforma, se sei competente in ANSI SQL puoi scrivere con competenza sulla maggior parte dei DBMS e solo cercare le funzioni di cui hai bisogno.
** "Si tratta di concetti. **" Questo è così vero e così preciso.Ho imparato la programmazione strutturata imparando BCPL.Quello che ho imparato in quel corso ha reso relativamente facile l'autoapprendimento da solo C, poiché era disponibile anche sul PDP-11 / 34A che avevamo in laboratorio in quel momento.Ma i concetti di base che ho imparato da BCPL hanno reso la transizione al C abbastanza banale.Solo più tardi ho scoperto che C era effettivamente il nipote di BCPL.:)
@dgnuff: Come dice Hardy in modo diverso, ma correlato: "... perché le lingue muoiono e le idee no".;)
Sì, tutti noi accademici abbiamo aneddoti sulla comprensione dei concetti e sulla transizione in modo indipendente a nuove lingue.Anch'io. Ma da quello che vedo degli studenti e delle popolazioni delle risorse umane sono scettico che sia generalmente così.Vorrei vedere le prove che la percentuale di persone che lo fanno senza una formazione specifica nelle nuove tecnologie è significativa.Se così fosse, l'intera industria della formazione professionale non esisterebbe.
xLeitix
2018-10-25 22:36:37 UTC
view on stackexchange narkive permalink

Un docente può costringerti a imparare una sintassi / linguaggio di programmazione specifico?

Ovviamente possono. Gli insegnanti sono generalmente incaricati di progettare il loro corso in qualsiasi modo ritengano sia più adatto per raggiungere i risultati di apprendimento previsti. In alcuni casi (soprattutto corsi più orientati al progetto) questo può significare lasciare la scelta della tecnologia aperta agli studenti, ma per altri corsi che impongono rigorosamente ciò che gli studenti dovrebbero usare può essere preferibile.

Inoltre, mentre io ho vinto Per commentare l'uso di Oracle in modo specifico, potrebbero esserci ancora buone ragioni per non usare quello che hai usato prima. In particolare, l'apprendimento di un dialetto SQL diverso può essere una lezione molto preziosa in sé. Ti fa capire meglio cosa fa esattamente parte di SQL (il linguaggio standardizzato) e cosa fa parte dell'implementazione specifica che utilizza Postgres.

Infine, gli aspetti pratici spesso impongono agli insegnanti di imporre determinate regole tecnologiche di base. Ho spesso avuto il caso di richiedere rigorosamente agli studenti di classi numerose (oltre 400 studenti) di aderire a tecnologie specifiche e persino a modelli di presentazione, perché non era accettabile dal punto di vista del tempo di valutazione che gli assistenti tecnici avrebbero dovuto dedicare del tempo a trovare una soluzione correre prima che possano iniziare a valutarlo. Chiaramente questo è un caso estremo, ma devi comunque capire che lasciare che ogni studente scelga la propria tecnologia aumenta rapidamente in termini di sforzo di valutazione.

Questo è tutto da dire, puoi certamente affrontare ( per esempio nelle valutazioni dell'insegnamento) se / che ritieni che gli obiettivi pedagogici del corso potrebbero essere raggiunti meglio utilizzando un dialetto SQL che già conosci, ma un reclamo formale non ha gambe su cui stare.

Sebbene in generale mi piaccia la risposta, ritengo che menzionando "più adatto a raggiungere i risultati di apprendimento previsti" nel primo paragrafo gli dai la massima importanza e direi che gli aspetti pratici menzionati nell'ultimo paragrafo sono la ragione principale della selezionedi una tecnologia.Questo è quello che sa, è quello a cui è abituato.
@problemofficer Questo può o non può essere vero.Non conosco il tuo insegnante.
Thomas
2018-10-25 22:48:31 UTC
view on stackexchange narkive permalink

Fai un passo indietro: quanti studenti ci sono nella classe? Ne indovino 100. Ogni studente avrà le proprie preferenze: dialetti SQL diversi, velocità e stili di apprendimento diversi, argomenti diversi, valutazioni diverse, ecc. Il docente non può soddisfare tutte queste preferenze, quindi è necessario scendere a compromessi.

Potrebbe essere solo il 10% in più di lavoro per il docente per adattarsi al tuo dialetto SQL preferito. Potresti pensare che sia ragionevole. Ma se ogni studente ha qualcosa di simile da sistemare, all'improvviso il docente ha il 1000% di lavoro in più. Chiaramente non è pratico.

Dal punto di vista del docente, è essenziale tenere sotto controllo il carico di lavoro del corso. Se lui o lei inizia a soddisfare le richieste, può sfuggirgli di mano molto rapidamente. Essere severi è un'abilità che i docenti devono imparare. Se vuoi qualcuno che personalizzi tutto secondo le tue preferenze, assumi un tutor privato.

Verissimo.E una parte di quel 10% del carico di lavoro aggiuntivo può già essere raggiunto da discussioni forse infinite con a) studenti il cui dialetto preferito è stato ammesso e che ora si lamentano di ricevere meno materiale e supporto rispetto a quelli che usano il dialetto principale della classe, eb) studenti il cui dialetto preferito era * non * ammesso e che sottolineano che anche altri hanno fatto ammettere il loro dialetto preferito, perché non può essere ammesso anche il loro.(Fonte: esperienza personale, nemmeno relativa a dialetti della stessa lingua, ma a linguaggi di programmazione completamente diversi.)
Anni fa ho seguito un corso di organizzazione e elaborazione di file e il professore aggiunto ha detto: "Puoi consegnarlo in qualsiasi sistema linguistico che desideri utilizzare perché posso leggerlo. Se non posso, sei responsabile di insegnarmene abbastanzacosì posso valutarlo. "C'era una restrizione contro l'uso di un linguaggio che "lo faceva per te" (nel senso che dovevi dimostrare di conoscere come codificare l'assegnazione ... per esempio non potevi usare una funzione `.Sort` per ordinare le cose).
Il commento di @J.ChrisCompton mi ricorda il mio consulente di tesi.Aveva il compito di scrivere un algoritmo per la moltiplicazione di matrici.In laboratorio ha scoperto una tastiera APL.Il resto, è un one-liner ... MrGreen
Jon Custer
2018-10-25 23:39:00 UTC
view on stackexchange narkive permalink

Quando ho seguito un corso di metodi numerici eoni fa, i primi incarichi dovevano essere svolti in Fortran 77. Dopo aver svolto alcuni compiti in Fortran, il professore è poi passato agli incarichi in APL, SPITBOL e C, ciascuno destinato a dimostrare come lingue diverse consentissero di affrontare i problemi in modi diversi. Non è stato speso tempo in classe per insegnare queste lingue, dovevamo leggere i manuali e capirlo da soli nella settimana disponibile. E ho imparato molto su un sacco di linguaggi e costrutti diversi che uso ancora oggi.

Ma puoi scommettere dollari sulle ciambelle che un incarico da fare in APL era accettato solo in APL. Se doveva essere SPITBOL, avresti potuto farla franca con SNOBOL (anche se avevi davvero bisogno della ricorsione) ma Fortran non avrebbe volato.

Sì, per molte ragioni, un professore può definire i parametri degli incarichi, comprese specifiche come il linguaggio di programmazione consentito.

SNOBOL aveva alcuni concetti interessanti, in particolare per i primi anni '60.Non l'ho mai usato da quel corso però.
Ho usato brevemente SNOBOL nei primi anni '80!
Mi è stato insegnato un po 'di SNOBOL all'università nel 1971, e il mio, mi ha reso molto più facile suonare XSLT quando l'ho incontrato nel 1999.
@MichaelKay non avendo mai usato SNOBOL ma avendo fuso il mio cervello con XSLT a un certo punto, non sono sicuro se dovrei prendere la tua dichiarazione come un'approvazione o una condanna di SNOBOL.
Bene, sia SNOBOL che XSLT hanno un modello di elaborazione basato sulla corrispondenza dell'input con i modelli e sull'attivazione di regole appropriate in base a quali modelli corrispondono.Tutto quello che sto dicendo è che se ti sei imbattuto in una lingua che usa quel paradigma, è molto più facile prenderne un altro;mentre se non hai mai incontrato quel tipo di linguaggio prima, potrebbe scioglierti il cervello.I concetti più potenti nell'informatica spesso richiedono un po 'di padronanza.
Fortran 77?Oh, sognavamo di scrivere Fortran 77!Sarebbe stato il lusso per noi.Abbiamo usato per codificare in COBOL in un vecchio serbatoio dell'acqua su un mucchio di rifiuti.Ci siamo svegliati ogni mattina con un carico di pesce in decomposizione scaricato dappertutto!
Anche se mi sono piaciute molte cose di SNOBOL, le strutture di controllo del programma facevano davvero schifo.Ho perso ogni interesse a programmarlo dopo il mio primo incarico.
Un altro voto per SPITBOL, che ho imparato al college e da allora non ho più avuto la possibilità di usare.Quell'orribile pasticcio di Perl che era l'intestazione dei primi script CGI di tutti sarebbero stati forse 2 righe di SPITBOL.Possiamo avviare una campagna per rilanciarlo?
RAZ_Muh_Taz
2018-10-26 02:24:15 UTC
view on stackexchange narkive permalink

Ho usato molte lingue durante i miei studi e la mia carriera e puoi essere certo di alcune cose

  1. A scuola, l'insegnante ha sempre ragione, quindi sali a bordo o scendi
  2. Non ci sarà mai un unico linguaggio perfetto da usare che sarà usato da tutti ovunque (SQL vs mongoDB, C ++ vs JAVA, l'elenco potrebbe continuare all'infinito)
  3. Imparare in modo diverso i linguaggi di programmazione sono un'abilità necessaria per un programmatore

È fantastico che un professore costringa gli studenti a usare un linguaggio meno popolare o un linguaggio che non è preferito. Ti aiuta a prepararti per il mondo reale in cui ti imbatterai in un lavoro / in una situazione in cui devi usare un linguaggio di programmazione che non hai mai usato prima. Gli ostacoli all'apprendimento di una nuova lingua a scuola ti aiuteranno a superare gli ostacoli all'apprendimento di una nuova lingua nel tuo futuro lavoro.

Dopo aver dovuto usare FORTRAN 77 e Perl 4 in un vero lavoro meno di un anno fa, posso garantire la necessità di poter apprendere rapidamente nuove lingue.
SQL vs MongoDB è ** molto ** più diverso da C ++ vs Java.È più simile a C ++ vs Haskell.
Amadeus-Reinstate-Monica
2018-10-29 16:36:45 UTC
view on stackexchange narkive permalink

Sì, ho il controllo delle mie classi e deciderò cosa vale i punti nel tuo lavoro e cosa no. Te lo dirò in anticipo, con tutto il tempo per lasciar perdere.

Non solo ti chiederò di usare la sintassi e il linguaggio che sto insegnando (per la mia facilità di valutazione e la coerenza dei risultati, come i tempi delle prestazioni), ma ti chiederò di seguire le mie regole di formattazione del codice per il rientro, i punti di tabulazione, i limiti sulla lunghezza della riga, i nomi delle variabili e come inserirli in maiuscolo e commentando nel tuo codice per aiutarmi a vedere cosa hai fatto e perché lo stanno facendo.

Poiché la verità irritata è che, quando entri nel mondo reale, scoprirai che scrivere codice funzionante non è sufficiente, il tuo codice deve essere manutenibile e leggibile da altri. E probabilmente dovrai leggere ed eseguire il debug di TANTISSIMI codice di altre persone, e allora lo apprezzerai.

Prima di diventare professore ero un responsabile di divisione responsabile del codice per un'azienda pubblica. Ai neofiti vengono spesso affidate attività di test e debug per familiarizzare con il codice e i sistemi e per valutare la loro esperienza e produttività.

Quindi, in primo luogo, i programmatori IRL passano ad altre società, dipartimenti o ruoli all'interno dell'azienda . Quindi non solo dobbiamo occuparci del codice di programmatori che non sono più con noi, i programmatori senior spesso lavorano sulla scadenza per NUOVI progetti critici e non hanno il tempo di eseguire il debug del proprio codice di anni fa, o addirittura di rispondere domande al riguardo.

Ciò rende la manutenibilità del codice molto importante, perché le librerie hardware e software, i sistemi operativi e il rilascio del compilatore / interprete cambiano molto più velocemente della nostra base di codice e danneggiano i nostri sistemi. Il codice deve essere leggibile, di facile comprensione e facile da seguire. Non voglio alcun codice "scatola nera" che "funzioni bene" perché quando smette di funzionare, non voglio riscriverlo per risolverlo.

Quindi lo impongo anche nelle mie classi. Sì, il tuo codice deve funzionare, ma non è l'intero voto. Devi usare gli strumenti che ti ho fornito, altrimenti non passi: poiché le aziende reali hanno degli standard, anche all ' editor che usi, e i miei compiti sono un esercizio in te che utilizza gli strumenti dati, non solo per ottenere la risposta giusta.

Devi anche scrivere codice che obbedisca alla mia formattazione del codice e alle linee guida per i commenti, quelle valgono un voto in lettera. Perché IRL se mi hai dato (il tuo manager) come programmatore, dovrei rispedircelo per una corretta formattazione, e ci sono 1 o 2 giorni di retribuzione e produttività perché non puoi seguire un semplice elenco di indicazioni scritte.

L'equivalente in classe è il tuo voto, quindi -10 per aver pensato erroneamente che ottenere la risposta giusta sia tutto ciò che conta per l'azienda. Come hai ottenuto la risposta è importante e anche la manutenibilità del tuo codice dopo che sei andato via o non lo gestisci più è molto importante.

@CaiusJard Sì, ho lavorato in un'azienda in cui ogni postazione di lavoro doveva essere identica e mantenuta in questo modo dagli amministratori di sistema.Stesso IDE, editor, debugger, compilatore, sistema operativo, librerie e persino le stesse icone nella stessa posizione sullo schermo.Anche la struttura delle directory era la stessa.Quindi chiunque potrebbe sedersi in qualsiasi stazione e lavorare, o aiutare qualcuno a trovare un insetto o qualsiasi altra cosa.Nessuna eccezione per stile o preferenza personale.Ma ci si abitua e l'uniformità e l'intercambiabilità forniscono vantaggi tangibili, soprattutto per l'assistenza remota: se il mio sistema e il tuo sono identici, posso riprodurre il tuo problema.
Cosa farai per la lezione inutile dell'ultimo semestre?È troppo tardi per cadere.
@Joshua Non è un mio problema!Quando ti dico i requisiti del giorno 1 e del giorno 2, se sei terribilmente offeso da loro hai ancora tutto il tempo per abbandonare senza alcun voto o penalità finanziaria, almeno nelle università in cui sono stato, come studente o professore.Quello che fai invece non sono affari miei, né responsabilità.Se vuoi laurearti, resta in classe e fai il lavoro che ti do.Proprio come nella vita reale: se vuoi lo stipendio, farai il lavoro seguendo le regole stabilite dal tuo capo, perché per il tuo capo, il tuo lavoro non vale lo stipendio se insisti a farlo a modo tuo.
Fábio Dias
2018-10-25 22:36:04 UTC
view on stackexchange narkive permalink

L'insegnamento implica più del semplice fare la lezione, devi preparare i materiali, avere familiarità con il contenuto, preparare esercizi, esami, ecc.

Come pensi che il professore lo farebbe senza limitare il dialetto? O come può il professore essere corretto con gli studenti senza limitarlo?

Esempio: "Preferiamo Oracle, ma accettiamo qualsiasi altro dialetto". Quindi lo studente che sceglie di farlo in pgsql sarebbe in svantaggio perché il materiale non è stato preparato per questo, la sintassi è diversa, gli esempi non funzioneranno, ecc ...

Ma poi aggiungiamo pgsql perché è ben noto. Ma non avrebbe senso aggiungere pgsql e non usare anche mysql. Quando si ferma?

Per essere onesti, c'è una risposta semplice a questo: se tutto il materiale è preparato per Oracle e uno studente sceglie, di propria volontà, di utilizzare qualcos'altro, ha scelto di essere in svantaggio.
Sì, ma poi il ragazzo fallisce, dai la colpa al professore, finisce per creare un putiferio.Certo, si sbaglierebbe, probabilmente, ma qualsiasi reclamo ufficiale molto probabilmente dovrebbe essere indagato a fondo, questo può diventare davvero complicato.Più facile stroncarlo sul nascere.Inoltre, come giudicherebbe il professore gli esami?(l'approccio "solo funzionalità", "scatola nera", potrebbe funzionare, ma piuttosto ricontrollo cosa hanno fatto gli studenti)
@FábioDias Direi anche che l'approccio "scatola nera" non funzionerebbe effettivamente, poiché la programmazione (anche SQL) riguarda tanto il codice quanto il risultato.Cose come la formattazione, lo stile, l'architettura, le migliori pratiche, ecc. Fanno tutte parte dell'apprendimento di una nuova lingua o tecnologia, quindi non valutarle è un enorme disservizio per i tuoi studenti.
Jay
2018-11-01 00:55:38 UTC
view on stackexchange narkive permalink

Hmm, non vorrei essere scortese, ma questa sembra una domanda piuttosto bizzarra. È come dire: "Il professore insiste che lavoriamo dal libro di testo X. Ma preferirei usare il libro di testo Y." Può darsi che tu possa dimostrare che Y è un libro di testo migliore. Ma se la classe sarà coerente, tutti gli studenti dovrebbero lavorare dallo stesso libro di testo.

Se tutti usassero un dialetto SQL diverso, il professore dovrebbe includere discussioni su tutti i dialetti diversi in ogni classe. Non solo il prof dovrebbe conoscere tutti i dialetti e tutte le differenze, ma dovrebbe dedicare del tempo alle lezioni per discutere costantemente queste differenze, piuttosto che concentrarsi sui punti fondamentali. Per gli studenti che hanno già una completa familiarità con SQL, discutere le differenze tra diversi dialetti potrebbe essere interessante e utile. Ma se lo scopo della classe è insegnare SQL, tali digressioni non sarebbero solo un peso per il professore, ma anche per gli studenti. Gli studenti dovrebbero smistare, di che dialetto sta parlando adesso? Questo vale per me o è quello che non sto usando? Il livello di complessità verrebbe notevolmente moltiplicato.

E come classificherà i compiti? Dovrebbe avere tutti questi diversi dialetti installati sul suo computer? E tieni traccia di quale studente sta usando quale dialetto e assicurati di testare con quello giusto?

E se qualcuno dicesse: "Non voglio usare affatto SQL. Voglio usare Mongo" ?

E se qualcuno dicesse: "Non voglio saperne di più sui database. Voglio imparare a scrivere file flat"?

E se qualcuno dicesse: "Non voglio" Voglio saperne di più sui database. Voglio conoscere la rivoluzione francese "?

Dove andrebbe a finire?

Non è saggio trascinare i libri di testo in questo.
@Joshua Non sono sicuro di quale sia il tuo punto.La parte sui libri di testo era un esempio.
È una lotta con più in gioco della variante linguistica;potresti facilmente perdere quello da manuale a causa del peso dell'altro lato e vincere comunque questo.
Dmitry Savostyanov
2018-10-25 23:50:51 UTC
view on stackexchange narkive permalink

La maggior parte delle università del Regno Unito comunica le informazioni sui propri corsi e moduli tramite i cosiddetti descrittori di corsi e moduli. Spesso fanno parte del manuale del corso o vengono forniti nel pacchetto informativo del modulo.

Leggi il descrittore del modulo e dai un'occhiata agli obiettivi di apprendimento per il modulo. Descrivono le abilità e le conoscenze che otterrai dopo aver completato con successo questo modulo. Il tuo docente è qui per aiutarti ad acquisire queste abilità.

  • Se i LO dicono che imparerai una lingua / sintassi, allora questo è ciò che devi imparare. Presumibilmente una scelta della lingua è ben giustificata poiché è diventata un documento formale (che fa parte del tuo contratto di apprendimento).
  • Se i LO dicono che imparerai a gestire un database, allora devi gestire un database utilizzando qualsiasi linguaggio adatto. Se il docente desidera imporre una restrizione, deve giustificarla utilizzando ragioni oggettive, ad es. questo programma è obsoleto, non è adatto allo scopo, è proprietario e l'Università non ha una licenza per questo, ecc. impostato e non può essere disturbato per saperne di più. Questo non è un buon esempio da seguire.
Penso che ammettere di avere un set di abilità limitato sia un ottimo esempio da seguire.Non ci si deve fidare di chi non ammette i propri limiti.
Questo trascura l'overhead (possibile test harness automatico, ecc.) Nella valutazione / classificazione di una molteplicità di contributi linguistici.
@MichaelKay È bello ammettere le tue capacità limitate, ma non è bello rendere i tuoi limiti un problema di qualcun altro, in questo caso il problema dei tuoi studenti.Il compito dei docenti è aiutare gli studenti a sviluppare le proprie capacità, non limitarle.
@DanielR.Collins Grading è il lavoro del docente.Non è giusto semplificare il tuo lavoro a scapito della riduzione dell'esperienza dei tuoi studenti.
@DmitrySavostyanov: Dovremo essere in disaccordo.Essere efficiente con il tuo tempo in modo da poter aiutare più persone più profondamente è saggio.
@DanielR.Collins Dobbiamo sicuramente non essere d'accordo.Essere "efficienti" per fornire un supporto peggiore a più persone non sarebbe mai stato il mio obiettivo.
Secondo il mio ultimo commento, mi interessa aiutare più persone * più profondamente *, ad esempio, con presentazioni in classe meglio preparate, più tempo per riunioni personali e consigli, feedback più approfonditi sui concetti per gli incarichi, ecc. Sembra strano che tu 'd invece dare la priorità al tempo di budget per sostenere gli studenti * che non devono imparare una nuova lingua *.
@DanielR.Collins Voglio concentrarmi sull'aiutare gli studenti a imparare cosa * vogliono * imparare e cosa promette il descrittore del modulo che impareranno.Se sono venuti per imparare l'analisi dei dati, ad esempio, possono scegliere una lingua per il loro compito: la lingua è solo uno strumento per aiutare gli studenti ad apprendere la materia.Limitare la loro scelta della lingua riduce solo la loro esperienza.E sono felice di impararne uno nuovo, se devo farlo per la marcatura proposta.Come posso incoraggiare gli studenti a imparare se non voglio imparare da solo?
Non si tratta di istruttore che non conosce una lingua, si tratta di costruire un singolo test harness per aiutare ad automatizzare la valutazione e risparmiare tempo per altri scopi.Fare riferimento al mio primo commento;ora stiamo solo litigando in circoli.
@DanielR.Collins Quindi, sostenete la valutazione automatica e lo chiamate "feedback più profondo" e "aiutare più persone"?Ci sono sicuramente alcuni cerchi qui.
Non ho detto, né usato, la valutazione automatica.Sei intenzionalmente ottuso.
@DanielR.Collins Hai detto "per aiutare ad automatizzare la valutazione" e "cablaggio di prova automatico".La mia prima lingua non è l'inglese e mi scuso se ti ho frainteso, ma qual è la differenza fondamentale tra il tuo approccio e la valutazione automatica?
einpoklum
2018-10-27 21:34:19 UTC
view on stackexchange narkive permalink

In generale sì, ma forse non con la "spinta" artificiosa di uno specifico strumento commerciale

Sono d'accordo con le più risposte in linea di principio: gli insegnanti possono scegliere e scegliere come insegnare le loro classi e hanno molto margine di manovra per quanto riguarda la scelta degli strumenti che gli studenti possono utilizzare, nonché la forma e la sintassi per l'invio dei compiti.

Detto questo, se il docente di un corso impone l'uso di uno strumento e / o di un dialetto che:

  • Viene fornito da una sola entità commerciale
  • (forse ) Richiede agli studenti di spendere risorse finanziarie per ottenere l'accesso a questo strumento
  • (forse) Richiede che l'università spenda risorse finanziarie per accedere a questo strumento
  • È più comunemente usato, liberamente -alternative disponibili e ben valutate
  • e l'insegnante rifiuta di fornire una motivazione (minimamente credibile) per utilizzare esclusivamente lo strumento

... allora questo può essere etico problematico. È effettivamente una forma di pubblicità commerciale coercitiva da parte dell'insegnante - se non la generazione di entrate artificiali per il fornitore di tale strumento - e può essere contraria ai regolamenti dell'istituto accademico, o forse alle leggi statali.

Ora, ammetto che questa è una faccenda delicata, poiché stiamo parlando di regolare la libertà accademica con considerazioni alquanto estrinseche, quindi dovrebbe essere piuttosto eclatante. Dubito che dire "Usa la variante Oracle SQL" soddisfi i criteri di cui sopra, poiché ai fini del tuo corso probabilmente è effettivamente la stessa cosa di ISO SQL; o può essere banalmente adattato da altre varianti SQL; ea quanto pare c'è una "versione Express" che puoi usare gratuitamente. Ma nei tipi di casi che ho descritto sopra non è così semplice come suggeriscono altri rispondenti alla tua domanda.

Può essere.Oracle è disponibile legalmente gratuitamente (l'edizione "Express");nessuno ha bisogno di spendere risorse finanziarie.È discutibile se ci siano alternative "più comunemente usate" o "più apprezzate", questo dipende sicuramente da chi parli.Ma non è certo uno strumento usato di rado e non discutibile;ed è abbastanza comune nel settore che è molto probabile che uno studente trarrà un discreto vantaggio dall'averlo nel proprio CV.Non è nemmeno un caso di pubblicità non etica o qualcosa del genere.
@AnoE: Vedi modifica.
Ho votato positivamente.Solo una volta, voglio vedere la libertà accademica degli istruttori rovesciata dagli studenti della classe.Sono sicuro che un tale potere verrebbe abusato pesantemente, ma quando l'istruttore insiste per insegnare tecnologia in gran parte obsoleta, è tempo che l'istruttore se ne vada.
@Joshua: _Non vorrei_ vedere ribaltata la libertà accademica, e certamente non dagli studenti.I docenti hanno alcuni obblighi etici, anche se godono della libertà di insegnare come meglio credono.(In realtà, a loro non piace comunque.)
@einpoklum: Immagino che tu non abbia mai scoperto che una delle classi obbligatorie in cui ti trovavi fosse completamente inutile a metà.
@Joshua: Ad essere onesti, no, non l'ho fatto.Ricorda, tuttavia, che le università possono assegnare le classi obbligatorie principali agli insegnanti che insegnano loro in modo più serio, senza imporre un approccio specifico ai singoli insegnanti.
Ricordo che Oracle era libero di usare per l'apprendimento almeno 10 anni fa, molto prima che lo fossero la maggior parte dei sistemi.
@Ian: PostgreSQL, MySQL, MonetDB e altri erano sempre gratuiti e gratuiti, anche 10 anni fa.
@einpoklum, Se ricordo bene la maggior parte di questi erano ancora più fastidiosi di Oracle da eseguire su Windows.Erano anche molto nuovi all'epoca.
@Ian: Windows è un altro software commerciale e quello sicuramente non è disponibile gratuitamente.Inoltre, questa discussione sta cambiando argomento ...
La prima volta che ho sentito qualcuno chiamarlo ISO SQL ..
@CaiusJard: SQL è in realtà solo [ISO / IEC 9075] (https://en.wikipedia.org/wiki/SQL).
vallismortis
2018-11-03 18:00:39 UTC
view on stackexchange narkive permalink

Per quel che vale, con Oracle e PL / SQL non otterrai solo il database relazionale di base e l'esperienza SQL, ma anche un'esperienza pratica con alcuni aspetti di un database commerciale e le sue estensioni allo standard. Ciò ti consentirà di acquisire da solo quasi tutti gli altri sistemi RDBMS basati su standard e ti sembrerà immediatamente familiare. Potresti non avere un'altra buona opportunità per imparare un database commerciale prima di entrare nel mercato del lavoro, e avere Oracle PL / SQL lì sembrerà fantastico e forse aprirà alcune opportunità di lavoro che normalmente non sarebbero disponibili per i neolaureati.

Aggiungerò le mie esperienze alla pila per il contrasto. Le lezioni per il mio corso di Introduzione alla programmazione orientata agli oggetti a metà degli anni '90 sono state tenute in Fortran 77 (un linguaggio non -OO) perché il Il professore (di ruolo) non conosceva il C ++ e questo era il suo ultimo semestre prima del pensionamento. Ha tenuto lezioni utilizzando i suoi appunti (scritti su schede perforate) da un precedente corso di Strutture dati (basato su un libro di testo non correlato), mentre i laboratori di programmazione erano tenuti in C ++ da studenti laureati che sapevano davvero cosa stavano facendo (grazie, Hamid). Gli esami erano blue-book (saggio scritto) e richiedevano risposte a domande sulla programmazione orientata agli oggetti tratte dai compiti del laboratorio C ++ ... scritti in Pascal , un linguaggio che nessuno degli studenti della classe era stato insegnato ma si presumeva che lo sapesse già. Ogni studente ha ricevuto un 2,5 e il professore si è ritirato. Ho imparato la programmazione OO da uno studente laureato durante un incarico di laboratorio di due ore a settimana, mentre la sua attenzione era divisa tra altri 15 studenti.

Un altro esempio del semestre successivo (più pertinente alla tua situazione). La mia classe Database è stata insegnata senza database. Non c'erano database, niente SQL. I laboratori di programmazione erano interamente in C e prevedevano compiti come l'implementazione di strutture dati di base per supportare tabelle relazionali in memoria, la creazione di diversi indici basati su alberi binari, ecc. E la scrittura di query utilizzando le scansioni delle tabelle e quindi gli indici, quindi la valutazione delle loro prestazioni utilizzando big -O notazione e perfezionamento dei metodi di indicizzazione. Anche se sono andato bene in classe, non ha fornito alcuna esperienza pratica con alcun DBMS o linguaggio di query. Era un corso di informatica nella forma più pura. In retrospettiva, i concetti mi sono rimasti impressi e mi hanno aiutato a capire come eseguire il debug delle query per le prestazioni.

In sintesi, a livello universitario devi scegliere con saggezza le tue battaglie e spero che questo ti convinca che il tuo corso attuale non è poi così male. Sta a te trovare il modo per ottenere il massimo valore a lungo termine dai tuoi corsi.

Andrew Lazarus
2018-11-01 03:20:20 UTC
view on stackexchange narkive permalink

Sono d'accordo con tutte le altre risposte: ovviamente il docente può farlo ed è probabile che utilizzi Oracle per valutare il tuo lavoro.

Scrivo per aggiungere: penso che dovresti evitare estensioni Oracle o deviazioni da SQL, a meno che non semplifichino notevolmente la risposta in qualcosa di elegante. La differenza specifica che ho in mente è Usa la sintassi SQL JOIN standard , non la vecchia sintassi basata su WHERE di Oracle. Il primo può esprimere relazioni che il secondo non può, il secondo non è accettato da altri RDBMS e non posso credere che il tuo docente avrebbe utilizzato una versione di Oracle così vecchia da non prendere anche la sintassi standard SQL.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 4.0 con cui è distribuito.
Loading...