% (C)opyright D. Spittank % letzte Aenderungen: Su 12. Dec 18:22:31 CEST 2010 % % diese Datei: Programmiersprachen.tex % % Dieses Dokument steht unter der Creative Commons by-nc-sa-Lizenz. % Folglich darf es beliebig kopiert und bearbeitet werden, % sofern das Folgeprodukt wiederum unter dieser Lizenz vertrieben wird. % Eine kommerzielle Nutzung ist nicht erlaubt. % % Die detaillierten Lizenzbedingungen finden sich auf der Seite % http://creativecommons.org/licenses/by-nc-sa/3.0/deed.de % % Details u.a. dazu, wie eine maschinenlesbare Lizenzdatei in das Dokument % eingebunden werden kann, finden sich in der Fachseminarzeitung: % http://humbert.in.hagen.de/iffase/Artikel/latex-2007-10-01.html % % Die zum Setzen notwendigen Dateien finden sich unter: % % vorspann-seminar.tex http://www.ham.nw.schule.de/bscw/bscw.cgi/1187088 % lizenz.xmp http://www.ham.nw.schule.de/bscw/bscw.cgi/1187088 % Komplett.bib https://haspe.homeip.net/projekte/ddi/browser/tex/BIB/ (wird regelmäßig erneuert) \documentclass[10pt,ngerman]{beamer} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage{graphicx} \usepackage{rotating} \usepackage{multicol} \usepackage{tikz} % Tikz \usetikzlibrary{arrows,positioning} \tikzset{ %Define standard arrow tip >=stealth', %Define style for boxes punkt/.style={ rectangle, rounded corners, draw=black, very thick, minimum height=0.8cm, minimum width=2cm, text centered}, punkt2/.style={ rectangle, rounded corners, draw=black, very thick, minimum height=0.8cm, minimum width=3.5cm, text centered}, % Define arrow style pil/.style={ <->, thick, >=stealth,}, pil2/.style={ ->, thick, gray, densely dashed, >=stealth,} } \usetheme{JuanLesPins} % Darstellung noch nicht angezeigter Elemente %\setbeamercovered{transparent=10} %Mobile Informatiksysteme in der Schule % Um was geht es? % Stand in der Schule % Ziel: Informatische Vernunft und mündiger Bürger % Verbreitung % Verbote % Idee: Besser Aufklärung % Stand in der Forschung % Voraussetzungen % Vorteile % Nachteile % Einsatzbeispiele % Informatik % Außerhalb der Informatik % Auswahlkriterien % Software % Hardware % Sonstige % Verbreitete Plattformen % Symbian S60, Meego, WebOS, % Windows Phone 7 und iOS % Android % Android % Umgebung % API \input{vorspann-seminar} \title{Mobile Informatiksysteme in der Schule} \author{Daniel Spittank} \institute{Bergische Universit\"at Wuppertal} \date{Montag, 21. November 2011} \usepackage{xmpincl} \includexmp{lizenz} % Quelltexte % Quelltexte \RequirePackage{listings} \lstset{showspaces=false, showstringspaces=false showtabs=false} \lstset{tabsize=3} \lstset{frame=single, frameround=ffff} \lstset{extendedchars=true} \lstset{basicstyle=\ttfamily\scriptsize, keywordstyle=\color{blue}\bfseries, identifierstyle=\color{black}\bfseries, commentstyle=\color{gray}} \lstset{backgroundcolor=\color{white}} \lstset{numbers=left, numberstyle=\sffamily\tiny, stepnumber=1, numbersep=5pt} \lstset{captionpos=b} \lstset{breaklines=true} \lstnewenvironment{lstpy}[1][]{\lstset{language={Python},caption={Quelltext},#1}}{} \lstnewenvironment{lsthtml}[1][]{\lstset{language={HTML},caption={Quelltext},#1}}{} % Zitate \usepackage[german=quotes,threshold=30,thresholdtype=words]{csquotes} \newcommand{\zitat}[4][]{\textquote[{\citealp[S.~#4]{#3}}]{#2}#1} \newcommand{\zitatblock}[4][]{\singlespacing \small \blockquote[{\citealp[S.~#4]{#3}}]{\textcolor{gray}{#2}}#1 \normalsize \onehalfspacing} \newcommand{\vgl}[3][vgl.]{\citep[#1][S.~#3]{#2}} % Multi-Monitor-Unterstützung und Notizen %\usepackage{pgfpages} %\setbeameroption{show notes on second screen} %\setbeameroption{show notes} %\defbeamertemplate{note page}{mynotes}{\begin{center} %\insertslideintonotes{0.70}\\\insertnote %\end{center}} %\setbeamertemplate{note page}[mynotes] \begin{document} \maketitle \section{} \begin{frame}{Inhalt} %\setlength{\columnseprule}{0.1pt} \begin{multicols}{2} % \begin{footnotesize} \tableofcontents % \end{footnotesize} \end{multicols} \end{frame} \section{Worum geht es?} \begin{frame}{Worum geht es?} \begin{itemize} \item<1-> Informatiksysteme werden immer weiter entwickelt. \item<2-> Informatik durchdringt den Alltag. \item<3-> Die moderne Welt ist ohne Informatik kaum vorstellbar. \item<4-> Informatische Bildung gehören zur allgemeinen Bildung! \end{itemize} \end{frame} \begin{frame}{Worum geht es?} \begin{itemize} \item<1-> \alert<2>{Trotzdem wird Informatik mit Computertechnik gleichgesetzt.} \item<2-> Dieses Bild haben insbesondere auch Schüler. \item<3-> Schüler werden noch häufig mit Computerkursen konfrontiert. \item<4-> Der Informatikunterricht findet im Computerraum statt. \item<5-> Mobile Geräte als Ausweg? \end{itemize} \end{frame} \section{Aktueller Stand (Schule)} \subsection{Ziele} \begin{frame}{Wesentliche Ziele} \begin{itemize} \item Entwicklung informatischer Vernunft \item Schüler sollen \enquote{mündige Bürger} werden \end{itemize} \end{frame} \subsection{Alltagsbezug?} \begin{frame}{Gerätebesitz} Gerätebesitz nach JIM-Studie 2010 \cite{jim2010} \begin{itemize} \item 97\% aller 12- bis 19-jährigen Schüler besitzen ein Handy \item (96\% bei Jungen und 98\% bei Mädchen) \item<2-> Einen Computer hingegen besitzen nur 79\% \item<2-> (77\% bei Mädchen und 80\% bei Jungen) \item<3-> Außerdem sind Handys gleichermaßen bei allen Altersgruppen zu finden. \item<4-> SmartPhones weniger weit verbreitet (etwa 20\%) \end{itemize} \end{frame} \subsection{Gesellschaftliche Reaktionen} \begin{frame}{Gesellschaftliche Reaktionen} \begin{itemize} \item Handys werden mit der Verbreitung von Pornographie und Gewaltvideos in Verbindung gebracht. \item<2-> Verbote sind an Schulen üblich \item<2-> Teilweise sogar gesetzliche Handyverbote an Schulen (Bayern, seit 2006) \item<3-> Passt das zu unseren Zielen? \end{itemize} \end{frame} \section{Aktueller Stand (Forschung)} \subsection{Forschung} \begin{frame}{Forschung} Verschiedene Beiträge von \begin{itemize} \item Ralph Carrie (vgl. \cite{Carrie2006} u. a.) \item Ludger Humbert (vgl. \cite{HumbertGINW2006} u. a.) \item Matthias Heming (vgl. \cite{Heming2009} u. a.) \item Versuchskurse an der Willy-Brandt-Gesamtschule in Bergkamen \end{itemize} \end{frame} \subsection{Vorteile und Hoffnungen} \begin{frame}{Vorteile und Hoffnungen} \begin{itemize} \item Stärker Alltagsbezug \item Nutzung eigener Geräte \item Genderaspekt \item Flexiblere Unterrichtsgestaltung \item Mehr sachbezogene Kommunikation und Interaktion \item Verringerter Wartungsaufwand \item Höhere Motivation \item Geringere Kosten \end{itemize} \end{frame} \subsection{Nachteile und Befürchtungen} \begin{frame}{Nachteile und Befürchtungen} \begin{itemize} \item Erschwerte Bedienung \item Verringerte Geschwindigkeit \item Frustration? \item Exlusive Nutzung der Geräte \end{itemize} \end{frame} \section{Einsatzmöglichkeiten} \subsection{Informatikunterricht} \begin{frame}{Einsatz im Informatikunterricht} \begin{itemize} \item Mobilgeräte sind vollständige Informatiksysteme \item Lehrpläne sind damit grundsätzlich umsetzbar (vgl. \cite{heming2009}) \item<2-> Vorteile wie zuvor beschrieben \item<3-> Einige Zugänge eröffnen sich mit Mobilgeräten leichter, z.B.: \begin{itemize} \item Datenschutz \item Kommunikation(-sprotokolle) \item Nutzung von Audio (TTS, SR, Mikrofon) und Video (Kamera) \item Objektkarten $\leftrightarrow$ QR-Codes \end{itemize} \item<4-> Außerdem etwa: Modellierung und Simulation von Automaten \end{itemize} \end{frame} \subsection{Anderer Unterricht} \begin{frame}{Einsatz in anderem Unterricht} \begin{multicols}{2} \begin{itemize} \item Allgemein \begin{itemize} \item Recherche \item Audiovisuelle Dokumentation \item Quiz \item Wissensnetze \item Notizen \item (Präsentation) \end{itemize} \item<2-> Sozialwissenschaften \begin{itemize} \item Interviews und Umfragen \item Statistiken \item Umgang mit Medien (als Informationsquellen) \end{itemize} \item<3-> Mathematik und NW \begin{itemize} \item Ersatz für GTR \item Mathematikprogramme \item Simulationen \item GPS \end{itemize} \item<4-> Sprachen \begin{itemize} \item SMS-Stil \item Vokabeln \item Aussprache \end{itemize} \item<5-> Erdkunde \begin{itemize} \item GPS \item Kartenmaterial \end{itemize} \end{itemize} \end{multicols} \end{frame} \section{Auswahlkriterien} \subsection{Gerätetypen} \begin{frame}{Gerätetypen} \begin{tabular}{l|cccc} Merkmal & Handys & Smartphones & Hybride & Tablets\\ \hline Progammierbarkeit & $\ominus$ & $\oplus$ & $\oplus$ & $\oplus$ \\ Bedienung & $\ominus$ &$\odot$ & $\oplus$ & $\oplus$\\ Alltagsbezug & $\oplus$ & $\oplus$ & $\odot$ & $\ominus$\\ Mobilität & $\oplus$ & $\oplus$ & $\oplus$ & $\ominus$\\ Ausstattung & $\ominus$ & $\odot$ & $\oplus$ & $\oplus$\\ Kosten & $\oplus$ & $\odot$ & $\ominus$ & $\ominus$ \end{tabular} \end{frame} \subsection{Kriterien für Geräteauswahl} \begin{frame}{Kriterien für Geräteauswahl} \begin{exampleblock}{Einige Kriterien für die Geräteauswahl} \begin{multicols}{2} \textbf{Software} \begin{itemize} \item \alert{RAD möglich und verfügbare Werkzeuge} \item Künstliche Einschränkungen \item Frei installierbare Software \item Kompatibilität \end{itemize} \textbf{Hardwareausstattung} \begin{itemize} \item Kamera \item WLAN, Bluetooth \item GPS, Sensoren \item (Schnittstellen) \end{itemize} \textbf{Sonstiges} \begin{itemize} \item Rechtliche Aspekte \item Kosten \item Verbreitung \item Systemupdates \end{itemize} \end{multicols} \end{exampleblock} \pause \textbf{Fazit:} Von den Relevanten Plattformen bleibt nur Android übrig. \end{frame} \section{Android} \subsection{RAD} \begin{frame}{RAD und Umgebung für Entwicklungen} \begin{itemize} \item ASE ermöglicht Python und weitere Scriptsprachen \item API verfügbar \item<2-> ermöglicht sowohl direkte Ausführung als auch Erstellung von Apps \item<2-> Ausführung direkt oder getriggert möglich \item<4-> leider teilweise schlecht dokumentiert \item<4-> API ist nicht objektorientiert \item<4-> API ist nicht intuitiv, nicht einheitlich und zu aufwendig \item<5-> Interaktiver Python-Shell fehlt Vervollständigung etc. \item<6-> Verschiedene Editoren verfügbar, aber keiner uneingeschränkt geeignet. \item<7-> Bildschirm-Tastaturen sind allesamt nicht für Programmierung geeignet. \item<8-> UI-Chaos \end{itemize} \end{frame} \begin{frame}{UI-Chaos} \begin{itemize} \item Es gibt drei verschiedene UI-Schnittstellen\begin{itemize} \item dialogFacade \item webViewFacade \item fullScreenFacade \end{itemize} \item<2-> dialog bietet nur Dialoge, keine \enquote{echte} App-UI \item<3-> webViewFacade basiert auf HTML und (zwingend) JavaScript \item<4-> fullScreenFacade ist in Entwicklung und verhält sich bei Tests unberechenbar und instabil. \end{itemize} \end{frame} \subsection{Problembehebung} \begin{frame}{Schaffung einer geeigneten Umgebung} Einige der benannten Probleme wären aufgrund der weitgehend offenen Struktur von Android behebbar. \begin{itemize} \item Editor $\rightarrow$ App entwickeln \item Tastatur $\rightarrow$ Tastatur entwickeln \item API $\rightarrow$ API-Wrapper entwickeln \end{itemize} Hierbei könnte man größtenteils vorhandene OpenSource-Projekte weiterentwickeln. \end{frame} \subsection{API} \begin{frame}[fragile] \frametitle{API-Beispiel I} \begin{lstpy}[caption={OK-Dialog}] import android droid = android.Android() droid.dialogCreateAlert("Test","Bitte OK druecken.") droid.dialogSetPositiveButtonText("OK") droid.dialogShow() result = droid.dialogGetResponse().result droid.dialogDismiss() \end{lstpy} \end{frame} \begin{frame}[fragile] \frametitle{API-Beispiel IIa} \begin{lstpy}[caption={webView-Beispiel, Python-Code}] import android import time droid = android.Android() droid.webViewShow('file:///sdcard/sl4a/scripts/DDI/ddi_ui.html') while True: e = droid.eventPoll(1) if e.result: droid.vibrate() if e.result[0]['name'] == 'say': droid.ttsSpeak(e.result[0]['data']) [...] \end{lstpy} \end{frame} \begin{frame}[fragile] \frametitle{API-Beispiel IIb} \begin{lsthtml}[caption={webView-Beispiel, UI-Code}] [...]
\end{lsthtml} \end{frame} \subsection{API-Wrapper} \begin{frame}{API-Wrapper} Ansatz 1: Klassenhierarchie \begin{itemize} \item Bezüge und Abhängigkeiten lassen sich gut darstellen \item Klare Struktur, die das Gerät abbildet \item Viel Tipparbeit \item Weniger übersichtlich \end{itemize} Ansatz 2: Einzelmodule \begin{itemize} \item Bezüge und Abhängigkeiten unklar \item Wenig Tipparbeit \item Bessere Übersicht \item Funktionale Gruppierung oder Gerätebezogene Gruppierung? \end{itemize} Hierbei könnte man größtenteils vorhandene OpenSource-Projekte weiterentwickeln. \end{frame} \begin{frame}{Schreibweisen} \begin{itemize} \item Müssen verschiedene Schreibweisen berücksichtigt werden? \item Wie kann damit umgegangen werden? \item Automatisierung möglich, aber \enquote{unschön} \item Verschiedene Wrapper? \end{itemize} \end{frame} %Literaturverzeichnis \subsection{} \begin{frame}[allowframebreaks]{Literatur} % \begin{tiny} \bibliographystyle{natdin} \bibliography{Komplett,mobile} % \end{tiny} \end{frame} \end{document}