I denna uppsats presenteras en grundlig utvärdering av CS for Scientists, en CS 1-kurs avsedd att ge framtida forskare en överblick över disciplinen. Kursen tar ett brett och första förhållningssätt som utnyttjar studenternas intresse och erfarenhet inom naturvetenskap, matematik och ingenjörsvetenskap. I motsats till många andra stilar av CS 1, denna kurs förutsätter inte att dess studenter kommer att studera mer datavetenskap, men det försöker att förbereda dem om de väljer att. Vi sammanfattar det senaste årets bedömningar av studenternas lärande, bevarande och påverkan med särskild uppmärksamhet på kvinnors röster. Där det är möjligt, jämför vi dessa studentåtgärder med dem från en traditionell, tvingande-första CS1 som denna nya kurs ersatte. Uppgifterna hittills tyder på att CS for Scientists avsevärt förbättrar studenternas förståelse av CS, dess tillämpningar och praktik. Kategorier och ämnesdeskriptorer Allmänna termer: Mätning, Design, Human Factors Nyckelord: CS för forskare, introduktion CS, CS 1 bedömning Scrutiny verkar vara ett oundvikligt öde för introduktion av datavetenskap. Inom ett så dynamiskt område som CS bör vi som undervisar CS0 och CS1 sträva efter att förbli relevanta och aktuella. Samtidigt försöker vi behålla de ämnen och färdigheter som gör det möjligt för våra studenter att klara av nästa års förändringar såväl som förra årets. Denna balans är särskilt känslig när man utformar inledande CS för forskare. KS:s föränderliga inverkan på alla vetenskapliga discipliner har varit dramatisk och väl dokumenterad, t.ex. [29] [31]. Som George Johnson uttryckte det: "All vetenskap är datavetenskap." [17] För att utnyttja CS växande betydelse ersatte vi 2006 vår traditionella, Java-baserade, objekt-late CS 1 kurs med en Pythonbaserad, bredd-första kurs med smeknamnet CS for Scientists [1]. Vårt mål var att skapa en läroplan "lämplig för alla studenter som avser att läsa naturvetenskap eller ingenjörsvetenskap (inklusive CS-studenter)". [26] I synnerhet hoppades vi att detta nya erbjudande skulle (1) utveckla programmerings- och problemlösningsfärdigheter användbara inom teknik, matematik och naturvetenskap, (2) locka studenter att fortsätta med CS, och (3) ge en sammanhängande, intellektuellt övertygande bild av CS, även som slutkurs i CS. Det är en underbar tid att undervisa CS 1! Curricular innovationer inom introduktion CS är inspirerande och många. Många av dessa experiment drar styrka på ett liknande sätt: genom att väva en tematisk struktur mitt bland inledande CS-ämnen [15] Pedagogiskt populära stilar av CS 1, såsom imperativ-först eller objekt-först [10], gör alla det implicita antagandet att det kommer att finnas något andra. Vi visste att bara en bråkdel av våra elever skulle fortsätta med CS, även om vi hoppades göra det till en stor del! Vi antog att bredd först skulle passa bäst elever för vilka klassen också kan vara bredd sist. Bredd först CS är långt ifrån nytt. Som CC2001 sammanfattar träffande, den bredd-första modellen har inte haft den framgång som dess förespråkare hade föreställt sig... de flesta bredd-första kurser som finns idag verkar leda-in till en mer traditionell programmeringssekvens. Denna modell, som har flera lyckade implementeringar, beskrivs i CS100B... [10] Vår CS for Scientists tar denna svårvunna erfarenhet till hjärtat; CS100B är vår läroplans grund. Ändå har vår kurs betydande förskjutningar i fokus för att betjäna framtida forskare och ingenjörer: multiparadigmprogrammering, utnyttjande av befintlig kod, CS inflytande på vetenskap idag, och erkännande av verkligheten att många studenter inte skulle kunna gå en annan CS-kurs efteråt. Kanske det arbete som ligger närmast CS for Scientists är Sedgewicks och Waynes kommande text [26] och Princeton Universitys kurs, COS126, från vilken den har vuxit. Vår skuld till COS126 är stark i anden, men flera skillnader skiljer vårt erbjudande åt. För det första, Tillstånd att göra digitala eller hårda kopior av hela eller delar av detta arbete för personligt bruk eller klassrum beviljas utan avgift under förutsättning att kopior inte görs eller distribueras för vinst eller kommersiella fördelar och att kopior har detta meddelande och den fullständiga hänvisning på första sidan. För att kopiera på annat sätt, eller återpublicera, för att posta på servrar eller för att omfördela till listor, krävs tidigare specifik behörighet och/eller avgift.  istället för att arbeta enbart inom det objektorienterade paradigm som erbjuds av Java, tar vi en multiparadigm strategi via Python. På grund av denna förändring har vi bidragit med ett fritt tillgängligt organ av Python-programvara för att stödja våra uppdrag och laboratorier. Vidare har vi kunnat jämföra studenternas akademiska och affektiva förändringar i våra gamla och nya erbjudanden. Här rapporterar vi resultaten av detta års långa utvärderingsarbete. I denna rapport presenteras tre specifika bidrag som CS for Scientists lägger till de insatser som inleddes under [24] [35]: -Fullborda CS 1-material. Två 15-veckors laborationer, uppdrag och föreläsningsbilder är fritt tillgängliga [1]. - Studentcentrerad utvärdering. Vi redovisar resultat från pre- och post-term-mätningar av studenternas engagemang och förståelse. Vi har följt kvarhållandetrender och jämfört effekten av den nya läroplanen med den Java-baserade kurs den ersatte. - Spårar könsgrupper. Där så är möjligt följer dessa bedömningar effekterna på både kvinnor och män tillsammans och var för sig. Data tyder på att CS for Scientists lyckas på tre sätt: studenter "får" betydelsen av CS för sina framtida vetenskapliga strävanden och dess betydelse som en fristående disciplin; studenter lyckas i framtiden CS kurser i större utsträckning; och de fortsätter att studera CS så ofta - och kanske mer - än från traditionella alternativ. I varje åtgärd gynnar kvinnor minst lika mycket som män. Vi hoppas att denna läroplan, dess stödmaterial och dess bedömningar kommer att vara till nytta för andra CS-pedagoger som betjänar framtida forskare, matematiker och ingenjörer. 186 förstaårsstudenter tog CS för forskare hösten 2006: alla av dem bedriver en examen i vissa naturvetenskap, d.v.s. matematik, ingenjörsvetenskap, fysik, kemi, biologi, CS, eller kombinationer av dessa områden. Även om vetenskapsmännen är säkra, har majoriteten ännu inte valt sitt huvudområde, ett beslut som inte krävs förrän i slutet av det andra året vid vår institution. För att genomföra vår bredd-första läroplan, bröt vi terminen i fem tre veckor enheter (se tabell 1 ) där studenter skulle lära sig och öva olika programmering paradigm. För att stödja alla dessa med ett minimum av syntaktiska overhead, följer vi [6] och [9] att välja ett multiparadigm språk, Python. För att skapa förutsättningar för utvärderingsresultaten sammanfattar vi kortfattat CS för forskarnas innehåll. Närmare uppgifter finns i [1]. Ett medelstort slutprojekt fortsätter med objektorienterad stil, där eleverna väljer bland tre alternativ: en fysisk simulator och grafiskt gränssnitt för ett poolspel; en statsbaserad styrenhet som navigerar en simulerad robot genom en kontinuerlig miljö; eller en finitautomatonsimulator, med grafik, av ett litet rymdfyllningsmedel som liknar Karel [4]. De finita-state maskiner som används i dessa senare två slutliga projekt kompletterar in-class övningar på (o)computability och deterministic finita automata. Dessa föreläsningar, förstärkta av sista examen frågor, avsluta terminen med en fågel-öga syn på vad beräkningar kan och inte kan göra, t.ex., stoppa problemet och flera andra okomputerbara funktioner. Figur 1 visar några exempel på studentarbete från hösten 2006. I genomsnitt fullföljde eleverna fyra programmeringsproblem per vecka.  Att ändra läroplanen är en sak; att byta elever är en annan. Med vår omformning av den inledande datavetenskapen hoppades vi att † Sverige observerade den 30 februari 1712, som föll 107,852 dagar före den 25 juni 2007. Fredag är strikt vanligare som 13 th än någon annan dag i veckan. 267 studenter skulle (1) visa uppskattning för mångfalden av ansökningar och undersökningar som görs i CS, (2) lära sig en bredare och mer representativ uppsättning av datavetenskapliga ämnen, (3) uppvisa programmering och beräkningstänkande färdigheter som krävs för framgång i CS 2, (4) välja att fortsätta sin studie av CS i större antal, och (5) njuta av sin CS för forskare erfarenhet. Vi har hela tiden försökt bedöma hur kvinnor har upplevt kursen, till skillnad från män. Att öka antalet kvinnliga majorer överträffar tillväxten i sig som en prioritet för vår avdelning. Vi utvärderade studentbeteenden genom innehållsprov, opinionsundersökningar, kursutvärderingar, respons och poäng per problem, inskrivningsnummer och jämförelser med kohorter från den tidigare, imperativt-första CS 1 läroplanen. Därefter tar vi itu med de fem målen ovan i sin tur. För att utvärdera hur studenternas uppfattningar om datavetenskap förändrades under terminen ställde vi två frågor om både den första och sista skoldagen: "Vad är datavetenskap?" Och "Beskriv en sak en forskare i CS kan studera." Svaren på "Vad är CS?" har kodats in i fyra nivåer av sofistikering: Nivå 1 (inga) representerar icke-svar såsom "datavetenskap" eller "teknikstudier", liksom rent derivat/analytiska sådana, t.ex. "använda kod för att få datorer att göra saker" eller "tänka ut hur datorer fungerar". Svar som artikulerar några av syntesen eller bredden inom CS är nivå 2 (naiva), t.ex. "programvara och hårdvara design" och "kodning, debugging, och analysera problem för att utveckla datorbaserade lösningar." Svar som erkände fältet bortom fysiska datorer och deras programvara blev Nivå 3 (grundläggande), t.ex. "studiet av beräkningsalgoritmer och deras tillämpningar". Slutligen, de mest nyanserade svaren blir nivå 4 (detaljer): t.ex., "en hel del handlar om allmänna, språk-agnostiska algoritmer och relativa meriter av snabbhet och effektivitet - i vissa fall faktiskt undrar hur och om något är möjligt. CS är inte programmering, det genomförs i programmering." Vad kan en CS-forskare studera? För oss drev dessa resultat hem de oprövade förutfattade meningar som många elever för med sig till en första CS-kurs. Särskilt oroande, men kanske föga förvånande bland en vetenskapligt fokuserad grupp, var den allmänt hållna uppfattningen att CS helt enkelt är tekniskt stöd för andra discipliner. Å andra sidan citerade betydligt fler studenter (t=0.05) en beräkningsapplikation i sig i end-of-term undersökning; samma betydande förändring framträdde i den mer nyanserade förståelsen av CS som ett oberoende och övertygande studieområde. Dessa resultat tyder på att en naturvetenskaplig läroplan inte behöver återföra CS som tjänare till andra områden. Snarare genom att "börja där studenterna är", läroplanen kan utnyttja befintliga passioner för att omrama CS många roller bland matematik, vetenskap och ingenjörsvetenskap idag. Tidsanvändningsundersökningar förstärker denna hypotes, med CS motivera den största mängden arbete bland första årets studenters kurser: Figur 3. Studentrapporterade timmar per vecka i den föreskrivna läroplanen för första året. Förväntade betyg finns inom parenteser. Det är osannolikt att figur 3 s data härrör från oro för att klara kursen. I samma undersökning rapporterade eleverna sina förväntade betyg i varje klass: både män och kvinnor förväntade sig högre betyg i CS 1 än i sina andra klasser. Men dessa siffror talar bara till de nya CS för forskare; tidigare studenter gjorde inte dessa undersökningar. De två följande frågorna, å andra sidan, står i direkt kontrast till studenternas lärande mellan de gamla och de nya CS 1-planerna. Den 97-procentiga genomströmningen för de nya CS 1 tyder på att eleverna -06 kunde ha absorberat ett större, mer representativt tvärsnitt av datavetenskapliga ämnen. Den nya kursen omfattade en strikt superuppsättning av de ämnen i Java-baserade, imperativt-första CS 1 som den ersatte. Den slutliga examen frågor sammanfatta detta koncist i Figur 4. Till höger är den gamla vs. nya median slutprov poäng, tillsammans med medianpoäng för kvinnor, män, och alla studenter i tre aspekter av kursen. På första rouge, resultaten kan tyckas nedslående: den nya final examen median 78% är betydligt mindre än den tidigare examen median 85%. Dessutom är skillnader i slutprovspoäng mellan manliga i kvinnliga studenter betydande (t=.05), med en lucka på sju poäng. Detta kan återspegla tendensen för män att komma till college med mer CS erfarenhet än kvinnor. Kvinnorna var i genomsnitt högre på HW-uppdrag; skillnaderna i de totala betygen var inte signifikanta. Nedgången i examenspoäng från tidigare CS 1 kurs tyder också på en kompromiss: skillnader i bredd gör det möjligt att mer material lärdes, trots den nedåtgående trenden i poäng. För att testa om bredden verkligen kom på bekostnad av djupet jämförde vi studentkohorternas CS 2-föreställningar. Vår kurs våren 2007 CS 2 var oförändrad jämfört med tidigare erbjudanden. Hälften av CS 2 undervisar Java, med fokus på objektorienterad 268 design av list- och träddatastrukturer, tillsammans med grafik och händelsebaserad programmering. Den andra halvan täcker en mängd olika ämnenografialgoritmer, tolkning, turningsmaskiner, vanliga språk, och logik programmering -använder Scheme, Prolog och JFLAP. Ingen Python alls används i CS 2. Vårens kurs CS 2 omfattade 32 studenter från de nya, pythonbaserade CS 1 och 13 studenter från de äldre, javabaserade CS 1. Figur 5 rapporter mitttermin och slut tentamen poäng från dessa grupper. Uppgifterna i figur 5 bekräftar våra misstankar om att användning av python tidigt inte missgynnar de studenter som bedriver en typisk CS major. Skillnaderna mellan alla elever i medelvärden i figur 5 är inte stora, men de är betydande på t=0,15-nivå. Med tanke på att python inte alls användes i CS 2, och att CS 2 största betoningen var Java och objekt (som i den gamla CS 1), anser vi att även bristen på statistiskt signifikanta prestationsskillnader ger ett pedagogiskt signifikant resultat. Att bara en kvinna hade återvänt från den tidigare CS 1 avslöjar en avgörande drivkraft för vår nya CS for Scientists läroplan. Att kvinnorna från den nya CS 1 klarade sig och -eller bättre än - män utökar de uppmuntrande resultaten av [24] att en övertygande tematisk struktur inom CS 1 kan tjäna alla studenter väl, även med ett tema så brett som vetenskap och teknik. För att vara säker, Figur 5 resultat som visar lika (eller bättre) CS 2 prestanda efter den nya CS 1 är meningsfull endast om studenter i jämförbart antal fortsätter att bedriva CS efter den första kursen. Om större antal sjunker kan det trots allt vara självval och inte pedagogisk effektivitet som förklarar en ökning av kunskap och kompetensutveckling. När detta skrivs, har inga studenter från 2006 års erbjudande av CS för forskare förklarat en stor; detta beslut kommer halvvägs genom andra året. Ändå har vi två terminer av CS 2 inskrivning: Figur Dessa kvarhållande tal är bland de mest nedslående av detta experiment: vi hade hoppats att se betydande ökningar i våra CS 2 nummer. Eftersom det stora valet är ett nollsummespel, förbjuder politiska överväganden intervjuer eller enkätundersökningar av anledningarna bakom figur 6 s plattlinje. Men en möjlighet som är värd att begrunda är samtidigt den mest ödmjuka och hjärtevärmande. Kanske är stora val både för personliga och för viktiga för att vara beroende av första intryck. Som CS utbildningssamhället träffande påpekar, "mina studenter gillade det!" är mer anekdot än bevis, särskilt i frågor om studentinlärning [18][34]. Även om vi har försökt nå bortom åsikten om mått på studentförändring, tror vi också att det påverkar saker och ting. Både majorer och icke-majorer kommer att bära sina känslor om CS varhelst deras framtida arbete tar dem. Även studenter som beslutar att en termin av CS är tillräckligt, hoppas vi, kommer att behålla positiva associationer med fältet. Eftersom denna kurs ersatte en procedur-då-objekt Java kurs följer vi parallella utvärderingars ledning [11][33] i fråga om hur studenternas åsikter skilde sig mellan de gamla och nya erbjudandena.
Detta beslut träder i kraft dagen efter det att det har offentliggjorts i Europeiska unionens officiella tidning. skapade en bredd-första CS1 kurs för forskare REF.
Evaluating a breadth-first cs 1 for scientists
{'venue': "SIGCSE '08", 'journal': None, 'mag_field_of_study': ['Computer Science']}