<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Beiträge von Francesco Novy - Mobile USTP MKL</title>
	<atom:link href="https://mobile.fhstp.ac.at/author/fnovy/feed/" rel="self" type="application/rss+xml" />
	<link>https://mobile.fhstp.ac.at/author/fnovy/</link>
	<description>Die &#34;Mobile Forschungsgruppe&#34; der USTP, sie  sammelt hier alles zu den Themen Design, UX und Entwicklung mobiler Applikationen</description>
	<lastBuildDate>Fri, 07 Nov 2014 15:00:13 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://mobile.fhstp.ac.at/wp-content/uploads/2025/03/icon-120x120.webp</url>
	<title>Beiträge von Francesco Novy - Mobile USTP MKL</title>
	<link>https://mobile.fhstp.ac.at/author/fnovy/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Mixpanel: Analytics für (mobile) Applikationen</title>
		<link>https://mobile.fhstp.ac.at/development/mixpanel-analytics-fuer-mobile-applikationen/</link>
		
		<dc:creator><![CDATA[Francesco Novy]]></dc:creator>
		<pubDate>Fri, 07 Nov 2014 15:00:13 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Native Development]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Analytics]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[mobile]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=4800</guid>

					<description><![CDATA[<p>Für Herculess ist, wie für so ziemlich jedes Projekt, eine erfolgreiche Analyse der Nutzung essentiell für die laufende Weiterentwicklung des Produktes. Allerdings sind für moderne Apps, seien es Web Apps oder native Apps, sind etablierte Tools wie Google Analytics nicht wirklich hilfreich: Bei einer Single Page App kann ich so lediglich die Zugriffe zählen, die tatsächliche <a class="read-more" href="https://mobile.fhstp.ac.at/development/mixpanel-analytics-fuer-mobile-applikationen/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/mixpanel-analytics-fuer-mobile-applikationen/">Mixpanel: Analytics für (mobile) Applikationen</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Für <a href="http://herculess.com" target="_blank">Herculess </a>ist, wie für so ziemlich jedes Projekt, eine erfolgreiche Analyse der Nutzung essentiell für die laufende Weiterentwicklung des Produktes. Allerdings sind für moderne Apps, seien es Web Apps oder native Apps, sind etablierte Tools wie Google Analytics nicht wirklich hilfreich: Bei einer Single Page App kann ich so lediglich die Zugriffe zählen, die tatsächliche Aktivität jedoch nicht: Google Analytics zählt ja nur die einzelnen Seitenaufrufe, welche z.B. bei JavaScript-basierten Single Page Apps nicht wirklich passieren &#8211; andere &#8220;Seiten&#8221; werden ja nur per JavaScript geladen.</p>
<p>Im Zuge einer Recherche sind wir so auf eine andere, auf diesen Use-Case hin optimierte Lösung gestoßen: <a href="http://mixpanel.com" target="_blank">Mixpanel</a>.</p>
<p><span id="more-4800"></span></p>
<h2>Mixpanel &#8211; wie funktioniert es</h2>
<p>Mixpanel basiert im Wesentlichen auf zwei Elementen: Events und Profile. Nach der Anmeldung erhält man einen API Key und ein Script zum Einbinden in der eigenen App &#8211; das funktioniert ähnlich wie bei Google Analytics. Für Android und iOS (und einige weitere Plattformen) gibt es entsprechende SDKs &#8211; in diesem Artikel wird jedoch nur die JavaScript Einbindung behandelt.</p>
<p>Nun kann man gleich anfangen, Events zu schicken. Dazu gibt es im Wesentlichen eine Funktion:</p>
<pre class="brush: plain; title: ; notranslate">mixpanel.track(
  &quot;eventname&quot;,
  {
    &quot;property 1&quot;: &quot;Blue&quot;,
    &quot;property 2&quot;: &quot;Red&quot;
  }
);</pre>
<p>Die Funktion nimmt zwei Parameter: einen Eventnamen (Case-Sensitiv! login != Login) und optional ein JSON Objekt mit beliebigem Inhalt, welcher einfach angehängt wird. Wie das genutzt wird, bleibt dem Entwickler komplett selbst überlassen. In Herculess routen wir das Tracking über eine eigene Funktion, die vereinfacht so aussieht:</p>
<pre class="brush: plain; title: ; notranslate">trackAction: function(name, options) {
  if(env !== &quot;development&quot;) {
    mixpanel.track(name, options || null);
  }
}</pre>
<p>Das sorgt dafür, dass während dem Development nicht ständig unnötig Events getrackt werden.</p>
<h3>Profile</h3>
<p>Zusätzlich gibt es auch die Möglichkeit, Profile anzulegen. Dafür muss man zumindest beim ersten Besuch eines Users für diesen Einstellungen festlegen:</p>
<pre class="brush: plain; title: ; notranslate">mixpanel.identify(user_id);
mixpanel.people.set({
  &quot;$first_name&quot;: &quot;Joe&quot;,
  &quot;$last_name&quot;: &quot;Doe&quot;,
  &quot;$created&quot;: &quot;2013-04-01T09:02:00&quot;,
  &quot;$email&quot;: &quot;joe.doe@example.com&quot;
});</pre>
<p>Bei folgenden Sitzungen reicht die erste Zeile zur Identifizierung. Nun kann man alle Events diesem Profil zuordnen und so noch besser analysieren.</p>
<h2>Mixpanel &#8211; Auswertung</h2>
<p>Mixpanel bietet zahlreiche Möglichkeiten zur Auswertung der gesammelten Daten, welche genau zu Erklären den Rahmen dieses Artikels sprengen würde. Im einfachsten Fall kann man das Vorkommen von Events nach Zeitraum analysieren:</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/11/mixpanel_1.png"><img fetchpriority="high" decoding="async" class="aligncenter wp-image-4803" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/11/mixpanel_1.png" alt="Mixpanel Screenshot 1" width="600" height="248" /></a></p>
<p>Zusätzlich dazu kann man diverse Filter nach Event-Art, Zeitraum und diversen Parametern wie Browser, Land etc. filtern.</p>
<p>Somit ist schon eine Analyse völlig individueller Parameter möglich. Ich kann zum Beispiel die Anzahl der erstellten Projekte je nach Bildschirmgröße analysieren, was mit Tools wie Google Analytics nicht so einfach möglich wäre.</p>
<p>Bei der Analyse der Profile sieht man, dass das ganz schön unheimlich werden kann:</p>
<p>&nbsp;</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/11/mixpanel_21.png"><img decoding="async" class="aligncenter wp-image-4808" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/11/mixpanel_21.png" alt="Mixpanel Screenshot 2" width="600" height="235" /></a></p>
<p>Das eignet sich zum Beispiel sehr gut für Fehlersuche: Man kann sehr gut nachvollziehen, was vor dem Auftreten eines Fehlers passiert ist.</p>
<h2>Weitere Funktionen</h2>
<p>Man kann bei Mixpanel außerdem sehr individuelle Filter anlegen und auch automatische Emails bei gewissen Ereignissen konfigurieren. zB: Wenn ein User sich 2 Wochen nicht einloggt, dann schicke ihm ein Mail mit dem Inhalt. Außerdem gibt es für iOS eine A/B-Testing Suite sowie zahlreiche weitere Funktionen, welche man in der <a href="https://mixpanel.com/help/reference" target="_blank">Developer Documentation</a> findet.</p>
<h2>Nutzungsbedingungen</h2>
<p>Mixpanel ist kostenlos für max. 25 000 Events / Monat sowie max. 1 000 Profile. Wenn man in seiner App ein Mixpanel-Logo einbindet, erhöht sich das auf 200 000 Events bzw. 6 000 Profile. Danach gibt es diverse Pläne, beginnend mit 150$/Monat für 500 000 Events.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/mixpanel-analytics-fuer-mobile-applikationen/">Mixpanel: Analytics für (mobile) Applikationen</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Usertesting einer Webapp</title>
		<link>https://mobile.fhstp.ac.at/ux/usertesting-einer-webapp/</link>
		
		<dc:creator><![CDATA[Francesco Novy]]></dc:creator>
		<pubDate>Thu, 05 Jun 2014 15:39:43 +0000</pubDate>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[User Experience]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[Herculess]]></category>
		<category><![CDATA[Usability Testing]]></category>
		<category><![CDATA[User Testing]]></category>
		<category><![CDATA[UX]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=4521</guid>

					<description><![CDATA[<p>Während der Entwicklung von Herculess führen wir laufend kleinere Usabilitytests durch um herauszufinden ob die Abläufe und die User Interface Elemente verstanden werden. Dabei ist uns wichtig, dass die getesteten Personen nicht immer dieselben sind, sondern sie die Webapp zum ersten Mal benutzen. Dabei geben wir den Testern eine kurze Beschreibung des Projekts und starten dann <a class="read-more" href="https://mobile.fhstp.ac.at/ux/usertesting-einer-webapp/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/ux/usertesting-einer-webapp/">Usertesting einer Webapp</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Während der Entwicklung von <a href="http://herculess.com" target="_blank">Herculess</a> führen wir laufend kleinere Usabilitytests durch um herauszufinden ob die Abläufe und die User Interface Elemente verstanden werden. Dabei ist uns wichtig, dass die getesteten Personen nicht immer dieselben sind, sondern sie die Webapp zum ersten Mal benutzen. Dabei geben wir den Testern eine kurze Beschreibung des Projekts und starten dann gleich los.</p>
<p><span id="more-4521"></span>Die Probanden bekommen Zugangsdaten und können sich danach in das System einloggen. Danach werden sechs vordefinierte kleine Aufgaben durchgearbeitet. Alle Beobachtungen und Anmerkungen der Testperson werden dabei notiert und danach noch ein paar offene Fragen gestellt.</p>
<p>&nbsp;</p>
<h2>Warum Usertesting?</h2>
<p>Durch diese Tests können wir unsere App laufend optimieren. Außerdem bekommen wir zusätzlich Informationen über das Nutzungsverhalten abhängig von Alter und Beruf. Hier werde ich die bisher wichtigsten Erkenntnisse beschreiben. Die folgenden Screenshots sollen helfen die nachstehenden Punkte besser verstehen zu können.</p>
<p>&nbsp;</p>
<h3>1) Persönliche Übersicht</h3>
<h3><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/06/herculess-uebersicht-menu-open.png"><img decoding="async" class="alignnone size-full wp-image-4526" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/06/herculess-uebersicht-menu-open.png" alt="herculess-uebersicht-menu-open" width="408" height="688" /></a></h3>
<h3>2) Projektübersicht ohne Aufgaben</h3>
<h3><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/06/herculess-uebersicht-new-project.png"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-4525" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/06/herculess-uebersicht-new-project.png" alt="herculess-uebersicht new-project" width="404" height="598" /></a></h3>
<p>&nbsp;</p>
<h2>Beschriftung/Wording</h2>
<p>Viele Begriffe die in Herculess verwendet wurden, wie beispielsweise &#8220;Dashboard&#8221; oder &#8220;Task&#8221; waren den Testpersonen nicht geläufig. Während für uns als Webprofessionals diese Begriffe Gang und Gebe sind, haben die Probanden ihre Bedeutung teilweise nicht verstanden. Deshalb haben wir die Begriffe gegen Deutsche Wörter ausgetauscht: zum Beispiel wurde aus Dashboard Übersicht und aus Task Aufgabe.</p>
<h2>Datum</h2>
<p>Das Datum für Aufgaben war im Format &#8220;20. Mai, 2014&#8221; angegeben. Die Tests ergaben, dass Zusätze wie heute, morgen oder gestern hilfreich wären. Außerdem wurden Wochentagsangaben gewünscht, sowie relative Zeitzusätze wie &#8220;noch 2 Wochen&#8221;.</p>
<h2>Layout</h2>
<p>Besonders positiv wurde von allen Probanden das “aufgeräumte” Layout erwähnt. Die Tester haben schnell erkannt, dass das Plus rechts oben für das Erstellen von Aufgaben und Projekten vorgesehen ist. Auch wenn zu Beginn keine Aufgabe vorhanden war, haben sie durch den kurzen Beschreibungstext sofort gewusst was zu tun ist.</p>
<h2>Icons</h2>
<p>Das Thema Icons ist sehr schwierig, besonders wenn man ein Icon nicht nur zur Unterstützung einer Beschriftung in einem Button verwendet, sondern es keine Beschriftung hat. Das Plus für Hinzufügen und der Haken zum Abschließen wurde von allen Probanden verstanden. Probleme gab es aber bei dem bekannten Hamburger Icon für das Menü. Besonders ältere Probanden erkannten das Icon nicht. Im Gegensatz zu den jüngeren Testpersonen, die das Icon dann einfach “ausprobiert” haben, hatten die älteren hier mehr Scheu. Gegen das Hamburger Icon gibt es zurzeit einiges an Kritik in der Online-Community. (Siehe beispielsweise: <a href="http://techcrunch.com/2014/05/24/before-the-hamburger-button-kills-you/" target="_blank">Before the hamburger button kills you</a>). In der Erstversion werden wir das Hamburger Icon so belassen, wobei wir wahrscheinlich &#8220;Menü&#8221; dazu schreiben werden, dazu werden wir aber noch ein paar Tests machen. Am Desktop ist das Menü ohnehin immer eingeblendet. Allgemein hatten aber nach dem Test alle Probanden angegeben keine Probleme beim Navigieren durch die App gehabt zu haben.</p>
<h2>Gesten</h2>
<p>Während wir in einer anderen Studie “Touchgesten in Webbrowsern am Smartphone”, welche diesen Sommer publiziert wird, untersuchen ob User Touchgesten überhaupt verwenden, haben wir während des Herculess-Tests herausgefunden, das kein Proband bisher Swipe-Right für Details oder Swipe-Left zum Aufschieben verwendet hat. Der Indikator für Optionen in der Listenansicht ist aber bei einem Großteil der Nutzer gut angekommen. Diese haben darauf geklickt &amp; somit die Optionen in der Liste eingeblendet, um eine Aufgabe abzuschließen.</p>
<p>&nbsp;</p>
<p>Die Liste mit gefundenen Optimierungsmöglichkeiten könnte ich hier noch viel länger fortsetzten, jedoch sind das meist sehr spezifische Dinge. Falls jemand noch mehr darüber wissen möchte oder einfach nur allgemein Fragen zu der App hat, stehen wir jederzeit zur Verfügung.</p>
<p>&nbsp;</p>
<h2>Fazit</h2>
<p>Solche Tests sollten keine einmalige Sache bleiben. Einen kurzen Testleitfaden mit kleinen Aufgaben zu erstellen ist, wenn man seine App kennt, wirklich kein großer Aufwand &amp; diesen Testleitfaden kann man dann, mit kleineren Adaptionen, über eine längeren Zeitraum verwenden. Jeder unserer Tests hat nicht  länger als 10 Minuten gedauert und viele wichtige Erkenntnisse für unser Projekt gebracht. Es ist sehr wichtig, dass man bei solch großen Projekten nicht das Gefühl für die “echten” User verliert, denn im Normalfall ist der Durchschnittsnutzer kein Computerprofi, der den Großteil seiner Zeit online verbringt.</p>
<p>&nbsp;</p>
<p>The post <a href="https://mobile.fhstp.ac.at/ux/usertesting-einer-webapp/">Usertesting einer Webapp</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>codefront.io</title>
		<link>https://mobile.fhstp.ac.at/allgemein/codefront-io/</link>
		
		<dc:creator><![CDATA[Francesco Novy]]></dc:creator>
		<pubDate>Wed, 28 May 2014 11:29:50 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Studium]]></category>
		<category><![CDATA[AngularJS]]></category>
		<category><![CDATA[Chrome]]></category>
		<category><![CDATA[codefront]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[Konferenz]]></category>
		<category><![CDATA[Linz]]></category>
		<category><![CDATA[Sass]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=4492</guid>

					<description><![CDATA[<p>Acht Studierende der Masterklasse Mobiles Internet des Studiengangs Digitale Medientechnologien besuchten gemeinsam mit Grischa Schmiedl und Kerstin Blumenstein am 10. Mai 2014 die Front-End Developement Konferenz codefront.io. In der nicht weit von St. Pölten entfernten Johannes Kepler Universität in Linz fanden den ganzen Tag parallel in vier Hörsälen Vorträge zu verschiedensten Themen statt. Die Themen der <a class="read-more" href="https://mobile.fhstp.ac.at/allgemein/codefront-io/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/codefront-io/">codefront.io</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Acht Studierende der Masterklasse Mobiles Internet des Studiengangs Digitale Medientechnologien besuchten gemeinsam mit Grischa Schmiedl und Kerstin Blumenstein am 10. Mai 2014 die Front-End Developement Konferenz codefront.io. In der nicht weit von St. Pölten entfernten Johannes Kepler Universität in Linz fanden den ganzen Tag parallel in vier Hörsälen Vorträge zu verschiedensten Themen statt.</p>
<p><span id="more-4492"></span></p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/05/10312600_793285870695973_4846584541707797059_n.jpg"><img loading="lazy" decoding="async" class="aligncenter wp-image-4495 size-medium" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/05/10312600_793285870695973_4846584541707797059_n-300x225.jpg" alt="10312600_793285870695973_4846584541707797059_n" width="300" height="225" /></a></p>
<p>Die Themen der Konferenz waren sehr vielfältig. Das Spektrum reichte von Entwickler-Themen wie Angular JS und weiteren JavaScript Vorträgen über Responsive Web Design und SASS bis hin zu User Interface Design und Daten Visualisierung. Dadurch konnte sich jede/r die interessantesten Themen heraussuchen.</p>
<p>Einer der spannendsten Vorträge war der des Gründers des bekannten Smashing Magazine, Vitaly Friedman (Twitter: @smashingmag), über Responsive Web Design. Der Talk mit dem Titel &#8220;Real-Life Responsive Web Design&#8221; deckte sehr viele wichtige Aspekte ab, die heutzutage für die Erstellung von flexiblen Web-Projekten wichtig sind.</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/05/10253922_793285817362645_2829413033242432445_n.jpg"><img loading="lazy" decoding="async" class="aligncenter wp-image-4494 size-medium" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/05/10253922_793285817362645_2829413033242432445_n-300x225.jpg" alt="10253922_793285817362645_2829413033242432445_n" width="300" height="225" /></a></p>
<p>Auch sehr spannend war der Vortrag von Monica Dinculescu (Twitter: @notwaldorf). Sie arbeitet bei Google an der Entwicklung des eigenen Browsers Chrome und sprach über sechs Tricks, wie Google seine Chrome User glücklich macht. Damit gab sie einen spannenden Einblick hinter die Kulissen der Arbeit von Google.</p>
<p>Die Designer/innen und Entwickler/innen der Masterklasse Mobiles Internet konnten sehr viel aus den verschiedenen Vorträgen mitnehmen und werden auch bei der nächsten Konferenz in Österreich wieder dabei sein.</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/05/10178088_565304850255008_7360456056746908306_n.jpg"><img loading="lazy" decoding="async" class="aligncenter wp-image-4493 size-medium" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/05/10178088_565304850255008_7360456056746908306_n-300x225.jpg" alt="10178088_565304850255008_7360456056746908306_n" width="300" height="225" /></a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/codefront-io/">codefront.io</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Erstellung eines wirklich responsive Datepickers mit JavaScript</title>
		<link>https://mobile.fhstp.ac.at/development/webdevelopment/erstellung-eines-wirklich-responsive-datepickers-mit-js/</link>
					<comments>https://mobile.fhstp.ac.at/development/webdevelopment/erstellung-eines-wirklich-responsive-datepickers-mit-js/#comments</comments>
		
		<dc:creator><![CDATA[Francesco Novy]]></dc:creator>
		<pubDate>Wed, 16 Apr 2014 10:00:50 +0000</pubDate>
				<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[date]]></category>
		<category><![CDATA[datepicker]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[input]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[Library]]></category>
		<category><![CDATA[Pikaday]]></category>
		<category><![CDATA[PikadayResponsive]]></category>
		<category><![CDATA[responsive]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=4417</guid>

					<description><![CDATA[<p>Es gibt unzählige JS-basierte Datepicker da draußen. Obwohl grundsätzlich wohl für jeden Geschmack etwas dabei ist, gibt es einen Bereich wo quasi alle Lösungen Schwächen aufweisen: die Benutzung am Smartphone ist meist eher suboptimal. Pickadate.js, der etablierteste responsive Datepicker, funktioniert zwar am Handy, allerdings &#8211; für mich &#8211; auch nicht wirklich zufriedenstellend. Das Problem an <a class="read-more" href="https://mobile.fhstp.ac.at/development/webdevelopment/erstellung-eines-wirklich-responsive-datepickers-mit-js/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/webdevelopment/erstellung-eines-wirklich-responsive-datepickers-mit-js/">Erstellung eines wirklich responsive Datepickers mit JavaScript</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Es gibt unzählige JS-basierte Datepicker da draußen. Obwohl grundsätzlich wohl für jeden Geschmack etwas dabei ist, gibt es einen Bereich wo quasi alle Lösungen Schwächen aufweisen: die Benutzung am Smartphone ist meist eher suboptimal.</p>
<p><a href="http://amsul.ca/pickadate.js/" target="_blank">Pickadate.js</a>, der etablierteste responsive Datepicker, funktioniert zwar am Handy, allerdings &#8211; für mich &#8211; auch nicht wirklich zufriedenstellend. Das Problem an der ganzen Sache ist, dass die nativen Datepicker der Smartphones ja eigentlich sehr gut funktionieren. Warum also nicht einfach das native HTML5 Input Type &#8220;Date&#8221; verwenden?</p>
<p><span id="more-4417"></span></p>
<div id="attachment_4418" style="width: 190px" class="wp-caption alignnone"><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/04/native-datepicker.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4418" class="size-medium wp-image-4418" alt="Der native Datepicker unter Android 4.4" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/04/native-datepicker-180x300.png" width="180" height="300" /></a><p id="caption-attachment-4418" class="wp-caption-text">Der native Datepicker unter Android 4.4</p></div>
<h2>Warum nicht HTML5 Datepicker verwenden?</h2>
<p>Somit stellt sich die Frage, ob die Benutzung der nativen HTML5 Date-Eingabefelder nicht optimal wäre. Dabei kommen jedoch folgende Probleme auf:</p>
<ul>
<li>Selbst wenn man alte Browser aus dem Spiel lässt, ist der Support für &lt;input type=&#8221;date&#8221; /&gt; leider sehr schlecht. Während Smartphones es sehr gut unterstützen, funktioniert es im Firefox gar nicht und im Chrome bietet der native Datepicker leider eine sehr schlechte User Experience.</li>
<li>Das Datumsformat lässt sich bei nativen Datepickern leider nicht anpassen. Laut W3C-Spezifikation soll das Ausgabeformat immer &#8220;YYYY-MM-DD&#8221; sein, während das Anzeigeformat den Browserherstellern überlassen wird (im deutschen Chrome zB. ist es &#8220;DD.MM.YYYY&#8221;)</li>
</ul>
<p>Meine Recherche nach einer wirklich zufriedenstellenden Lösung hat leider kein Ergebnis geliefert &#8211; also entschloss ich mich, mich selber daran zu versuchen. Herausgekommen ist ein jQuery Plugin auf Basis von <a href="https://github.com/dbushell/Pikaday" target="_blank">Pikaday</a>, welches ich PikadayResponsive getauft habe. Das fertige Plugin ist auf <a href="https://github.com/mydea/PikadayResponsive" target="_blank">Github </a>verfügbar.</p>
<h2>Die Idee</h2>
<p>Der Datepicker soll so funktionieren:</p>
<ul>
<li>Auf Desktop-Geräten kann über den Pikaday-Datepicker das Datum ausgewählt werden.</li>
<li>Auf mobilen Touch-Devices kann über den nativen Datepicker das Datum ausgewählt werden.</li>
<li>Das Anzeige-Format des Datums kann dabei einheitlich eingestellt werden.</li>
<li>Das Ausgabe-Format kann dabei ebenfalls angepasst werden. (Standardmäßig als UNIX-Timestamp)</li>
</ul>
<p>Mit Ausgabe-Format ist das gemeint, was man beim Abschicken des Formulars dann herausbekommt.</p>
<h2>Der Ansatz</h2>
<p>PikadayResponsive ist der Einfachheit halber ein jQuery-Plugin geworden. Dieses kann man auf ein Input-Feld anwenden.</p>
<p>Das Input-Feld erhält den type=&#8221;hidden&#8221;. Es dient nur noch dazu, den Ausgabe-Wert zu enthalten. Nun überprüft das Plugin via Modernizr (oder einer alternativen Feature-Detection Library), ob Touch-Support UND HTML5-Date Support vorhanden sind. Wenn nein, wird ein Input-Field erzeugt und Pikaday darauf angewandt. Wenn ja, wird ein readonly-Feld erzeugt, in welchem dann die Anzeige dargestellt wird. Direkt darüber wird ein zweites Eingabefeld mit type=&#8221;date&#8221; erzeugt, welches absolut positioniert wird und via CSS und &#8220;opacity: 0&#8221; gestylt wird.</p>
<p>Wenn man nun auf das Eingabefeld klickt, öffnet sich der native Datepicker. Via &#8220;onchange&#8221; wird jede Änderung am nativen Datepicker abgefangen und auf Basis dessen ein Datum mit der gewünschten Formatierung in das readonly-Feld geschrieben.</p>
<p>Das ganze klingt komplizierter, als es ist 😉 Eine kleine Demo zeigt, wie das Ganze funktioniert:</p>
<p><a href="http://fnovy.com/projects/PikadayResponsive/" target="_blank">http://fnovy.com/projects/PikadayResponsive/</a></p>
<p>Und am Smartphone:</p>
<p><img loading="lazy" decoding="async" class="alignnone" alt="" src="https://camo.githubusercontent.com/5d3d1c1de7bd4965a992c9fc0af43c3977167df1/68747470733a2f2f6170692e71727365727665722e636f6d2f76312f6372656174652d71722d636f64652f3f646174613d68747470253341253246253246666e6f76792e636f6d25324670726f6a6563747325324650696b61646179526573706f6e736976652532462673697a653d32323078323230266d617267696e3d30" width="220" height="220" /></p>
<h2>Die Umsetzung</h2>
<p>Der komplette Code ist auf <a href="https://github.com/mydea/PikadayResponsive" target="_blank">Github </a>verfügbar. Ich werde hier kurz die einzelnen Schritte herzeigen und erklären.</p>
<p>Da das Ganze ein jQuery-Plugin ist, gibt es einige Einstellungen die man wählen kann. Details finden sich auf Github, für hier sind nur die Einstellungen &#8220;settings.displayFormat&#8221; und &#8220;settings.outputFormat&#8221; wichtig. Diese können Datumsformate enthalten, welche mit der JS-Library <a href="http://momentjs.com/" target="_blank">Moment.js</a> geparst werden. Standardmäßig ist displayFormat &#8220;DD.MM.YYYY&#8221; und outputFormat &#8220;unix&#8221; (=UNIX Timestamp).</p>
<p>Als Erstes wird das eigentliche Input-Field auf hidden umgestellt und das Ganze in einem Container gewrappt. Der Container ist notwendig, damit das readonly-Overlay absolut positioniert werden kann.</p>
<pre class="brush: jscript; title: ; notranslate">var elem = $(this);
// Original Input-Field is hidden and will contain the final output value
elem.attr(&quot;type&quot;, &quot;hidden&quot;);
// Wrap the input in a container
elem.wrap(&quot;&lt;span class='pikaday-container'&gt;&lt;/span&gt;&quot;);
var container = elem.parent(&quot;.pikaday-container&quot;);</pre>
<p>Nun gibt es zwei Möglichkeiten, die ich einzeln erklären werde. Wenn Touch ODER HTML5-Date NICHT verfügbar sind, wird der Pikaday-Picker angezeigt:</p>
<pre class="brush: jscript; title: ; notranslate">var input = $(&quot;&lt;input class=&quot;pikaday-display&quot; type=&quot;text&quot; /&gt;&quot;);
container.append(input);
var picker = new Pikaday({
    field: $(input)&#x5B;0],
    format: settings.displayFormat,
});</pre>
<p>Nun gibt es ein Input-Field mit Pikaday, jedoch fehlt noch eine korrekte Ausgabe. Wenn das Form abgeschickt wird oder man versucht, den Value mit $(&#8220;#date&#8221;).val() oder ähnlichem auszulesen, erhält man natürlich keinen Wert, da die Eingabe ja in ein anderes Feld erfolgte. Deshalb achten wir via onchange auf ein Ändern des Wertes des Pikaday-Feldes, und tragen dann entsprechend etwas in das ursprüngliche Eingabefeld ein.</p>
<pre class="brush: jscript; title: ; notranslate">input.change(function() {
	var date = moment($(this).val(), settings.displayFormat);
	var val;

	if (!date.isValid() || date.unix() &lt; 0) {
		// Date is not valid
		input.addClass(&quot;is-invalid&quot;);
	} else {
		// Date is valid
		input.removeClass(&quot;is-invalid&quot;);

		// Output format can be unix or a Moment.js string
		if (settings.outputFormat === &quot;unix&quot;) {
			val = date.unix();
		} else {
			val = date.format(settings.outputFormat);
		}
		elem.val(val);
	}

	elem.trigger(&quot;change&quot;);
});
</pre>
<p>Was passiert hier?</p>
<p>Zuerst wird überprüft, ob das eingegebene Datum valide ist. Wenn nicht, erhält das Ausgabe-Feld eine CSS-Klasse. Wenn das Feld valide ist, wird ein Ausgabewert erstellt &#8211; entweder ein UNIX-Timestamp oder ein beliebig formatiertes Datum. Dieser Wert wird dann in das ursprüngliche Element (elem) geschrieben.</p>
<p>Auf Smartphones ist das Ganze grundsätzlich ähnlich. Zuerst werden zwei statt nur einem Input-Feld erzeugt:</p>
<pre class="brush: jscript; title: ; notranslate">// The following element will be read-only and click-through
// and will only be used to display the formatted date
var display = $(&quot;&lt;input class=&quot;pikaday-display pikaday-display-native&quot; type=&quot;text&quot; readonly=&quot;readonly&quot; /&gt;&quot;);
container.append(display);

// The actual input field
var input = $(&quot;&lt;input class=&quot;pikaday-invisible&quot; type=&quot;date&quot; /&gt;&quot;);
container.append(input);</pre>
<p>Ganz wichtig ist hierbei, dass diese via CSS passend gestylt sind. Ein minimal-Style wäre:</p>
<pre class="brush: css; title: ; notranslate">.pikaday-container {
	display: inline-block;
	position: relative;
}

/* Height and width has to be equal! */
.pikaday-display, .pikaday-invisible {}

.pikaday-display-native {
	pointer-events: none;
	cursor: pointer;
}

.pikaday-display.is-invalid {
	background: rgba(255,0,0,0.05);
}

.pikaday-invisible {
	opacity: 0;
	position: absolute;
	left: 0;
	top: 0;
}</pre>
<p>Die wichtigsten Punkte dabei sind:</p>
<ul>
<li>pikaday-display und pikaday-invisible müssen gleich groß sein</li>
<li>pikaday-invisible muss absolut positioniert sein und opacity: 0 haben</li>
<li>pikaday-display-native muss pointer-events: none haben, damit man nicht darauf klicken kann.</li>
</ul>
<p>Die onchange-Funktion für den native Datepicker sieht dabei quasi genauso aus wie die für Pikaday, nur dass zusätzlich noch die Anzeige gesetzt wird:</p>
<pre class="brush: jscript; title: ; notranslate">// ...
display.val(date.format(settings.displayFormat));</pre>
<p>Das fertige Script enthält noch ein paar weitere Optionen und Optimierungen. Ich freue mich über Fragen, Anregungen oder Kritik.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/webdevelopment/erstellung-eines-wirklich-responsive-datepickers-mit-js/">Erstellung eines wirklich responsive Datepickers mit JavaScript</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mobile.fhstp.ac.at/development/webdevelopment/erstellung-eines-wirklich-responsive-datepickers-mit-js/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Das Smartphone im Einsatz in der Waldpädagogik</title>
		<link>https://mobile.fhstp.ac.at/allgemein/waldpaedagogik/</link>
		
		<dc:creator><![CDATA[Francesco Novy]]></dc:creator>
		<pubDate>Wed, 26 Feb 2014 08:50:57 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tests]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=3726</guid>

					<description><![CDATA[<p>Das digitale Zeitalter hält in vielen Bereichen unseres Leben Einzug. Deshalb ist der Verein &#8220;Waldpädagogik in Österreich&#8221; mit der Bitte, dass wir einen Workshop über die Einsatzmöglichkeiten des Smartphones in der Waldpädagogik halten, an uns herangetreten. Wir haben hier einiges an Informationen und verschiedene Apps, die diesem Zweck dienen können, zusammengetragen. Smartphones: Funktionen und Unterschiede <a class="read-more" href="https://mobile.fhstp.ac.at/allgemein/waldpaedagogik/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/waldpaedagogik/">Das Smartphone im Einsatz in der Waldpädagogik</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Das digitale Zeitalter hält in vielen Bereichen unseres Leben Einzug. Deshalb ist der Verein &#8220;Waldpädagogik in Österreich&#8221; mit der Bitte, dass wir einen Workshop über die Einsatzmöglichkeiten des Smartphones in der Waldpädagogik halten, an uns herangetreten. Wir haben hier einiges an Informationen und verschiedene Apps, die diesem Zweck dienen können, zusammengetragen.</p>
<p><span id="more-3726"></span></p>
<h1>Smartphones: Funktionen und Unterschiede</h1>
<div id="attachment_4183" style="width: 289px" class="wp-caption alignright"><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/02/IBM-Simon.jpeg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4183" class="size-full wp-image-4183" alt="Erstes Smartphone von IBM" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/02/IBM-Simon.jpeg" width="279" height="279" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/02/IBM-Simon.jpeg 279w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/02/IBM-Simon-150x150.jpeg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/02/IBM-Simon-32x32.jpeg 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/02/IBM-Simon-64x64.jpeg 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/02/IBM-Simon-96x96.jpeg 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/02/IBM-Simon-128x128.jpeg 128w" sizes="auto, (max-width: 279px) 100vw, 279px" /></a><p id="caption-attachment-4183" class="wp-caption-text">Erstes Smartphone von IBM</p></div>
<p>Die gesamte digitale Branche ist sehr schnelllebig, besonders gut sieht man das am Beispiel des Smartphones. So wurde das erste Smartphone erst vor ca. 20 Jahren (1992) von IBM entwickelt und eine erste wirklich gut nutzbare Kamera wurde erst vor genau 10 Jahren in unsere heute so gewohnte Handytechnik integriert.</p>
<p>Die damalige Kamera war mit 1 Megapixel herausstechend für diese Zeit und heute gibt es bereits Smartphones die eine bessere Auflösung als so manche Digitalkameras mitbringen (z.B. Nokia Lumia 1020 mit 41 Megapixel). Heute haben unsere Smartphones teilweise schon die Leistung eines normalen Computers und bieten jede Menge an Extras. So gehört es beispielsweise zur Standardausstattung mit einem Smartphone Emails zu versenden, im Internet zu surfen, Spiele zu spielen, Videos zu machen/bearbeiten sowie hochauflösende Bilder zu erstellen. Bei dieser schnellen Veränderung kann man sich vorstellen, dass in diesem Bereich noch lange nicht alles entwickelt wurde.</p>
<div id="attachment_4184" style="width: 668px" class="wp-caption alignnone"><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/02/Nokia-Lumia-1020.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4184" class="size-full wp-image-4184" alt="Nokia Lumia 1020 mit 41 Megapixel Kamera" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/02/Nokia-Lumia-1020.jpg" width="658" height="370" /></a><p id="caption-attachment-4184" class="wp-caption-text">Nokia Lumia 1020 mit 41 Megapixel Kamera</p></div>
<h2>Preisklassen und Betriebssysteme</h2>
<p>Grundsätzlich kann man Smartphones in Ober-, Mittel- und Unterklasse einteilen. Die Oberklasse- Smartphones sind meistens neben besonderer technischer Komponenten am höheren Preis erkennbar. Die Mittelklasse ist etwas preisgünstiger, hat aber meistens auch den benötigten Funktionsumfang. Die Unterklasse Modelle werden meist recht günstig verkauft und haben einige Einschränkungen wie zum Beispiel schlechtere Kameraauflösung. Für den Otto Normalverbraucher ist ein Mittelklasse Smartphone vollkommen ausreichend. Besonders wichtig bei der Anschaffung von Smartphones ist ein dazu passender Tarif, der vor allem die Internetnutzung ausreichend abdeckt, da dies sonst schnell zu einer Kostenfalle werden kann. Hier sind besonders Tarife, die entweder unlimitiert Internet beinhalten oder ab einem gewissen Konsum die Geschwindigkeit des Internets drosseln, zu empfehlen.</p>
<p>Außerdem gibt es unterschiedliche Betriebssysteme: iOS (Apple), Android (Google), Windows Phone, Blackberry.</p>
<h1>QR Codes</h1>
<div id="attachment_4185" style="width: 310px" class="wp-caption alignright"><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/02/qrcode-2.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4185" class="size-medium wp-image-4185" alt="QR-Code MFG-Blog" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/02/qrcode-2-300x300.png" width="300" height="300" /></a><p id="caption-attachment-4185" class="wp-caption-text">QR-Code MFG-Blog</p></div>
<p>Aus dem schwarz-weißen Muster/Wirwarr wird man kaum schlau. Dennoch sieht man diese Codes immer öfter auf Verpackungen und Etiketten. Was genau also sind QR-Codes und wozu können wir sie speziell in der Waldpädagogik verwenden? QR steht für Quick Response (schnelle Antwort) und das ist auch genau das Ziel der Codes – schnell zu Informationen zu kommen. Die QR-Codes wurden entwickelt, um viele Informationen auf kleiner Fläche unterzubringen und sollten auch funktionieren, wenn sie teilweise verschmutzt oder zerstört sind. So kann der QR-Code selbst dann noch gescanned werden, wenn bereits 30% des Codes zerstört wurden.</p>
<p>Die Post zum Beispiel nutzt sie als digitale Briefmarken und die Bahn als digitale Fahrscheine. Auf Werbeplakaten führen sie meistens zu den Webseiten der Anbieter.</p>
<h2>Scannen &amp; Erstellen eines QR-Codes</h2>
<p>QR Codes lassen sich mit jedem Smartphone und einer kostenlosen App dazu problemlos lesen. Dazu startet man einfach die App. Man klickt auf einen Button „Mit Kamera scannen“ und hält das Handy so über den Code, dass man ihn auf dem Display sieht. Der Code wird danach automatisch von der App erkannt und zeigt die enthaltenen Informationen. Bekannte Scanner sind zum Beispiel Qrafter, Barcode Scanner oder i-nigma.</p>
<p>Der Code besteht aus dem Muster und 3 schwarzen Quadraten an den Ecken. Diese helfen den QR Code immer zu erkennen, auch wenn er von einer anderen Richtung aus gescanned wird. Ein QR Code kann ganz einfach über einige Online-Plattformen selbst erstellt, gedruckt und verwendet werden (z.B. <a href="http://goqr.me/">http://goqr.me/</a>). So können solche Codes zum Beispiel mit Informationen befüllt werden, um einen Lehrpfad im Wald zu gestalten. Man kann sich also gewisse Punkte aussuchen, wo ein QR-Code mit den dazu passenden Informationen aufgehängt wird. Jeder, der ein Smartphone besitzt, kann dann ganz einfach an den verschiedenen Stationen die Informationen abrufen.</p>
<hr />
<h1>Augmented Reality für Waldpädagogik</h1>
<p>Augmented Reality, auf Deutsch erweiterte Realität, beschreibt die Erweiterung der Realität unterstützt durch Computer. Darunter wird im Allgemeinen verstanden, dass ein reales Bild mit zusätzlichen Informationen wie Texten, Bildern und Videos angereichert wird.</p>
<p>Die Anwendungsmöglichkeiten für AR sind sehr vielfältig. Erfolgreich genutzt wird dieses Konzept beispielsweise für Navigationssysteme in Gebäuden, im Freien oder im Auto. Der Unterhaltungsbereich ist ebenfalls ein Feld in der AR gerne und oft genutzt wird. Doch auch für Waldpädagogik gibts es einige interessante Szenarios.</p>
<h2>Ein Blick ins Innere</h2>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/ar1.jpeg"><img loading="lazy" decoding="async" class="alignleft size-thumbnail wp-image-3750" alt="Augmented Reality" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/ar1-150x150.jpeg" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/ar1-150x150.jpeg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/ar1-32x32.jpeg 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/ar1-64x64.jpeg 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/ar1-96x96.jpeg 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/ar1-128x128.jpeg 128w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a>Mit Augmented Reality ist es möglich Dinge darzustellen, die mit freiem Auge nicht sichtbar sind oder ganz im Verborgenen liegen. Das Bild zeigt dieses Konzept anhand des Menschen. Mit Hilfe eines Smartphones oder Tablets kann das Innere des menschlichen Körpers dargestellt werden. Zusätzlich dazu kann sich der User detaillierte Informationen anzeigen lassen.</p>
<p>In Bezug auf Waldpädagogik wäre es vorstellbar ins Innere eines Baumes zu blicken und Vorgänge wie Nahrungsaufnahme oder Wachstum zu veranschaulichen. Aber auch um Tiere zu zeigen, die im Inneren eines Baumes leben wie Insekten, Nager oder Vögel.</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/corning-footprint.png"><img loading="lazy" decoding="async" class="alignright size-thumbnail wp-image-3751" alt="Augmented Reality" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/corning-footprint-150x150.png" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/corning-footprint-150x150.png 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/corning-footprint-32x32.png 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/corning-footprint-64x64.png 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/corning-footprint-96x96.png 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/corning-footprint-128x128.png 128w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a></p>
<h2>Interpretation der Umgebung</h2>
<p>In der Natur kommen viele Tiere und Pflanzen vor. Doch nur Spezialisten oder Hobbyexperten wissen über alle vorkommenden Spezies bescheid. Mit Augmented Reality ist es möglich, die Umgebung zu entdecken. Anwendungsbeispiele sind Fährtenlesen aber auch die Identifikation von Bäumen, Sträuchern, Kräutern oder Pilzen.</p>
<h2 class="clear">Virtuelle Welten</h2>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/Augmented-reality-on-tablet-computer.jpg"><img loading="lazy" decoding="async" class="alignleft size-thumbnail wp-image-3752" alt="Augmented reality on tablet computer" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/Augmented-reality-on-tablet-computer-150x150.jpg" width="150" height="150" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/Augmented-reality-on-tablet-computer-150x150.jpg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/Augmented-reality-on-tablet-computer-32x32.jpg 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/Augmented-reality-on-tablet-computer-64x64.jpg 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/Augmented-reality-on-tablet-computer-96x96.jpg 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/Augmented-reality-on-tablet-computer-128x128.jpg 128w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a>Ein weiteres beliebtes Szenario für Augmented Reality ist das Erscheinen lassen von Objekten, die in der Realität nicht da sind. So kann es beispielsweise möglich sein Hirsche in ihrer natürlichen Umgebung zu beobachten und ihre Verhalten zu studieren. Der User kann hautnah dabei sein, auch wenn er nicht das Glück hat das Tier in Wirklichkeit zu sehen.</p>
<h5 class="clear">&#8211; Carina Skladal</h5>
<hr />
<h1>Die Waldfibel</h1>
<p>Die <a href="http://www.bmelv.de/DE/Landwirtschaft/Wald-Jagd/Waldfibel-node.html">Waldfibel</a> wurde vom deutschen Bundesministerium für Ernährung und Landwirtschaft umgesetzt.</p>
<p>Die App ist kostenlos für Android und iOS erhältlich sowie als PC Software (aufgrund der großen Nachfrage). Ich habe die App unter Android 4.4 auf meinem Nexus 5 getestet. Die App versucht spielerisch einen Zugang zur Waldthematik zu ermöglichen.</p>
<h2>Funktionen</h2>
<p>Die Startview der App ist ein Waldpanorama, in dem man sich nach rechts und links bewegen kann. Das Panorama selbst enthält verschiedene Bäume, Tiere und Wegweiser. So kann man interaktiv durch den Wald navigieren.</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/waldfibel.png"><img loading="lazy" decoding="async" class="size-medium wp-image-3886 alignleft" alt="Waldfibel" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/waldfibel-186x300.png" width="186" height="300" /></a> <a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/panorama.png"><img loading="lazy" decoding="async" class="aligncenter size-medium wp-image-3884" alt="Panorama" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/panorama-188x300.png" width="188" height="300" /></a></p>
<p>&nbsp;</p>
<p>Wählt man zum Beispiel ein Tier aus, kann man alles über das Tier lesen, sowie die Tierlaute des jeweiligen Tiers anhören.  Die Wegweiser verbergen Hinweise und einige Quizzes. So kann man sein Wissen über gewisse Blätter-und Baumarten überprüfen.</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/eichhörnchen.png"><img loading="lazy" decoding="async" class="size-medium wp-image-3883 alignleft" alt="Eichhörnchen" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/eichhörnchen-188x300.png" width="188" height="300" /></a> <a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/quiz.png"><img loading="lazy" decoding="async" class="aligncenter size-medium wp-image-3885" alt="Quiz" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/quiz-188x300.png" width="188" height="300" /></a></p>
<p>&nbsp;</p>
<p>Mein persönliches Highlight ist der Baumhöhenmesser. Man kann ein Foto von einem Baum machen (der Baum muss in seiner vollen Größe ins Kamerafenster passen), danach geht man in normalen Schritten auf den Baum bis zum Stamm. Dabei werden die Schritte von der App mitgezählt und die Höhe berechnet.</p>
<p>Neben der Panoramaansicht kann man sich die Inhalte noch von A-Z ansehen sowie nach Schlagworten von A-Z suchen.</p>
<h2>Fazit</h2>
<p>Mein persönlicher Eindruck der App war sehr gut! Das App hat ein durchgängiges Design und wirkt sehr &#8220;rund&#8221;. Besonders viel Spaß hatte ich an der Panoramaansicht, weil ich dort ausprobieren wollte, welche Elemente &#8220;interaktiv&#8221; sind, um mehr darüber zu erfahren. Besonders der Sound der Tierlaute war in der Detailansicht sehr hilfreich! Wie von Carina Skladal im ersten Absatz beschrieben könnte die App vielleicht noch von mehr Augmented Reality Integration profitieren, indem das Panorama zum Beispiel über eine &#8220;wirkliche&#8221; Waldansicht gelegt wird.</p>
<h5>&#8211; Lisa Gringl</h5>
<hr />
<h1>Anymals+plants</h1>
<p><a href="https://www.anymals.org/" target="_blank">Anymals+plants</a> gibt es als Android (getestet), iPhone, iPad und Windows Phone App. Sie bietet im Wesentlichen zwei Funktionen: Eine Artenliste und einen Identifikationsmodus. Dabei greift die kostenlose Applikation auf eine sehr große Datenbank von Tieren und Pflanzen zurück.</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/Screenshot_2014-01-23-18-49-43.png"><img loading="lazy" decoding="async" class="alignleft size-medium wp-image-3913" alt="Screenshot - GPS Ortung" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/Screenshot_2014-01-23-18-49-43-180x300.png" width="180" height="300" /></a>Was man bei der Benutzung von Anymals bedenken sollte, ist, dass die einzelnen Daten zu verschiedenen Flora- und Faunagruppen erst heruntergeladen werden müssen. Die Daten sind zwar kostenlos (und Deutsch), aber messen je nach Paket mehrere MB. Da Anymals grundsätzlich international ist, gibt es ein sehr praktisches Feature, um nur relevante Daten herunterzuladen: die App kann die eigene GPS-Location ermitteln und anhand der Position bestimmen, welche Arten in der Umgebung vorkommen können. Diese Daten werden dann heruntergeladen.</p>
<p>In der Artenliste ist es möglich, selber Fotos zu einzelnen Arten anzuhängen oder Arten zu markieren. So kann man Sichtungen festhalten. Außerdem kann man direkt auf die Wikipedia-Artikel zu den Arten zugreifen &#8211; dafür ist jedoch (im Gegensatz zu den restlichen Features) eine Internet-Verbindung erforderlich.</p>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/Screenshot_2014-01-23-18-50-02.png"><img loading="lazy" decoding="async" class="alignright size-medium wp-image-3912" alt="Artenidentifikation" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/Screenshot_2014-01-23-18-50-02-180x300.png" width="180" height="300" /></a>Das Identifikationstool basiert auf schriftlichen Fragestellungen, teilweise ergänzt durch Bilder. Dabei wählt man zuerst eine Grundkategorie (z.B. &#8220;Amphibien und Reptilien&#8221;). Danach muss man nach und nach die Fragen beantworten und grenzt so immer weiter ein, welche Art gerade vorliegt. Die Fragen beziehen sich dabei stets auf das Aussehen der Art.</p>
<p>Die Daten der App werden teilweise durch User ergänzt, somit ist die Datenbank sehr groß und weitläufig.</p>
<h2>Fazit</h2>
<p>Obwohl die App optisch nicht unbedingt beeindruckend aussieht, so hat sie doch einen bemerkenswerten Funktionsumfang. Durch die clevere Nutzung von GPS-Daten und die (weitgehende) Möglichkeit der Offline-Nutzung ist die App für die Nutzung im Wald sehr gut geeignet.</p>
<h5>&#8211; Francesco Novy</h5>
<hr />
<h1>NABU Vogelführer</h1>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/unnamed1.jpg"><img loading="lazy" decoding="async" class="size-medium wp-image-3946 alignleft" alt="NABO Vogelfuehrer" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/unnamed1-180x300.jpg" width="180" height="300" /></a>Obwohl man während der Schulzeit viele Vögel gelernt hat, die in unseren Wäldern heimisch sind, ist dieses Wissen bei vielen Menschen später anderen Dingen gewichen. Der Naturschutzbund Deutschland stellt deshalb einen umfangreichen Vogelführer zur Verfügung.</p>
<h2>Funktionen</h2>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/unnamed2.jpg"><img loading="lazy" decoding="async" class="size-medium wp-image-3947 alignright" alt="unnamed2" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/unnamed2-180x300.jpg" width="180" height="300" /></a>Mit dem<a href="http://www.nabu.de/naturerleben/onlinevogelfuehrer/11280.html"> NABU Vogelführer</a> wird einem über alle Smartphoneplattformen hinweg ein durchgängiges Erlebnis geboten. Er ist für Android, iPhone und Windows Phone verfügbar und kann darüber hinaus über eine mobile Webseite aufgerufen werden. Mit dem Vogelführer lassen sich gesehene Vögel anhand verschiedener Merkmale bestimmen und Informationen dazu anzeigen. Neben Schnabel, Füße, Größe und Gefieder kann man auch den Lebensraum, in dem man das gewünschte Tier gesehen hat, angeben. Danach erhält man eine Liste mit allen Vögeln, die diesen Merkmalen entsprechen. Wählt man ein Tier aus, erhält man vielfältige Informationen dazu. In den jeweiligen Apps können Lieblingsvögel zu Favoriten einteilen, um Infos zu diesen immer griffbereit zu haben.</p>
<h2>Fazit</h2>
<p>Der NABU Vogelführer glänzt durch seine Plattformunabhängigkeit und seinen vielfältigen Infos. Vor allem die Filtermöglichkeiten sind sinnvoll gewählt, denn so können gesehene Vögel leicht wiedererkannt werden. Die jeweiligen Smartphone Apps benötigen zudem keine Internetverbindung und können so auch in Funklöchern zuverlässig verwendet werden. Wünschenswert wäre noch, dass die jeweiligen Vogellaute über das Handy abgespielt werden können.</p>
<h5>&#8211; Thomas Ederer</h5>
<hr />
<h1>iForest</h1>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/Screenshot_2014-01-24-09-54-57.png"><img decoding="async" class="size-medium wp-image-3995 alignleft" alt="iForest" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/Screenshot_2014-01-24-09-54-57-180x300.png" width="150" /></a>Mit iForest lassen sich einheimische Bäume und Sträucher leicht bestimmen. Durch einfaches Auswählen der diversen Pflanzeneigenschaften wird das Suchergebnis immer weiter eingeschränkt bis nur noch die passende Pflanze übrigbleibt. Dazu erhält der Nutzer dann umfassende Informationen zu den Merkmalen, Standorte und Verbreitung, Geschichte, Heilkunde und vieles mehr.<br />
Die Applikation hat auch eine integrierte Suchfunktion mit Hilfe dessen direkt nach dem Namen der Pflanze gesucht werden kann. Außerdem hat man die Möglichkeit, seine Lieblingsbäume oder -sträucher als Favorit zu speichern, um sie später schneller wieder zu finden.<br />
Des Weiteren hat die App eine Trainingsfunktion, mit der ein Frage-Antwort Quiz gespielt werden kann. Dabei wird immer ein Bild angezeigt und darunter stehen drei Antwortmöglichkeiten zur Bestimmung zur Verfügung.</p>
<h2 class="clear">Test</h2>
<p><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/Screenshot_2014-01-24-09-52-53.png"><img decoding="async" class="alignright size-medium wp-image-3993" alt="iForest Heilkunde" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/Screenshot_2014-01-24-09-52-53-180x300.png" width="150" /></a><br />
Beim Testen der Applikation unter Android wurde festgestellt, dass diese sehr rund läuft und Farben sowie Layout ansprechend gestaltet sind. Ein Kritikpunkt ist die etwas zu klein gewählte Schrift bei langen Detailtexten.<br />
Außerdem können die gewählten Filter nicht alle auf einmal wieder gelöscht werden. Um eine neue Pflanze bestimmen zu können, müssen die gesetzten Filter wieder einzeln deaktiviert werden.</p>
<p>Auch der Praxistest hat gezeigt, dass die Pflanzeneigenschaften sehr gut dargestellt und erklärt sind, wodurch eine Bestimmung von Bäumen und Sträucher leicht möglich war. Lediglich der Salbei im Garten wurde von der Applikation nicht gefunden.</p>
<div class="clear">

<a title="DSC06902" href='https://mobile.fhstp.ac.at/allgemein/waldpaedagogik/attachment/dsc06902/'><img loading="lazy" decoding="async" width="150" height="150" src="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06902-150x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06902-150x150.jpg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06902-32x32.jpg 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06902-64x64.jpg 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06902-96x96.jpg 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06902-128x128.jpg 128w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a>
<a title="DSC06899" href='https://mobile.fhstp.ac.at/allgemein/waldpaedagogik/attachment/dsc06899/'><img loading="lazy" decoding="async" width="150" height="150" src="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06899-150x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06899-150x150.jpg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06899-32x32.jpg 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06899-64x64.jpg 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06899-96x96.jpg 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06899-128x128.jpg 128w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a>
<a title="DSC06896" href='https://mobile.fhstp.ac.at/allgemein/waldpaedagogik/attachment/dsc06896/'><img loading="lazy" decoding="async" width="150" height="150" src="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06896-150x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06896-150x150.jpg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06896-32x32.jpg 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06896-64x64.jpg 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06896-96x96.jpg 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06896-128x128.jpg 128w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a>
<a title="DSC06904" href='https://mobile.fhstp.ac.at/allgemein/waldpaedagogik/attachment/dsc06904/'><img loading="lazy" decoding="async" width="150" height="150" src="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06904-150x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06904-150x150.jpg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06904-32x32.jpg 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06904-64x64.jpg 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06904-96x96.jpg 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06904-128x128.jpg 128w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a>
<a title="DSC06903" href='https://mobile.fhstp.ac.at/allgemein/waldpaedagogik/attachment/dsc06903/'><img loading="lazy" decoding="async" width="150" height="150" src="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06903-150x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06903-150x150.jpg 150w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06903-32x32.jpg 32w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06903-64x64.jpg 64w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06903-96x96.jpg 96w, https://mobile.fhstp.ac.at/wp-content/uploads/2014/01/DSC06903-128x128.jpg 128w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a>

</div>
<p>Alle nötigen Daten werden bei der App-Installation geliefert, wodurch die Verwendung auch im Wald ohne Internetempfang möglich ist.</p>
<p>Die Applikation ist für Android und iOS verfügbar und kostet rund 13€.</p>
<h5>&#8211; Michael Kräftner</h5>
<hr />
<h1>Käferkunde</h1>
<div id="attachment_4173" style="width: 179px" class="wp-caption alignleft"><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/02/screen568x568.jpeg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4173" class="size-medium wp-image-4173" alt="Käferkunde" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/02/screen568x568-169x300.jpeg" width="169" height="300" /></a><p id="caption-attachment-4173" class="wp-caption-text">Käferkunde</p></div>
<p>Die App <a title="Käferkunde im Store" href="https://itunes.apple.com/de/app/kaferkunde/id719465887?mt=8">Käferkunde</a> für  das iPhone ermöglicht das Nachschlagen, Bestimmen und Erlernen von unterschiedlichen Käferarten. Zur Zeit umfasst die App rund 150 Käfer. Laut Herausgeber wird die Bibliothek aber stetig erweitert. Außerdem enthält die App einen Lernmodus, in dem die eigenen Kenntnisse über Käfer abgefragt werden. Nebenbei können gefundene Käfer auf einer GPS-Karte eingezeichnet und mit Hilfe von Fotos dokumentiert werden.</p>
<p>Die App hat ein sehr schönes Design und eine durchdachte Bedienung. In der Praxis funktionierte das Käferbestimmen mit Hilfe des Filtern ganz gut. Auch der Lernmodus mit dem Quiz macht Spaß und erweitert das Käferwissen. Mit 7 Euro kostet die App aber schon relativ viel. Immerhin ist die Idee ja nicht ganz neu und ähnliche Anwendungen kosten oft nur die Hälfte. Abheben kann sich die App aber trotzdem durch das herausragende Design und den Lernmodus.</p>
<h5 class="clear">&#8211; Christian Gradl</h5>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/waldpaedagogik/">Das Smartphone im Einsatz in der Waldpädagogik</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>eCampus Feedback via QR-Codes</title>
		<link>https://mobile.fhstp.ac.at/studium/studium-projekte/ecampus-feedback-via-qr-codes/</link>
		
		<dc:creator><![CDATA[Francesco Novy]]></dc:creator>
		<pubDate>Sun, 19 Jan 2014 15:10:37 +0000</pubDate>
				<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Print]]></category>
		<category><![CDATA[QR-Code]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=3861</guid>

					<description><![CDATA[<p>Mein Projekt im Rahmen des QR-Code-Projekts der FH St. Pölten ermöglichte es Nutzern, durch das Scannen eines QR-Codes eine Stimme für oder gegen ein aktuelles Thema abzugeben. Während ursprünglich geplant war, mehrere unterschiedliche Fragen zu stellen, wurde dies später auf eine Befragung zum neuen eCampus der FH reduziert, da ich mich mit der FH nicht <a class="read-more" href="https://mobile.fhstp.ac.at/studium/studium-projekte/ecampus-feedback-via-qr-codes/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/studium/studium-projekte/ecampus-feedback-via-qr-codes/">eCampus Feedback via QR-Codes</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Mein Projekt im Rahmen des QR-Code-Projekts der FH St. Pölten ermöglichte es Nutzern, durch das Scannen eines QR-Codes eine Stimme für oder gegen ein aktuelles Thema abzugeben. Während ursprünglich geplant war, mehrere unterschiedliche Fragen zu stellen, wurde dies später auf eine Befragung zum neuen eCampus der FH reduziert, da ich mich mit der FH nicht auf weitere Fragen einigen konnte.</p>
<p>Schlussendlich wurde ein Plakat erstellt sowie eine Website, auf der man abstimmen kann sowie das Abstimmungsergebnis sehen kann. Während das System technisch für beliebig viele Fragen ausgelegt worden ist, wurde im Endeffekt nur eine Frage genutzt.</p>
<p><span id="more-3861"></span></p>
<h2>Umsetzung</h2>
<p>Ein Plakat wurde in Adobe Illustrator entworfen, in A3 gedruckt und an einigen Stellen in der FH aufgehängt.</p>
<p style="text-align: left;"><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/plakat_ecampus.jpg"><img decoding="async" class="aligncenter  wp-image-3862" alt="Plakat" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/plakat_ecampus.jpg" width="400" /></a></p>
<p>Kernidee war es, dass auf dem Plakat direkt zwei Optionen sichtbar sind. Durch das Scannen eines der beiden Codes wurde auf der Abstimmungs-Seite die entsprechende Option bereits vorausgewählt. Die Idee dahinter war es, dass User das Gefühl bekommen schon durch das Scannen an sich eine Aktion zu setzen, anstatt erst zu Scannen um danach zu sehen was man eigentlich tun kann/soll.</p>
<div id="attachment_3864" style="width: 335px" class="wp-caption aligncenter"><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/ecampus_index.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3864" class="size-full wp-image-3864" alt="Vote" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/ecampus_index.png" width="325" height="454" /></a><p id="caption-attachment-3864" class="wp-caption-text">Je nach gescanntem Code wird eine Option größer und farbig angezeigt.</p></div>
<p>Nach dem Bestätigen einer Option gelangt man zum Ergebnis-Screen. Dort sieht man den aktuellen Stand der Umfrage. Außerdem gibt es die Möglichkeit, noch ein schriftliches Feedback zu geben. Dieses wurde anonymisiert abgespeichert. Zum Verhindern mehrfacher Votes wurden verschiedene Clientseitige Lösungen wie LocalStorage und Cookies genutzt. Diese Möglichkeiten bieten natürlich keine 100-prozentige Sicherheit gegen doppelte Votes, jedoch ist anzunehmen dass der nötige Aufwand für diesen speziellen Anlass zu groß ist als dass viele User das machen würden: ein &#8220;Betrug&#8221; hat für Benutzer eigentlich keinerlei Nutzen.</p>
<div id="attachment_3863" style="width: 381px" class="wp-caption aligncenter"><a href="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/ecampus_vote.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3863" class="size-full wp-image-3863 " alt="Der Ergebnis-Screen zeigt ein Piechart auf CSS3-Basis sowie ein Formularfeld zum Feedback geben." src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2014/01/ecampus_vote.png" width="371" height="694" /></a><p id="caption-attachment-3863" class="wp-caption-text">Der Ergebnis-Screen zeigt ein Piechart auf CSS3-Basis sowie ein Formularfeld zum Feedback geben.</p></div>
<p>&nbsp;</p>
<h2></h2>
<h2>Zielsetzung und Ergebnis</h2>
<p>Ziel des Projektes war es, 50 Abstimmungen zu erreichen. Dieses Ziel wurde mit 40 tatsächlichen Stimmabgaben knapp verfehlt. Zusätzlich haben 8 User schriftliches Feedback gegeben. <strong>Insgesamt finden 2/3 (67%) der User, die teilgenommen haben, dass der eCampus vorher besser war als nachher.</strong> Vor allem die mobile Version wurde im schriftlichen Feedback viel kritisiert. Die gesammelten Informationen werden zum Projektabschluss an das zuständige Organ der FH weitergegeben, um das Usererlebnis des eCampus verbessern zu können.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/studium/studium-projekte/ecampus-feedback-via-qr-codes/">eCampus Feedback via QR-Codes</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Offline REST Fallback via LocalStorage</title>
		<link>https://mobile.fhstp.ac.at/development/webdevelopment/offline-rest-fallback-mit-javascript/</link>
		
		<dc:creator><![CDATA[Francesco Novy]]></dc:creator>
		<pubDate>Sat, 30 Nov 2013 08:51:43 +0000</pubDate>
				<category><![CDATA[Webdevelopment]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[ember]]></category>
		<category><![CDATA[ember-data]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[localstorage]]></category>
		<category><![CDATA[Offline]]></category>
		<category><![CDATA[rest]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=3616</guid>

					<description><![CDATA[<p>Für unser Projektmanagement-Tool „Herculess“ ist ein wichtiger Aspekt, dass die App Offline-fähig ist. Während das in einer nativen App relativ einfach möglich ist, ist solch eine Funktionalität bei Web-Apps immer noch nur sehr selten zu finden. Die Web-App von Herculess basiert auf dem JavaScript-MVC-Framework Ember.js, welches, ergänzt durch Ember-Data, sehr einfach mit REST-APIs umgehen kann. <a class="read-more" href="https://mobile.fhstp.ac.at/development/webdevelopment/offline-rest-fallback-mit-javascript/">[...]</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/webdevelopment/offline-rest-fallback-mit-javascript/">Offline REST Fallback via LocalStorage</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Für unser Projektmanagement-Tool „Herculess“ ist ein wichtiger Aspekt, dass die App Offline-fähig ist. Während das in einer nativen App relativ einfach möglich ist, ist solch eine Funktionalität bei Web-Apps immer noch nur sehr selten zu finden. Die Web-App von Herculess basiert auf dem JavaScript-MVC-Framework Ember.js, welches, ergänzt durch Ember-Data, sehr einfach mit REST-APIs umgehen kann. So kümmert sich das Framework komplett um den Datenerhalt und die Synchronisierung und der Developer muss nur mit den von Ember bereitgestellten Objekten arbeiten. Auch Promises werden automatisch implementiert.</p>
<p>Während Ember-Data somit extrem hilfreich ist und auch für sehr komplexe Applikationen geeignet ist, stießen wir auf das Problem, dass man zwar einstellen kann, ob man die Daten über eine REST-API oder den LocalStorage persistieren möchte, aber nicht beide Optionen gleichzeitig nutzen kann. Für Herculess brauchen wir aber eine Funktionalität, die standardmäßig Daten vom REST-Server holt und nur im Offline-Fall auf zwischengespeicherte Daten aus dem LocalStorage zurückgreift.</p>
<p><span id="more-3616"></span></p>
<h2>Der Weg zum Ziel</h2>
<p>Die Lösung dieses Problems war nicht ganz einfach und hat erst einmal zu diversen Fehlversuchen geführt. Erste Ansätze waren es, den bestehenden LocalStorage-Adapter von Ember-Data umzubauen und um eine Hintergrund-Synchronisierung zu ergänzen. So hätte Ember immer lokal im LocalStorage gearbeitet und nur im Hintergrund wären die Daten von der REST-API in den LocalStorage geschrieben worden. Das Problem hierbei war jedoch, dass Ember, um stets eine Datenintegrität zu gewährleisten, es nicht ermöglicht, zur Laufzeit alle Daten aus dem LocalStorage zu erneuern. Es hätte stets nach dem Update von der REST-Schnittstelle eine kompletter Seitenrefresh durchgeführt werden müssen, was wiederrum die unbemerkte Synchronisierung unmöglich gemacht hätte.</p>
<p>Nachdem diverse Experimente in diese Richtung fehlgeschlagen sind, haben wir einen neuen Ansatz ausprobiert: Wenn die App offline ist, sollen die Ajax-Calls einfach statt an den Server an eine (offline verfügbar gemachte) Datei geroutet werden und diese dann aus dem LocalStorage zwischengespeicherte Daten in derselben Form wie die richtige REST-API zurückgeben. So könnte der Client immer gleich arbeiten und nur die URL der AJAX-Calls müsste geändert werden. Das Problem hierbei ist natürlich, dass man lokal nur JavaScript/HTML zwischenspeichern kann und diese clientseitig keine reinen JSON-Responses zusammenbauen können: Die AJAX-Calls parsen die Responses ja nicht, sondern geben nur den Dateiinhalt zurück.</p>
<p>Somit sind wir schlussendlich bei einer Adaption dieser Idee gelandet. Anstatt eine Pseudo-API zu implementieren, fangen wir alle AJAX-Calls ab und liefern mithilfe des jQuery-Plugins jquery.ajax.fake selbst zusammengebaute JSON-Responses zurück.</p>
<h2>Unsere Lösung</h2>
<p>In der Praxis sieht das wie folgt aus:</p>
<p>Der erste Schritt ist es, die Daten überhaupt einmal zwischen zu speichern. Dafür haben wir eine JavaScript-Klasse erstellt, welche für alle Synchronisations-Vorgänge zuständig ist. Diese ist komplett unabhängig von Ember.</p>
<p>Diese Klasse hat eine „sync()“ Funktion. Diese Funktion holt sich von der REST-API über eine eigene Route „/downSync“ eine Kollektion aller wichtigen Daten für diesen User. Diese Kollektion enthält alle Tasks und Projekte, die für diesen User wichtig sind.</p>
<p>Das Sync-Objekt speichert diese Daten dann in den LocalStorage. Danach wird nach einigen Sekunden erneut sync() aufgerufen und die Daten im LocalStorage aktualisiert. Somit sind die Daten im LocalStorage immer (bis auf seltene Ausnahmen) eine Spiegelung der Daten von der REST-API.</p>
<p>Der nächste Schritt ist es, abzufragen, ob gerade eine Internet-Verbindung besteht. Das machen wir beim ersten Seitenaufruf über „navigator.onLine“, welcher den Online-Status zurückgibt. So wird ein Cookie „is-offline“ auf true oder false gesetzt. Danach wird bei jedem Sync-Versuch dieser Cookie angepasst, falls der Sync-Versuch fehlschlägt oder doch wieder klappt.</p>
<p>Falls die App erkennt, dass man plötzlich offline geht, schaltet sie auf jquery.ajax.fake um. Dafür verändern wir über die jQuery-Funktion „$.ajaxSetup“, welche Voreinstellung für alle folgenden $.ajax-Calls setzen kann, das Attribut „fake: true“. Dieses braucht jquery.ajax.fake, um zu wissen dass dieser Request gefakt werden soll.</p>
<p>Zusätzlich dazu muss man, damit die Fake-Responses funktionieren, für jede URL einstellen, welcher Response kommen soll. Da es unmöglich wäre, hier im Vorfeld alle möglichen URLs einzustellen (da wir ja auch Parameter wie IDs mitsenden), muss das automatisch geschehen. Das haben wir so gelöst, dass wir in der Ember-Data Methode, die für die AJAX-Aufrufe zuständig ist, noch eine Zeile hinzugefügt haben, die – vor dem Senden – zu der nun gleich gesendeten URL immer die gleiche Funktion aufrufen soll.</p>
<pre class="brush: jscript; title: ; notranslate">
$.ajax.fake.registerWebservice(url, function(data) {
    return restSyncer.fakeAjax(data);
});
</pre>
<p>Außerdem fügen wir vor dem Senden die URL als Parameter zum AJAX-Request hinzu.</p>
<p>Die Funktion, welche die Fake-AJAX-Responses zusammen bauen soll, kann dann über den so mitgelieferten Parameter „url“ ermitteln, welche Route angesprochen wurde, und dann aus dem LocalStorage entsprechend einen Response zusammenbauen und zurückgeben. Die eigentliche App merkt so nie, ob die Daten jetzt wirklich vom Server oder aus dem LocalStorage kommen. Sobald die App wieder online ist, wird automatisch umgestellt – ohne, dass der User es merkt.</p>
<p>Während diese Methode, soweit bisherige Test gezeigt haben, sehr gut und nahtlos funktioniert, hat sie auch zwei Nachteile: Jede Änderung der REST-API muss genau im Client gespiegelt werden, und es entsteht zusätzlicher Traffic durch das Syncen im Hintergrund. Letzteres werden wir in späteren Versionen optimieren, indem wir einen Timestamp der letzten Synchronisierung mitschicken und so nur neue Einträge erhalten. Außerdem soll man in der App die Frequenz der Sync-Abfragen einstellen können oder auch nur manuell synchronisieren.</p>
<p>Die aktuelle Implementation funktioniert bereits für alle GET-Requests. POST, PUT oder DELETE Requests sind aber genauso lösbar: Hierfür werden wir alle solche offline getätigten Requests eigens im LocalStorage speichern, und wenn die App wieder online geht werden diese gespeicherten Requests einer nacheinander erneut an den Server gesendet. Hierbei ist es besonders wichtig, den Status mitzuspeichern: Erstens muss der User immer wissen, ob gerade etwas synchronisiert wird oder ob alle Daten aktuell sind, und zweitens muss die App immer wissen, ob ein Request erfolgreich beim Server angekommen ist oder ob es wieder einen Fehler gab und es später erneut versucht werden muss, um den Verlust von Daten zu verhindern.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/development/webdevelopment/offline-rest-fallback-mit-javascript/">Offline REST Fallback via LocalStorage</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
