Matematiikan verkkokurssin tekeminen

verkkokurssi
|
pedagogiikka
|
verkkosivu
|
teksti
|
aktivointi
|
kuvat
|
videot
|
stack
|
tiedostot
|
työkaluja

Verkkokurssi

Lähtökohta

Halutaan tehdä verkkokurssi, jossa on sekä jotain muita materiaaleja

Kohderyhmä

Kehityspolku

materiaalia \(\Rightarrow\) luentokurssi \(\Rightarrow\) verkkokurssi \(\Rightarrow\) MOOC

Esimerkki

calculus-kirjan luvut 5-7
\(\Rightarrow\) integraalilaskennan luentokurssi
\(\Rightarrow\) integraalilaskennan verkkokurssi (2019)
\(\Rightarrow\) integraalilaskennan MOOC?

Muita materiaaleja

Pedagoginen suunnittelu

Matematiikan verkkokurssi

Matematiikka eroaa muista oppiaineista. Eri matematiikan kursseilla painotetaan eri asioita

Verkkokurssin pedagogiikka

Verkkokurssi eroaa tavallisesta opetuksesta tietyin tavoin.

Verkkosivu

Verkkosivun osat

Osien pitäminen erillisinä on hyödyllistä

Muotoilu ja teksti erotettuina:

<style>
.esimerkki {
background-color:#ccc;
display:inline-block;
margin-left: 40px;
border-left: 3px solid steelblue;
padding:8px;
}
</style>

<div class="esimerkki">Esimerkki 1. Kaikki muotoilut toimivat.</div>
<div class="esimerkki">Esimerkki 2. Kaikki muotoilut toimivat taas.</div>

Kaikki sekaisin:


<div style="background-color:#ccc;display:inline-block;
margin-left: 40px;border-left: 3px solid steelblue;padding:8px;
">Esimerkki 1. Kaikki muotoilut toimivat.</div>

<div style="background-color:#ccc;display:inline-block;
margin-left: 40px;border-left: 3px solid steelblue;padding:8px;
">Esimerkki 2. Kaikki muotoilut toimivat taas.</div>

HTML-koodi

Verkkosivun tekstit jäsennetään HTML-koodilla (Hyper Text Markup Language), joka auttaa

Muu sisältö

CSS-koodi

Verkkosivun muotoilu tehdään CSS-koodilla (Cascading Style Sheets).

JavaScript

Verkkosivulle saa toiminnallisuutta JavaScriptillä. Erilaisia kirjastoja:

Teksti

Pelkkä teksti

Pelkkä teksti voitaisiin kirjoittaa kerran (lähdekoodi) ja kääntää sitten eri muotoihin (HTML, pdf, ym.).

Matemaattinen teksti

Matemaattinen teksti on monipuolista: Lisäksi HTML-sivuun halutaan toiminnallisuutta.

Tästä johtuen, eri formaatteja (HTML, pdf) ei voi tehdä automaattisesti samasta lähdekoodista.

Matemaattisen tekstin kirjoittaminen

Matemaattista tekstiä on helpointa kirjoittaa LaTeXilla. MathJax on JavaSkripti-kirjasto, jonka avulla matematiikkaa voi kirjoittaa verkkosivulle.

MathJax muistuttaa LaTeXia paljon.

Jotain erojakin on

Kääntäminen: latex2mathjax

Integraalilaskenta-kurssia varten kirjoitettiin 100 pdf-sivua luentoja. Kääntämisen vaiheita

Aktivointi

Tekstin sekaan kannattaa sijoittaa tehtäviä.

Kysymys

Voidaan kysyä yksinkertaisia kysymyksiä.

Tehtävä.

Kuinka paljon on \(1+2\)?

(Kokeile aluksi laskea itse.)
Ratkaisu.

Suoralla laskulla saadaan: \(1+2=3\).

Vaiheittainen tehtävä

Vaiheittainen tehtävä

Epsilon-delta-todistus: http://integraali.com/cali/vaiheittain/vaiheittain3.html

Monivalintatehtävä

Voidaan kysellä käsitteitä ja väitteitä.

Hedelmät ja marjat: http://integraali.com/cali/monivalinta/monivalinta-tarkista7.html

Kuvien tekeminen

Rasterigrafiikkaa (tietty määrä pikseleitä)

Vertailua (vektorigrafiikat)

ominaisuus
TikZ (pdf/latex)
SVG
JSXGraph
pelkistetyin
helppo
matemaattinen
upotus, pdf
upotus, verkko
dynaaminen
graafiset tehtävät

TikZ

Koodi:

\documentclass[border=10]{standalone}
\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
\fill[gray!50!white] (0,0) circle (1cm);
\draw (0,0) circle (1cm);
\def\luku{1.5}
\draw[->] (-\luku,0)--(\luku,0) node[below left]{$x$};
\draw[->] (0,-\luku)--(0,\luku) node[below left]{$y$};
\end{tikzpicture}

\end{document}

kiekko

SVG

Koodi:

<style>
.arrow{stroke:black;stroke-width:2;marker-end:url(#arrow);}
.disc {stroke:black;stroke-width:2;fill:lightgray;}
</style>
<svg><defs>
<marker id="arrow" markerWidth="10" markerHeight="10"
refX="0" refY="3" orient="auto" markerUnits="strokeWidth">
<path d="M0,0 L0,6 L9,3 z" fill="#000" />
</marker>
</defs></svg>

<svg height="400" width="400" viewBox="-200 -200 400 400">
<circle class="disc "x="0" cy="0" r="100" />
<line class="arrow" x1="-150" y1="0" x2="150" y2="0" />
<line class="arrow" x1="0" y1="150" x2="0" y2="-150" />
<line class="arrow" x1="0" y1="150" x2="0" y2="-150" />

<text x="150" y="20"> x</text>
<text x="-20" y="-150"> y</text>
</svg>

x y

JSXGraph

Koodi:

<script type="text/javascript" charset="UTF-8"
 src="//cdnjs.cloudflare.com/ajax/libs/jsxgraph/0.99.7/jsxgraphcore.js"></script>

<div id='testikuva' class='jxgbox' style='width:400px; height:400px;'></div>

<script>
var taulu = JXG.JSXGraph.initBoard('testikuva', 
{boundingbox:[-2, 2, 2, -2],axis:true,
showCopyright:false,showNavigation:false});

var luku = 1.5;
var s = taulu.create('arrow', [[-luku,0], [luku,0]],{color:'blue'});
var s = taulu.create('arrow', [[0,-luku], [0,luku]],{color:'blue'});

var a1 = taulu.create('point', [0,0], {color:'none', name:''}),
    a2 = taulu.create('point', [1,0], {color:'none', name:''}),
    c1 = taulu.create('circle', [a1, a2]);
    
var t1 = taulu.create('text',[luku-0.1,-0.3,
function() {return '\\[x\\]';}],{fontSize:24});
var t1 = taulu.create('text',[-0.5,luku+0.2,
function() {return '\\[y\\]';}],{fontSize:24});
</script>

Kääntäminen

SVG \(\Leftrightarrow\) TikZ:

On mahdollista tehdä SVG-koodilla kuvakoodi, joka kääntyy sekä SVG että TikZ-kuvaksi.

Koodi:

%
<!-- kaikki mitä ei tarvita svg-kuvassa \begin{tikzpicture} \fill svg{ -->
%<svg width="400px" height="400px">
svg-koodi
%</svg> %
<!-- }; \end{tikzpicture} -->

Selain näkee:

<svg width="400px" height="400px">

svg-koodi
</svg>

LaTeX näkee:

\begin{tikzpicture}
\fill svg{

svg-koodi
}; \end{tikzpicture}

SVG \(\Rightarrow\) TikZ: helppo, voi upottaa

TikZ \(\Rightarrow\) SVG: OK, pdf-tiedoston voi kääntää svg-tiedostoksi

Vienti ulos ohjelmista

TikZ-koodia voi viedä ulos muun muassa:

PNG-kuvien tekeminen

PNG-kuvia ja kuvanmuokkausta on helppo tehdä ImageMagick-ohjelmalla https://imagemagick.org/index.php

Tilanne

Ratkaisu: käytetään ImageMagick-ohjelmaa .bat-tiedostolla (batch-tiedosto).

Batch-tiedoston koodi:

mkdir png-versio
magick mogrify -path png-versio
-density 1500 -resize 1000x1000 -format png *.pdf
cd png-versio
magick mogrify -bordercolor White -border 1x1 *.png
magick mogrify -bordercolor Black -border 4x4 *.png

 

Videoiden tekeminen

Erilaisia videoita:

Laskeskeluvideo

STACK

Satunnaistaminen

Voidaan arpoa tehtävän lukuarvot, jolloin saadaan

Lausekkeen sieventäminen

Ongelmatilanne (teoreettinen)

Ratkaisu: voidaan kieltää merkkijono "diff"

Tiedostot

Varmuuskopiointi

Tiedostot kannattaa varmuuskopioida eri tavoin.

Tiedostojen päivitys

Useiden tiedostojen erillinen päivitys on hankalaa, koska samat muutokset pitäisi käydä tekemässä eri tiedostoihin. Esimerkiksi teksti voi olla sekä pdf- että html-tiedostoissa.

Kannattaa päivittää yhtä tiedostoa, jonka voi kääntää muiksi tyypeiksi.

Toimitusvarmuus

Työkaluja

Verkkosivut

Verkkosivujen tekemistä voi helpottaa rutiineilla.

Linkkisivu

Aiheeseen liittyviä linkkejä: http://cs.uef.fi/~juhuusko/verkkokurssi/verkottaminen-linkkeja.html