Dieses Informationsfenster platziere ich freiwillig und unentgeldlich zur Unterstützung meiner Schwester bei ihrem Jobwechsel. Es wird nur für eine begrenzte Zeit angezeigt und kann ausgeblendet werden. Ich hoffe, dass die Aktion keinen meiner Leser zu sehr stört. Zum Ausblenden werden Cookies benutzt, diese müssen aktiviert und für diese Seite erlaubt werden. Werden die Cookies gelöscht oder die Seite auf einem anderen Gerät betrachtet, erscheint das Informationsfenster wieder und muss erneut geschlossen werden.

Information

Katja Schurig sucht neue berufliche Herausforderungen!

Liebe Leser, ich habe hier einen Geheimtipp für euch:
Katja Schurig
Katja Schurig, berufserfahren und kampferprobt in den Bereichen Veranstaltungsmanagement und -verkauf, Personalwesen, Sales & Marketing sowie Tourismus, will sich neuen beruflichen Herausforderungen stellen. Wer mit viel Energie umgehen kann und auf der Suche nach einer professionellen Fachkraft ist (oder jemanden kennt, der jemanden kennt), der findet ihr Profil nebst Kontaktdaten auf: Xing
Edit Comment
IT-Stuff, Tutorials, Software, Internet, Unterhaltung Willkommen auf IMA

Archive for the ‘Google & Co’ Category

Vor langer Zeit suchte ich eine Möglichkeit coole Locations und besuchenswerte Orte gut sichtbar „anpinnen“ zu können, auf einer großen Karte wie der Google Map. Warum das nicht selber entwickeln? 😉

Mit der „Location Map“ habe ich versucht diesen Gedanken umzusetzen. Auf der Google Map kann man mit Hilfe eines Formulars neue Locations mit einem Icon anpinnen, und noch eine Beschreibung hinzufügen. Die Beschreibung kann bequem mit einem Editor bearbeitet werden. Ebenso lassen sich die Einträge natürlich nachträglich bearbeiten und löschen.
location-map-interaktive-google-maps-webapplication-banner
location-map-interaktive-google-maps-webapplication-tooltip location-map-interaktive-google-maps-webapplication-editform

Der größte Knackpunkt des Projekts bestand darin die in der Datenbank gespeicherten Locations dynamisch auf die Google Map laden zu lassen und jeder Location ein eigenes Icon, ein Klick Event und ein Info Window zu geben. Diesen schweren Part würde ich hier kurz veröffentlichen. Ich gehe davon aus, dass ihr schon mit der Google Map hantiert und sie am besten auch schon lauffähig realisiert habt. Hier geht es jetzt nur noch im die Location Marker mit Icon, Klick Event und Info Box.

Hinweis: Dieser Code und die folgenden Anmerkungen beziehen sich auf eine veraltete Version der Location Map, zeigen aber die Grundfunktionalität der Map mit den Locations. Der Aufbau zeigt also eine Art Minimalgerüst. Für weitere Features bitte den Code aus der Demo Page (siehe unten) benutzen.
Code

map.php:

<body onload="initialize()" onunload="GUnload()">
<div id="map_canvas"></div>

In der Webseite wird beim onload die initialize Funktion aufgerufen, in der die Google Map initialisiert und zusammengebastelt wird.

locations-main.js:

/* GMaps v3 !!! */				
function initialize() {
	
	// map initialisieren
	map = new google.maps.Map(document.getElementById("map_canvas"), 
	{
		zoom: 11,
		center: new google.maps.LatLng(52.510788, 13.426666),
		mapTypeId: google.maps.MapTypeId.HYBRID
	}); 
	 
	// marker
	$.ajax({
		type: 'POST',
		url: 'locationmgr.php',
		dataType: 'json',
		data: 'action=get',
		success: function(data) {
			for (loca in data) {
				setMarkers( map, 
					data[loca]['XKoord'], 
					data[loca]['YKoord'],
					data[loca]['Titel'],
					data[loca]['Icon'],
					data[loca]['Inhalt'],
					data[loca]['EventID']
					);
			}
			infowindow = new google.maps.InfoWindow({
				content: "loading...",
				maxWidth: 300
			});
		}
	});
}

function setMarkers(map, XKoord, YKoord, Titel, Icon, Inhalt, ID) {
	var marker = new google.maps.Marker({
		position: new google.maps.LatLng(XKoord, YKoord),
		map: map,
		title: Titel,
		html: generateInfoWindowHtml(Titel, Icon, Inhalt, ID),
		icon: new google.maps.MarkerImage("img/"+ Icon +".png")
	});

	google.maps.event.addListener(marker, "click", function () {
		infowindow.setContent(this.html);
		infowindow.open(map, this);
		$('div.infowindow').css({
			'height':'+=3px'
		});
	});
}

function generateInfoWindowHtml(Titel, Icon, Inhalt, ID) {
	var html = "\
	<div class='infowindow'>\
		<img class='infowindowmoodicon' src='img/"+Icon+".png' alt='"+Icon+"' />\
		<h5>"+Titel+"</h5>\
		<div class='fulltext'>"+decodeHtml(Inhalt)+"</div>\
		<span class='edit' onclick='javascript:editLocation("+ID+");'>(edit)</span>\
	</div>";
	return html;
}

function decodeHtml(encodedHtml) {
  return encodedHtml
      .replace(/&amp;/g, '&')
      .replace(/&lt;/g, '<')
      .replace(/&gt;/g, '>')
      .replace(/&quot;/g, '"')
      .replace(/&#039;/g, "'");
}

Anmerkungen:
Wie in Zeile 1 schon gesehen, ist der Code nach dem aktuelleren Google Maps API v3 Standard programmiert. Irgendwann während meiner Entwicklung stellte Google von v2 auf v3 um und ich programmierte ebenso mein halbes Projekt um, man möchte ja mit dem Fortschritt mithalten.
In den Zeilen 4-10 wird die Google Map im div initialisiert, das Zentrum auf den Berlin Alexanderplatz gesetzt, Zoom und MapType gesetzt.
Nun werden in 12-19 die Locations mit der locationmgr.php aus der Datenbank geladen und für Javascript aufbereitet. Die Daten werden entgegengenommen und eine Schleife durchläuft nun in Zeile 19 jeden Locationdatensatz. setMarkers wird aufgerufen und erzeugt in den Zeilen 38-44 ein Marker Objekt. Dieses wird mit map: map direkt auf die Google Map gepinnt.
Hier erfolgt noch der Aufruf der generateInfoWindowHtml. Diese bastelt ein optisch etwas angepasstes InfoWindow mit der Beschreibung und gibt das komplette HTML Paket zurück an das Marker Objekt, welches daraus das Info Window baut.
In den Zeilen 46-52 wird ein Listener auf das soeben erstellte Marker Objekt gelegt.
Diese 3 Schritte – Marker erstellen, InfoWindow generieren, Listener zuweisen – werden für jede Location ausgeführt und in die Map integriert.


Demo

http://public.hannes-schurig.de/LocationMapDemo/map.php
Demo Version: 0.16


Changelog

Code anzeigenDen Code könnt ihr bequem mit den Links/Rechts Pfeiltasten horizontal bewegen.

Changelog (08.04.2013)

  • v0.1: Event Map zeigt Events an, Events können erstellt und gelöscht werden, 2 Icons stehen zur Verfügung
  • v0.2: Events lassen sich anklicken, ein kleines Popup mit Zusatzinformationen erscheint, Eingabe der Zusatzinformationen bei neuen Events möglich
  • v0.3: Statt getrennter X und Y Koordinaten kann jetzt ein Koordinatenstring, der sich aus Google Maps extrahieren lässt, eingeben
  • v0.4: Statische Icons in eine Datenbank übertragen, die möglichen Icons werden jetzt direkt beim Erstellen neuer Events angezeigt und können somit ausgewählt werden
  • v0.5: Infofenster für das Koordinatentextfeld, komplette Umbenennung in Location Map inklusive aller Codeverweise
  • v0.6: Locations löschen jetzt via selektieren, mit Suchfunktion
  • v0.7: etliche Designverbesserungen und Fixes
  • v0.8: komplette Umprogrammierung: Umstieg von Maps API v2 auf Maps API v3
  • v0.9: komplette Umprogrammierung: Umstieg von HTML Forms auf AJAX
  • v0.10: kleine Informationsfenster als Feedback für den User am unteren Bildschirmrand
  • v0.11: 2 Events mit gleichem Namen verboten, doppelte Überprüfung
  • v0.12: Edititeren von bestehenden Locations
  • v0.12.1: Löschen aus dem Update Dialog
  • v0.12.2: Umstrukturierung des HTML Codes, neuer Formularaufbau
  • v0.13: Dialog Manager kürzt den Code um ca 20%
  • v0.14: verbesserte Unterstützung von Auflösungen kleiner als 1280px
  • v0.14.1: Fehler im Dialog Manager, wenn der zu öffnende Dialog schon geöffnet ist, behoben
  • v0.15: für die Veröffentlichung vorbereitet: Read-Only-Modus, Read-Only-Designset
  • v0.15.1: neuer HTML Head, Meta Tags, see/ref ergänzt, CSSDOC DocBlock erweitert
  • v0.16: Maus-Features: Linksklick auf die Map -> fügt automatisch die Koordinaten des Klicks in das „Neue Location“ Koordinatenfeld ein, Rechtsklick auf die Map -> Management Menü (noch ungenutzt)

To-Do:
Rechte- & Usermanagement
Zuklappen der rechten Seite zulassen
Größen der Map und Formulare dynamisch ändern
Mehr Icons
fehlerhaften Login optisch hervorheben
Unterstützung für mobile Geräte und kleinere Auflösungen einbauen/verbessern


Download

Ich habe schon ein Paket fertig geschnürt, dass die komplette Entwicklung in wenigen Minuten auf dem eigenen Server einrichten lässt, werde das aber erstmal nur auf Anfrage herausgeben. Die Entwicklung hat noch einige Macken und vermisst noch viele Features. Vorerst werde ich selber an dem Projekt weiterarbeiten und es dann in einem reiferen Zustand veröffentlichen.


Was Google erschafft ist grundsätzlich erstmal einen Blick wert und weiß dann oft zu überzeugen. Also, werfen wir einen Blick auf das neue WebP Bildformat-Standard, entwickelt von Google. Vor wenigen Tagen wurde die neue Version 0.2 veröffentlicht.

Die Vorteile:

  • verlustfreie Kompression von Bildern im Web
  • 26% kleiner als PNG, 25-34% kleiner als JPG bei gleichem SSIM Index
  • verlustfreie Transparenz mit nur 22% mehr Bytes

Der neue Standard verspricht also nichts weiter als die Weiterentwicklung des Internets durch die Verbesserung der verwendeten Bilder. Bei gleicher Qualität sollen diese kleiner werden und somit die Geschwindigkeit des Seitenaufbaus auf Seiten des Nutzers erhöhen und eine Reduzierung von Traffic und damit auch Kosten auf Seiten des Webseitenbetreibers erreichen.

Wie werden WebP Bilder erstellt?

Einige Bildbearbeiter können bereits mit WebP umgehen: Pixelmator, ImageMagick, GIMP (Plugin), Leptonica, XnConvert, XnView, Irfan View, Picasa (ab 3.9), Photoshop (Plugin) und Weitere.
Oder auch: der WebP Codec für Windows ermöglichst durch die Installation das Betrachten von WebP Bildern mit jedem Programm und die WebP Tools für x86 oder x64 (inkl. header und library files) ermöglichen das Erstellen von WebP Bildern ohne spezielle Software.
Das Toolpaket enthält ein Programm cwebp.exe, welches gängige Bildformate in Webp umwandelt. Siehe Readme Datei für mehr Informationen.

Ich habe hier eine BMP Grafik in JPG (80% Qualität), PNG (Compression Stufe 6) und WebP (80% Qualität) umgewandelt. Das WebP Bild ist 30% kleiner als das JPG und 60% kleiner als das PNG.

Wie wird WebP verwendet?

Webseitenbetreiber können in Zukunft einfach WebP Bilder statt PNG/JPG in ihre Webseiten einbauen. Problem ist nur: die Unterstützung von WebP ist noch relativ klein. Google Chrome 9+ und Opera 11.10+ unterstützen direkt den neuen Standard, Firefox lässt sich mit einem Patch dazu bewegen. Für alle anderen Browser gibt es Javascript Lösungen aber das soll natürlich kein Zustand bleiben.
Ich als Webmaster hoffe, dass bald mehr und mehr Browser WebP integrieren und somit den Trend dieses Formats unterstützen.

Wie sieht das dann aus?

Nicht anders als sonst, wenn alles klappt.
Auch hier in meinem Blog möchte ich jetzt mal ein WebP Bild nutzen. Wer es sieht; herzlichen Glückwunsch, du nutzt einen modernen Browser 😉
[Bild]
ea-logo-webp-test
[/Bild]


‚Power Searching with Google‘ – Class 6

Hier sind die Lehreinheiten des sechsten (und letzten) Kurses von Power Searching with Google.

Power Searching with Google – Class 6:

6.1 – Combining methods

Combine operators for stronger searches.
YouTube Preview Image
Beispiel einer komplexen Suche:
filetype:kmz shipwrecks OR „ship wrecks“ florida -site:floridamarine.org -site:the-jacobs.org
(kmz = Datei für Google Maps)

6.2 – Think broadly

Combine methods and approaches to find information efficiently.
Conduct research effectively with tools that are not traditionally used for research.
YouTube Preview Image
Kleine Herausforderung: „Befindet sich Moos an allen Steinen von Stonehenge in allen Himmelsrichtungen?“
Wie würdet ihr es lösen?

6.3 – Summary

Identify ways to continue learning how to be an effective searcher.
YouTube Preview Image

Links:
Inside Search – News, Tipps, Tricks aus dem Hause Google Search
SearchReSearch„A blog about search, search skills, teaching search, learning how to search, learning how to use Google effectively, learning how to do research. It also covers a good deal of sensemaking and information foraging.“
Das „A Google A Day“ Spiel – Jeden Tag eine knifflige Frage, die es mit Google und guten Suchskills so schnell wie möglich zu beantworten gilt.
Das ganze auf Zeit, mit Punktbewertung, Rankings, Auszeichnungen usw. Nice!

(Diese Frage war mit 28 Sekunden relativ einfach zu beantworten ^^)


‚Power Searching with Google‘ – Class 5

Hier sind die Lehreinheiten des fünften Kurses von Power Searching with Google.

Power Searching with Google – Class 5:

5.1 – Credibility

Verify the credibility of information you find.
YouTube Preview Image

5.2 – Variant data

Avoid confirmation bias when conducting searches.
YouTube Preview Image

5.3 – Using Books to verify a quote

Search appropriate sources that offer authoritative information for the type of information you are trying to find.
YouTube Preview Image
Google Suche -> Bücher -> „Full view“ search option -> nach dem Buch/Autor suchen, dann das Suchfeld im linken Bereich (unter dem Buchtital/Autor) mit dem Zitat füllen und suchen. Way to do it indeed.

5.4 – Using WHOIS and looking for other site information

Use WHOIS to identify who owns a particular website.
YouTube Preview Image

5.5 – Occasional misconceptions

Distinguish between the Google products that indicate credibility and those that do not.
YouTube Preview Image


‚Power Searching with Google‘ – Class 4

Hier sind die Lehreinheiten des vierten Kurses von Power Searching with Google.

Power Searching with Google – Class 4:

4.1 – Search-by-image

YouTube Preview Image

4.2 – Search features

YouTube Preview Image
deutsche Google Search Features
(etwa 5x so viele) englische Search Features

4.3 – Conversion and Calculator

YouTube Preview Image
Easter Egg:
[the number of horns on a unicorn] = 1
[the loneliest number] = 1
[how many horns does a unicorn have] + [the loneliest number] = 2

4.4 – Left hand panel and Date range limiting

YouTube Preview Image
Verrückt, wer hätte das gedacht: eine Zeitung aus dem Jahre 1810… fein säuberlich archiviert und super einfach einzusehen dank Google.
Geld markiert: der Präsident der Vereinigten Staaten von Amerika hat was zu sagen… mit einem kleinen Artikel in dieser Tageszeitschrift 😀

4.5 – Translation and search

YouTube Preview Image
Webseiten anderer Länder zu bestimmten Suchbegriffen in der eigenen Sprache, brauchbar.


Gestern war das erste „Powersearching with GoogleLive Hangout on Air mit Daniel Russell (und special guests).
Es wurden einige interessante Fragen zur Google Suche gestellt, die ich teilweise nicht sicher hätte beantworten können. Also ein interessanter Batzen Google Knowledge.

Hier das Video:
YouTube Preview Image

Dazu ein paar kurze Notizen:

  • All Advanced Search Operators for Web Search
  • other Google Products Special Search Operators
  • Number Range Operator
  • Beliebige Kombinationen von Operatoren sind möglich:
    physics -site:wikipedia.org
    physics OR astrophysics -site:edu site:gov filetype:pdf
  • Temporär außerhalb der Google Blase suchen: ausloggen oder den Inkognito/Private Browser-Modus nutzen
  • Verbatim Mode: „Mehr Optionen“ -> „Wortwörtlich“ oder „Show Search Tools“ -> „Verbatim“
    Dieser Suchmodus deaktiviert alle Bequemlichkeiten bei der Google Suche wie die Autokorrektur, Suchvorschläge, related search, Synonymisierung; die Suche sucht genau das, was eingegeben wurde, nichts anderes.

‚Power Searching with Google‘ – Class 3

Hier sind die Lehreinheiten des dritten Kurses von Power Searching with Google.

Power Searching with Google – Class 3:

3.1 – Web organization

YouTube Preview Image

3.2 – Filetype

YouTube Preview Image

3.3 – Removing invasive results

YouTube Preview Image

3.4 – OR and quotes

YouTube Preview Image

3.5 – intext: and Advanced Search

YouTube Preview Image

Nach diesem Kurs kann man das „Mid-Class Assessment“ machen. Dieser Test testet das Wissen der ersten 3 Kurse und ist, wie die Activities zuvor auch, alles andere als schwer. Ich habe ihn mit 100% abgeschlossen; bin mir unsicher, inwiefern das Ergebnis für das Zertifikat am Ende relevant ist.


Admin

Sie möchten hier werben oder Sponsor auf längere Zeit werden? Ich garantiere Ihnen unschlagbare Preise bei meinen Besucherzahlen. Egal ob Banner, Textlinks oder andere Werbeformen. Informieren Sie sich bei mir unter werbung@hannes-schurig.de