<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
		 <title>grafiniert: Naehkaestchen</title>
		 <link>http://www.grafiniert.de</link>
		 <description></description>
		 <language>en-en</language>
		 <generator>T3Blog 4.3.3</generator>
		 
<docs>http://blogs.law.harvard.edu/tech/rss</docs>

		 <copyright>grafiniert.de</copyright>
		 <managingEditor>info@grafiniert.de</managingEditor>
		 <webMaster>info@grafiniert.de</webMaster>
		 <image>
			<title>grafiniert: Naehkaestchen</title>
			<url>http://www.example.org/typo3conf/ext/t3blog/icons/rss.png</url>
			<link>http://www.grafiniert.de</link>
			<description></description>
		 </image>
		
<item>
	<title>Mehr als 2 Buttons in UINavigationBar</title>
	<author> (Dominik Schön)</author>
	<link>http://www.grafiniert.de/naehkaestchen/blog-post/2010/05/18/mehr-als-2-buttons-in-uinavigationbar.html</link>
<guid>http://www.grafiniert.de/naehkaestchen/blog-post/2010/05/18/mehr-als-2-buttons-in-uinavigationbar.html</guid>

	<pubDate>Tue, 18 May 2010 17:48:00 +0200</pubDate>
	<description>  Im Normalfall gibt es genau 2 Positionen für Buttons beim UINavigationController. Oftmals reichen die aber einfach nicht aus. Ein Beispiel dafür ist die App Anwaltsfinder. Allerdings gibt es einen sehr einfac</description>
					<content:encoded><![CDATA[  Im Normalfall gibt es genau 2 Positionen für Buttons beim UINavigationController. Oftmals reichen die aber einfach nicht aus. Ein Beispiel dafür ist die App Anwaltsfinder. Allerdings gibt es einen sehr einfachen Weg, mehr als zwei Buttons in die UINavigationBar zu packen.UIToolbar* toolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 100, 44.01)];	[toolbar setBarStyle: UIBarStyleDefault];	NSMutableArray* buttons = [[NSMutableArray alloc] initWithCapacity:3];UIBarButtonItem *saveButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"info.png"] style:UIBarButtonItemStylePlain target:self action:@selector(showInfo:)];	saveButton.style = UIBarButtonItemStyleBordered;	[buttons addObject:saveButton];	[saveButton release]; 	UIBarButtonItem *spacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];	[buttons addObject:spacer];	[spacer release];	shownYET = NO;	rightButton = 	[[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"flag.png"] style:UIBarButtonItemStyleBordered target:self action:@selector(switchView)];	[buttons addObject:rightButton];	[toolbar setItems:buttons animated:NO];	[buttons release];self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:toolbar];	[toolbar release];Das ist der gesamte Code um zwei Buttons auf der rechten Seite der NavigationBar anzuzeigen.Was macht er im Detail?Es wird eine UIToolbar erstellt, die mit den eigentlichen UIBarButtonItems gefüllt wird. Anschließend wird der rechte Button-Slot der UINavigationBar mit einer eigenen View, eben der Toolbar initialisiert.Das war schon der ganze Zauber. Viel Spaß damit :-)]]></content:encoded>
</item>
<item>
	<title>Objective C und SOAP</title>
	<author> (Dominik Schön)</author>
	<link>http://www.grafiniert.de/naehkaestchen/blog-post/2010/05/18/objective-c-und-soap.html</link>
<guid>http://www.grafiniert.de/naehkaestchen/blog-post/2010/05/18/objective-c-und-soap.html</guid>

	<pubDate>Tue, 18 May 2010 17:41:00 +0200</pubDate>
	<description>  Objective C ist ja eine schöne Sprache und die Frameworks, die in Cocoa implementiert sind, sind zumindest am Mac wirklich sehr umfangreich. Die Auswahl für das iPhone ist da schon deutlich eingeschränkter. S</description>
					<content:encoded><![CDATA[  Objective C ist ja eine schöne Sprache und die Frameworks, die in Cocoa implementiert sind, sind zumindest am Mac wirklich sehr umfangreich. Die Auswahl für das iPhone ist da schon deutlich eingeschränkter. So fehlt aktuell leider auch noch eine saubere Implementierung einer SOAP Schnittstelle, die Funktionsaufrufe direkt aus der WSDL-Definition ließt.Ich will gar nicht lange um den heißen Brei reden. Dieses kleine Mac-Tool erstellt Objective-C Code aus einer WSDL-Definition. Sehr schick, auch wenn in unserem Fall noch ein klein wenig Nacharbeit nötig war.Viel Spaß damit.]]></content:encoded>
</item>
<item>
	<title>Veränderung</title>
	<author> (Dominik Schön)</author>
	<link>http://www.grafiniert.de/naehkaestchen/blog-post/2010/04/14/veraenderung.html</link>
<guid>http://www.grafiniert.de/naehkaestchen/blog-post/2010/04/14/veraenderung.html</guid>

	<pubDate>Wed, 14 Apr 2010 20:08:00 +0200</pubDate>
	<description>  Heute möchte ich nicht über technische Themen sprechen und auch nicht aus dem Nähkästchen plaudern.Es verändert sich schlicht und ergreifend einiges Rund um grafiniert.Die erfreulichste Veränderung lautet: grafin</description>
					<content:encoded><![CDATA[  Heute möchte ich nicht über technische Themen sprechen und auch nicht aus dem Nähkästchen plaudern.Es verändert sich schlicht und ergreifend einiges Rund um grafiniert.Die erfreulichste Veränderung lautet: grafiniert wächst.Nicht nur die Anzahl wirklich interessanter Projekte und Kunden ist in den letzten Monaten auf ein Maß gewachsen, wie ich es mir selbst nicht erträumt hätte.Das macht mich natürlich wahnsinnig stolz. Andererseits bedeutet dies auch, dass der Arbeitsaufwand einen Umfang annimmt, den ich allein, parallel zum Studium, nicht bewältigen könnte. Deshalb darf ich euch Matthias Brecht vorstellen.Matthias ist ein guter Freund und Kommilitone von mir und wird mich zukünftig auch im Geschäftsleben begleiten. Er wird vor allem Arbeiten im Bereich der iPhone-Entwicklung übernehmen und individuelle Web-Projekte auf Basis von Ruby (on Rails) entwickeln.Durch diese Veränderung hat es sich ergeben, dass sich auch die Geschäftsform des Unternehmens ändert.War ich vorher ein Einzelunternehmer und der Name grafiniert lediglich ein Zusatz, heißt das Unternehmen zukünftig wirklich grafiniert UG (haftungsbeschränkt). Die UG - Unternehmergesellschaft - ist eine Sonderform der bekannten GmbH. In diesem Sinne freue ich mich auf eine Zukunft mit Matthias, die hoffentlich an die Erfolge meiner Einzelunternehmung anknüpft.Viele Grüße,Dominik Schön]]></content:encoded>
</item>
<item>
	<title>Push-Notifications - Quick &amp; Dirty</title>
	<author> (Dominik Schön)</author>
	<link>http://www.grafiniert.de/naehkaestchen/blog-post/2010/03/06/push-notifications-quick-dirty.html</link>
<guid>http://www.grafiniert.de/naehkaestchen/blog-post/2010/03/06/push-notifications-quick-dirty.html</guid>

	<pubDate>Sat, 06 Mar 2010 11:26:30 +0200</pubDate>
	<description>  Push Notifications aus einer Webapplikation zu versenden ist keine Hexerei, so viel steht fest.Allerdings steht der Aufwand eine iPhone App zu schreiben, mit der die Push-Nachrichten dann angezeigt</description>
					<content:encoded><![CDATA[  Push Notifications aus einer Webapplikation zu versenden ist keine Hexerei, so viel steht fest.Allerdings steht der Aufwand eine iPhone App zu schreiben, mit der die Push-Nachrichten dann angezeigt werden, in keiner Relation zum Nutzen, den ein Benutzer dadurch hat. Push Meldungen sind oft nur nettes Beiwerk, tragen aber nicht maßgeblich zum Erfolg einer Webanwendung bei.Hier kommt PROWL ins Spiel. PROWL ist ein Web-Service, der über die gleichnamige iPhone App nahezu beliebige Push Notifications auf das iPhone senden kann. Ursprünglich wurde das System als Erweiterung für den Systemmeldungsdienst Growl am Mac entwickelt. Somit ließen sich beliebige Programmmeldungen, wie etwa fertige Downloads als Push Nachricht auf das eigene iPhone senden.Das richtig nützliche Feature an PROWL ist allerdings die öffentliche API. Über einen simplen HTTP Post Request können aus der eigenen (Web-)Anwendung heraus BELIEBIGE Nachrichten gepusht werden.Somit ist es möglich, schnell, kostengünstig und einfach Push Nachrichten zu versenden, wenn man keinen Wert darauf legt, dass die iPhone App den Namen der Webapplikation trägt.Weitere Infos dazu: http://prowl.weks.net/ ]]></content:encoded>
</item>
<item>
	<title>Flash - quo vadis?</title>
	<author> (Dominik Schön)</author>
	<link>http://www.grafiniert.de/naehkaestchen/blog-post/2010/01/30/flash-quo-vadis.html</link>
<guid>http://www.grafiniert.de/naehkaestchen/blog-post/2010/01/30/flash-quo-vadis.html</guid>

	<pubDate>Sat, 30 Jan 2010 21:19:00 +0200</pubDate>
	<description>  Mobile Web wird immer populärer und für Kunden und Developer immer wichtiger. Gerade durch den Erfolg der Produkte von Apple hat dies vor allem Auswirkungen für einen bestimmten Typ von Webinhalten: Flash!Die </description>
					<content:encoded><![CDATA[  Mobile Web wird immer populärer und für Kunden und Developer immer wichtiger. Gerade durch den Erfolg der Produkte von Apple hat dies vor allem Auswirkungen für einen bestimmten Typ von Webinhalten: Flash!Die einen meinen "Flash ist tot", die anderen meinen "Wann bringt Apple die lang ersehnte Flash-Unterstützung?"Doch was wird wirklich aus dem quasi-Standard für animierte Webinhalte? Ich persönlich mochte Flash noch nie. Natürlich bietet es aus gestalterischer Sicht Möglichkeiten, die sonst nicht oder nur sehr schwer möglich sind und waren. Allerdings treten mit dem Einsatz von Flash immer wieder Sicherheitsprobleme für die User auf.Gerade durch den Vormarsch von HTML 5, CSS 3 und JavaScript Frameworks wie jQuery oder sriptaculous werden die gestalterischen Möglichkeiten, die man ohne Flash hat, immer vielfältiger. Auch die kürzliche Umstellung von YouTube auf HTML 5 und somit auf einen zukünftigen Web-Standards, der das Abspielen von Videoinhalten direkt unterstützt zeigt, dass Flash vielleicht schon bald Geschichte ist.Was denkt ihr dazu? Wie geht es weiter mit Flash? Ist es beim neuen iPad ein Vor- oder ein Nachteil, dass es keine Flash-Inhalte unterstützt?]]></content:encoded>
</item>
<item>
	<title>iPad und O2 - Vorerst nicht</title>
	<author> (Dominik Schön)</author>
	<link>http://www.grafiniert.de/naehkaestchen/blog-post/2010/01/29/ipad-und-o2-vorerst-nicht.html</link>
<guid>http://www.grafiniert.de/naehkaestchen/blog-post/2010/01/29/ipad-und-o2-vorerst-nicht.html</guid>

	<pubDate>Fri, 29 Jan 2010 18:19:00 +0200</pubDate>
	<description>  Wie mancher meiner Abonnenten vielleicht weiß, nutze ich mein iPhone mit einem O2 Vertrag und dem Internet Pack M. In meinen Augen die perfekte Kombination in Sachen Preis-Leistungs-Verhältnis.Am 27.0</description>
					<content:encoded><![CDATA[  Wie mancher meiner Abonnenten vielleicht weiß, nutze ich mein iPhone mit einem O2 Vertrag und dem Internet Pack M. In meinen Augen die perfekte Kombination in Sachen Preis-Leistungs-Verhältnis.Am 27.01. wurde ja nun das neue iPad von Apple vorgstellt und für mich als Entwickler ist das Teil quasi ein Must-Have.Was mich allerdings von anfang an stutzig gemacht hat, war die Bezeichnung "MicroSIM" in den Technischen Daten. Kurz zum Hintergrund: Die MicroSIM ist ein relativ neuer Formfaktor für SIM-Karten.Also kurz meinen Freund Google angeworfen und herausgefunden, dass es beim iPhone-Vertragspartner T-Mobile diese Bauweise aktuell noch nicht zu kaufen gibt. Aber was ist mit O2?!Nun gut, ich hab ne Mail an den Support geschrieben und ehrlich gesagt garnicht mit einer Antwort gerechnet. Siehe da: Nach nur 11 Minuten war eine Mail in meinem Postfach. Aber leider mit einer negativen Antwort:"Derzeit verwendet o2 keine Mikro-SIM-Karten, da die auf dem deutschen Markt befindlichen Mobilfunkgeräte diesen Standard nicht erfordern. Sollte sich die Marktsituation grundlegend ändern – zum Beispiel durch das Apple iPad –, werden wir unseren Kunden aber selbstverständlich auch Mikro-SIM-Karten zur Verfügung stellen. Wann und unter welchen Bedingungen dies geschehen wird, steht aber derzeit noch nicht fest."Heißt für mich also leider erstmal kein UMTS am iPad. Oder denkt ihr, dass man ne normale SIM-Karte zuschleifen kann? :-)]]></content:encoded>
</item>
<item>
	<title>Youtube Videos in der eigenen App</title>
	<author> (Dominik Schön)</author>
	<link>http://www.grafiniert.de/naehkaestchen/blog-post/2010/01/04/youtube-videos-in-der-eigenen-app.html</link>
<guid>http://www.grafiniert.de/naehkaestchen/blog-post/2010/01/04/youtube-videos-in-der-eigenen-app.html</guid>

	<pubDate>Mon, 04 Jan 2010 20:46:00 +0200</pubDate>
	<description>  Standardmäßig werden Youtube Videos am iPhone in der gleichnamigen App abgespielt. Möchte man nun Youtube Videos in eine App einbinden, birgt dies einen enormen Nachteil hinsichtlich der Usability: Die A</description>
					<content:encoded><![CDATA[  Standardmäßig werden Youtube Videos am iPhone in der gleichnamigen App abgespielt. Möchte man nun Youtube Videos in eine App einbinden, birgt dies einen enormen Nachteil hinsichtlich der Usability: Die App wird verlassen und beendet.Mit nur zwei Tricks ist es jedoch möglich dies zu verhinden und Videos mit der integrierten MoviePlayer Komponente abzuspielen.Am Beispiel eines Feedreaders für einen Youtube Channel möchte ich diese Tricks im Folgenden erklären. ]]></content:encoded>
</item>
<item>
	<title>User-Statistiken mit Piwik und TYPO3</title>
	<author> (Dominik Schön)</author>
	<link>http://www.grafiniert.de/naehkaestchen/blog-post/2009/12/30/user-statistiken-mit-piwik-und-typo3.html</link>
<guid>http://www.grafiniert.de/naehkaestchen/blog-post/2009/12/30/user-statistiken-mit-piwik-und-typo3.html</guid>

	<pubDate>Wed, 30 Dec 2009 21:36:00 +0200</pubDate>
	<description>  Piwik ist ein OpenSource User-Tracking System, das es erlaubt, ähnlich wie Google Analytics, den Erfolg einer Webseite zu messen. Dabei werden die Daten und das System auf dem eigenen Server verwaltet</description>
					<content:encoded><![CDATA[  Piwik ist ein OpenSource User-Tracking System, das es erlaubt, ähnlich wie Google Analytics, den Erfolg einer Webseite zu messen. Dabei werden die Daten und das System auf dem eigenen Server verwaltet. Somit bietet sich für den Besucher einer Webseite, die Piwik statt Analytics einsetzt, ein enormer Vorteil im Hinblick auf den Datenschutz.Ich nutze das System nunmehr schon seit ca. 1,5 Jahren parallel zu Google Analytics. Seit dieser Version der Webseite verzichte ich auf Analytics und verwende ausschließlich Piwik.Ein Grund dafür ist die perfekte Integration in TYPO3. Dank der Extenions piwik und piwikintegration gibt es ein Backend-Modul, das in der gewohnten TYPO3-Optik Zugriff auf die Piwik-Statistikdaten ermöglicht.Die Kombination aus TYPO3 und Piwik überzeugt jedoch vor allem durch die enorme Usability: Static Template einbinden. Fertig.]]></content:encoded>
</item>
<item>
	<title>TYPO3 Backend gegen Angriffe sichern</title>
	<author> (Dominik Schön)</author>
	<link>http://www.grafiniert.de/naehkaestchen/blog-post/2009/12/30/typo3-backend-gegen-angriffe-sichern.html</link>
<guid>http://www.grafiniert.de/naehkaestchen/blog-post/2009/12/30/typo3-backend-gegen-angriffe-sichern.html</guid>

	<pubDate>Wed, 30 Dec 2009 00:00:00 +0200</pubDate>
	<description> Separate (Sub-)Domain Ein erster Schritt in Richtung sicheres TYPO3 Backend ist das bekannte &quot;Security by obscurity&quot;. Das bedeutet in diesem speziellen Fall, dass das Backend von TYPO3 nicht mehr über den</description>
					<content:encoded><![CDATA[ Separate (Sub-)Domain Ein erster Schritt in Richtung sicheres TYPO3 Backend ist das bekannte "Security by obscurity". Das bedeutet in diesem speziellen Fall, dass das Backend von TYPO3 nicht mehr über den Ordner /typo3/ erreichbar ist.Der optimale Fall ist folgender:Bei der Eingabe von http://...../typo3/ sollte eine Fehlerseite angezeigt werden und der HTTP Code 404 zurückgeliefert werden.Das TYPO3 Backend sollte nur über eine bestimmte Domain erreichbar sein. In meinem Fall ist dies: http://admin.grafiniert.deRuft man diese Domain auf, fällt auf, dass man sofort zur Login-Seite von TYPO3 weitergeleitet wird. Diesen Schritt übernimmt die .htaccess Datei im Wurzelverzeichnis der TYPO3 Installation.RewriteCond %{HTTP_HOST} ^admin.grafiniert.de$ [NC]RewriteCond %{REQUEST_URI} ^/$ [NC]RewriteRule ^(.*)$ https://admin.grafiniert.de/typo3/ [L] Obige drei Zeilen bewirken, dass Requests auf admin.grafiniert.de/ ohne Angabe eines Unterordners oder einer Datei direkt in den Unterordner typo3/ weitergeleitet werden. Zusätzlich wird im selben Schritt auf das sichere HTTPS gewechselt.Um einen Zugriff auf das typo3/ Verzeichnis über eine andere Domain und das normale HTTP Protokoll zu verhindern, wird auch in diesem Ordner eine .htaccess Datei angelegt.RewriteEngine ON RewriteCond %{HTTP_HOST} !admin.grafiniert.de [NC] RewriteRule ^(.*)$ http://www.grafiniert.de [L,R=301] RewriteCond %{HTTPS} offRewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}Durch diesen Eintrag in die .htaccess Datei im Ordner des TYPO3-Backends werden nur Anfragen bearbeitet, die über https://admin.grafiniert.de aufgerufen werden. Alle anderen Seitenaufrufe werden auf die Wurzeladresse http://www.grafiniert.de Durch diesen beiden, nur kleinen Änderungen wird das TYPO3 Backend vor allem gegen Netzwerksniffing-Attacken geschützt. Eine sichere Konfiguration von TYPO3 selbst wird dadurch nicht ersetzt.]]></content:encoded>
</item>
		</channel>
		</rss>