<?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>EntwicklerForum.org</title>
	<atom:link href="http://www.entwicklerforum.org/feed" rel="self" type="application/rss+xml" />
	<link>http://www.entwicklerforum.org</link>
	<description>Tipps und Tricks für Entwickler</description>
	<lastBuildDate>Wed, 16 Dec 2009 16:08:15 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>&#8220;Hello, world&#8221; in 65 Programmiersprachen</title>
		<link>http://www.entwicklerforum.org/hello-world-in-64-programmiersprachen</link>
		<comments>http://www.entwicklerforum.org/hello-world-in-64-programmiersprachen#comments</comments>
		<pubDate>Thu, 01 Oct 2009 13:53:19 +0000</pubDate>
		<dc:creator>a.laaser</dc:creator>
				<category><![CDATA[Allgemein / Web 2.0]]></category>

		<guid isPermaLink="false">http://www.entwicklerforum.org/?p=644</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p>In diesem Beitrag schreibe ich das bekannte Beispiel &#8220;Hello, world!&#8221; in 65 verschiedenen Programmiersprachen.</p>
<p><span id="more-644"></span></p>
<p><strong>ABAP</strong><br />
 REPORT HELLO_WORLD.<br />
 WRITE &#8216;Hello, world!&#8217;.</p>
<p><strong>Ada</strong><br />
 with Ada.Text_IO; use Ada.Text_IO;<br />
 procedure Hello is<br />
 begin<br />
 Put_Line (&#8221;Hello, world!&#8221;);<br />
 end Hello;</p>
<p><strong>ALGOL</strong><br />
 HELLO: &#8216;Begin&#8217;<br />
 &#8216;COMMENT&#8217; CDC ALGOL 60: &#8220;Hello, world!&#8221; ;<br />
 &#8216;END&#8217; HELLO</p>
<p><strong>Ant</strong><br />
 &lt; project name=&#8221;Hello&#8221; default=&#8221;hello&#8221;&gt;<br />
 &lt;target name=&#8221;hello&#8221; description=&#8221;Greeting&#8221;&gt;<br />
 &lt;echo message=&#8221;Hello, world!&#8221; /&gt;<br />
 &lt;/target&gt;<br />
 &lt;/project&gt;</p>
<p><strong>APL</strong><br />
 APL: Hello, world!<strong><br />
 </strong>&#8216;Hello, world!&#8217;</p>
<p><strong>AppleScript</strong><br />
 display dialog &#8220;Hello, world!&#8221;</p>
<p><strong>ASP</strong><br />
 &lt;% @ Language=&#8221;VBScript&#8221; %&gt;<br />
 &lt;%  &#8216;ASP: &#8220;Hello, world!&#8221;<br />
 Response.Write(&#8221;&lt;html&gt;&lt;body&gt; Hello, world!&lt;/body&gt;&lt;/html&gt;&#8221;) % &gt;</p>
<p><strong>Assembler</strong><br />
 : NASM Intel 8086 Assembler (DOS); &#8220;Hello, world!&#8221;<br />
 org 100h<br />
 start:<br />
 MOV             AH,09h<br />
 Lea                DX,[msg]<br />
 Int                  21h<br />
 MOV             AX,4Cooh<br />
 INT               21h<br />
 msg:   DB                 &#8216;Hello, world!$&#8217;</p>
<p><strong>awk</strong><br />
 # awk: &#8220;Hello, world!&#8221;<br />
 BEGIN {print &#8220;Hello, world!&#8221;}</p>
<p><strong>B</strong><br />
 main() {<br />
 extrn a, b, c:<br />
 putchar (a); putchar(b); putchar(c); putchar(&#8217;!*n&#8217;);<br />
 }<br />
 a &#8216;hell&#8217; ;<br />
 b &#8216;o, w &#8216; ;<br />
 c &#8216;orld&#8217; ;</p>
<p><strong>BASH</strong><br />
 # Bash: &#8220;Hello, world!&#8221;<br />
 echo Hello, world!</p>
<p><strong>BASIC</strong><br />
 10 REM BASIC: &#8220;Hello, world!&#8221;<br />
 20 PRINT &#8220;Hello, world!&#8221;</p>
<p><strong>BRAINFUCK</strong><br />
 &#8220;HelloKOMMA World!&#8221; [-]++++++++++[&gt;++++++<br />
 +&gt;++++++++++&gt;++++&gt;+++&gt;+&lt;&lt;&lt;&lt;&lt;-]&gt;++.&gt;+.+++++++..+++.&gt;+<br />
 +++.&gt;++.&lt;&lt;++++++++.&#8212;&#8212;&#8211;.+++.&#8212;&#8212;.&#8212;&#8212;&#8211;.&gt;&gt;+.</p>
<p><strong>BS2000</strong><br />
 /BEGIN-PROCEDURE LOGGING=N<br />
 /REMARK BS2000 (SDF): &#8220;Hello, world!&#8221;<br />
 /ASSIGN-SYSDTA TO-FILE =*SYSCMD<br />
 /WRITE-TEXT &#8216;Hello, world!&#8217;<br />
 /SET-JOB-STEP<br />
 /ASSIGN-SYSDTA TO-FILE =*PRIMARY<br />
 /END-PROCEDURE</p>
<p><strong>C</strong><br />
 #include &lt;stdio.h&gt;<br />
 #include &lt;stdlib.h&gt;<br />
 int main(void) {<br />
 puts(&#8221;Hello, world!&#8221;); return EXIT_SUCCESS;<br />
 }</p>
<p><strong>C#</strong><br />
 using System:<br />
 class HelloWorld{<br />
 public static int Main(string[] args) {<br />
 Console.WriteLine(&#8221;Hello, world!&#8221;);<br />
 return 0;<br />
 }<br />
 }</p>
<p><strong>C++</strong><br />
 #include &lt;iostream&gt;<br />
 int main() {<br />
 std::cout &lt;&lt; &#8220;Hello, world!&#8221; &lt;&lt; std:: endl;<br />
 }</p>
<p><strong>COBOL</strong><br />
 IDENTIFICATION DIVISION.<br />
 PROGRAMM-ID. HELLO.<br />
 ENVIRONMENT DIVISION.<br />
 MAIN SECTION.</p>
<p>DISPLAY&#8221;Hello, world!&#8221;<br />
 STOP RUN.</p>
<p><strong>Common Lisp</strong><br />
 (defun helloworld()<br />
 (print &#8220;Hello, world!&#8221;)<br />
 ) (helloworld)</p>
<p><strong>dBase</strong><br />
 ?&#8221;Hello, world!&#8221;</p>
<p><strong>Dylan</strong><br />
 define method hello-world()<br />
 format-out(&#8221;Hello, world!\n&#8221;);<br />
 end method hello-world;<br />
 hello-world();</p>
<p><strong>ECMA-/JavaScript</strong><br />
 alert(&#8217;Hello, world!&#8217;);</p>
<p><strong>Eiffel</strong><br />
 indexing<br />
 description: &#8220;Eiffel: Hello, world!&#8221;<br />
 class HELLO<br />
 creation<br />
 run<br />
 feature<br />
 run is<br />
 do<br />
 print (&#8221;Hello, world!%N&#8221;);<br />
 end &#8212; run<br />
 end &#8212; HELLO</p>
<p><strong>Erlang</strong><br />
 -module(hello).<br />
 -export([hello/0]).<br />
 hello() -&gt;<br />
 io: format (&#8221;Hello, world!~n&#8221;, []).</p>
<p><strong>Forth</strong><br />
 s&#8221; world!&#8221; s&#8221; Hello, &#8220;<br />
 type type CR<br />
 bye</p>
<p><strong>Fortran</strong><br />
 PROGRAMM HALLO<br />
 WRITE (*, 100)<br />
 STOP<br />
 100 FORMAT (&#8217;Hello, world!&#8217;)<br />
 END</p>
<p><strong>Groovy</strong><br />
 println &#8220;Hello, world!&#8221;</p>
<p><strong>Haskell<br />
 </strong>main :: IO ()<br />
 main = putStrLn &#8220;Hello, world!&#8221;<strong><br />
 </strong></p>
<p><strong>HPGL</strong><br />
 IN0;<br />
 PA0,0;<br />
 PR1000,1000;<br />
 SP1;<br />
 PD;<br />
 DT!;<br />
 LBHELLO WORLD;<br />
 PU;<br />
 Pa 0,0;<br />
 SP0;</p>
<p><strong>HTML</strong><br />
 &lt;html&gt;&lt;head&gt;&lt;title&gt;Greeting&lt;/title&gt;<br />
 &lt;meta http-equiv=&#8221;Content-Type&#8221; content=&#8221;text/html: charset=UTF-8&#8243;&gt;<br />
 &lt;/head&gt;&lt;body&gt;&lt;p&gt;Hello, World!&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</p>
<p><strong>INTERCAL</strong><br />
 PLEASE DO , 1 &lt;- #13<br />
 Do, 1 SUB    #1 &lt;-#238<br />
 DO , 1 SUB   #2 &lt;- #112<br />
 DO , 1 SUB   #3 &lt;- #112<br />
 DO , 1 SUB   #4 &lt;- #0<br />
 DO , 1 SUB   #5 &lt;- #64<br />
 DO , 1 SUB   #6 &lt;- #238<br />
 DO , 1 SUB   #7 &lt;- #26<br />
 DO , 1 SUB   #8 &lt;- #248<br />
 DO , 1 SUB   #9 &lt;- #168<br />
 DO , 1 SUB   #10 &lt;- #24<br />
 DO , 1 SUB   #11 &lt;- #16<br />
 DO , 1 SUB   #12 &lt;- #158<br />
 DO , 1 SUB   #13 &lt;- #52<br />
 DO READ OUT ;1<br />
 PLEASE GIVE UP</p>
<p><strong>Java</strong><br />
 class HelloWOrld {<br />
 public static void main/String args[]) {<br />
 System.out.println(&#8221;Hello, world!&#8221;);<br />
 }<br />
 }</p>
<p><strong>JSP</strong><br />
 &lt;%@ page language=&#8217;java&#8217; %&gt;<br />
 &lt;%=&#8221;Hello, world!&#8221; %&gt;</p>
<p><strong>LATEX</strong><br />
 \documentclass{Article}<br />
 \begin{document}<br />
 Hello, world!<br />
 \end{document}</p>
<p><strong>Logo</strong><br />
 PRINT [Hello, world!]<br />
 BYE</p>
<p><strong>Maschinencode</strong><br />
 B4 09 8D 16 0D 01 CD 21 B8 00 4C CD 21 48 65 6C<br />
 6C 6F 2C 20 77 6F 72 6C 64 21 24</p>
<p><strong>make</strong><br />
 all:<br />
 @echo &#8220;Hello, world!&#8221;</p>
<p><strong>Modula-2</strong><br />
 MODULE HelloWorld;<br />
 FROM InOut IMPORT WriteString, Writeln;<br />
 BEGIN<br />
 WriteString(&#8221;Hello, world!&#8221;);<br />
 WriteLn;<br />
 END HelloWorld.</p>
<p><strong>MS-DOS Batch</strong><br />
 @ECHO OFF<br />
 REM DOS batch: &#8220;Hello, world!&#8221;<br />
 ECHO Hello, world!</p>
<p><strong>Mumps-M</strong><br />
 w !, &#8220;Hello, world!&#8221;</p>
<p><strong>Oberon</strong><br />
 MODULE Helloworld;<br />
 IMPORT Write;<br />
 Begin<br />
 WriteLn(&#8217;Hello, world!&#8217;);<br />
 end.</p>
<p><strong>Pascal</strong><br />
 programm HelloWorld(output);<br />
 begin<br />
 WriteLn (&#8217;Hello, world!&#8217;);<br />
 end.</p>
<p><strong>Perl</strong><br />
 print &#8220;Hello, world!\n&#8221;;</p>
<p><strong>PHP</strong><br />
 &lt;?php echo &#8220;&lt;html&gt;&lt;body&gt;&#8221;.&#8221;Hello, world!&#8221;.&#8221;&lt;/body&gt;&lt;/html&gt;&#8221;;?&gt;</p>
<p><strong>PL/1</strong><br />
 Hello: procedure options(main);<br />
 put skip list(&#8217;Hello, world!&#8217;);</p>
<p>end Hello;</p>
<p><strong>Plankalk&#252;l</strong><br />
 R1.1(V0[:sig]) =&gt; R0<br />
 R1.2(V0[:m x sig]) =&gt; R0<br />
 0 =&gt; i |m + 1 = &gt; j<br />
 [W [ i &lt; j-&gt; [R1.1(V0[i: m x sig]) 0&gt; R0 | i + 1 0&gt; i ] ] ]<br />
 END<br />
 R1.3() =&gt; R0<br />
 &#8216;H&#8217;;'e&#8217;;'l&#8217;;'l&#8217;;'o&#8217;;',&#8217;;&#8217; &#8216;;&#8217;w';&#8217;o';&#8217;r';&#8217;l';&#8217;d';&#8217;!&#8217; =&gt; Z0[: m x sig]<br />
 R1.2(Z0) 0&gt; R0<br />
 END</p>
<p><strong>PostScript</strong><br />
 /Courier findfont 24 scalefont setfont<br />
 100 100 moveto (Hello, world!) show showpage</p>
<p><strong>PowerShell</strong><br />
 Write-Host &#8220;Hello, world!&#8221;</p>
<p><strong>Prolog</strong><br />
 ?- write(&#8217;Hello, world!&#8217;) , n1 .</p>
<p><strong>Python</strong><br />
 print &#8220;Hello, world!&#8221;</p>
<p><strong>REXX</strong><br />
 say  &#8216;Hello, world!&#8217;<br />
 exit</p>
<p><strong>Ruby</strong><br />
 puts &#8220;Hello, world!&#8221;</p>
<p><strong>Scheme</strong><br />
 (define h (lambda()(display &#8220;\nHello, world!&#8221;) (newline)()))(h)</p>
<p><strong>sed</strong><br />
 echo s | sed -ne &#8216;ls/.*/Hello, world!/p&#8217;</p>
<p><strong>Self</strong><br />
 &#8216;Hello, world!&#8217; print.</p>
<p><strong>Simula</strong><br />
 Begin<br />
 OutText(&#8221;Hello, world!&#8221;); OutImage;<br />
 End of program;</p>
<p><strong>Smalltalk</strong><br />
 &#8216;Hello, world!&#8217; out.</p>
<p><strong>SQL</strong><br />
 SELECT &#8216;Hello, world!&#8217; AS message;</p>
<p><strong>TEX</strong><br />
 Hello, world!<br />
 \bye</p>
<p><strong>troff/groff</strong><br />
 \f(CW<br />
 Hello, world!</p>
<p><strong>Velocity</strong><br />
 &lt;html&gt;&lt;body&gt;#set( $foo = &#8220;Hello, world!&#8221; ) $foo <br />
 &lt;/body&gt;&lt;/html&gt;</p>
<p><strong>XML</strong><br />
 &lt;greet&gt;&lt;how&gt;Hello, &lt;/how&gt;&lt;who&gt;world&lt;/who&lt;wmark&gt;!&lt;/mark&gt;&lt;/greet&gt;</p>
<p><strong>XUL</strong><br />
 &lt;?xml versions=&#8221;1.0&#8243;?&gt;&lt;!&#8211; XUL: &#8220;Hello, world!&#8221; &#8211;&gt;<br />
 &lt;window xmlns=<br />
 &#8220;http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul&#8221;&gt;<br />
 &lt;label value=&#8221;Hello, world!&#8221;/&gt;&lt;/window&gt;</p>
<p>Danke an Frank Hildebrandt  f&#252;r Nr. 65<br />
<strong>Natural<br />
</strong>WRITE`Hello, world!´</p>
]]></content:encoded>
			<wfw:commentRss>http://www.entwicklerforum.org/hello-world-in-64-programmiersprachen/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Silverlight Demo&#8217;s</title>
		<link>http://www.entwicklerforum.org/silverlight-demos</link>
		<comments>http://www.entwicklerforum.org/silverlight-demos#comments</comments>
		<pubDate>Wed, 22 Jul 2009 11:34:20 +0000</pubDate>
		<dc:creator>Paul Exler</dc:creator>
				<category><![CDATA[.Net / ASP.Net]]></category>
		<category><![CDATA[C, C++, C#, Objective-C]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://www.entwicklerforum.org/?p=640</guid>
		<description><![CDATA[Hier mal ein paar sehr interessante Demo&#8217;s, die mit Silverlight erstellt wurden:

Ein kleines &#8220;Windows&#8221; im Browser:
http://windows4all.com/

Ein halbfertiges CRM (Beta):
http://labs.cas.de/silverlight/CASCRMSL3/

Und hier sieht man den Einsatz vom Deep Zoom Composer von Silverlight:
http://memorabilia.hardrock.com/

]]></description>
			<content:encoded><![CDATA[<p>Hier mal ein paar sehr interessante Demo&#8217;s, die mit Silverlight erstellt wurden:</p>
<p><br class="spacer_" /></p>
<p>Ein kleines &#8220;Windows&#8221; im Browser:</p>
<p><a href="http://windows4all.com/" target="_blank">http://windows4all.com/</a></p>
<p><br class="spacer_" /></p>
<p>Ein halbfertiges CRM (Beta):</p>
<p><a href="http://labs.cas.de/silverlight/CASCRMSL3/" target="_blank">http://labs.cas.de/silverlight/CASCRMSL3/</a></p>
<p><br class="spacer_" /></p>
<p>Und hier sieht man den Einsatz vom Deep Zoom Composer von Silverlight:</p>
<p><a href="http://memorabilia.hardrock.com/" target="_blank">http://memorabilia.hardrock.com/</a></p>
<p><br class="spacer_" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.entwicklerforum.org/silverlight-demos/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Silverlight &#8211; DB</title>
		<link>http://www.entwicklerforum.org/silverlight-db</link>
		<comments>http://www.entwicklerforum.org/silverlight-db#comments</comments>
		<pubDate>Tue, 21 Jul 2009 11:19:33 +0000</pubDate>
		<dc:creator>Paul Exler</dc:creator>
				<category><![CDATA[.Net / ASP.Net]]></category>
		<category><![CDATA[C, C++, C#, Objective-C]]></category>
		<category><![CDATA[Datenbank, SQL]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://www.entwicklerforum.org/?p=636</guid>
		<description><![CDATA[Eben entdeckt:
http://silverdb.codeplex.com/

Damit lassen sich Daten in einer kleinen Datenbank direkt bei dem jeweiligen Client unter dem Isolation Storage speichern. Nat&#252;rlich mit bequemen Feature&#8217;s wie z.B. lazy loading oder die Komprimierung der Datenbank.
Hier die offzielle Projektbeschreibung:
&#8220;
This project implements a Isolated Storage (IsolatedStorage) based database for Silverlight. The usage of this software is very simple. You create [...]]]></description>
			<content:encoded><![CDATA[<p>Eben entdeckt:</p>
<p><a href="http://silverdb.codeplex.com/" target="_blank">http://silverdb.codeplex.com/</a></p>
<p>
Damit lassen sich Daten in einer kleinen Datenbank direkt bei dem jeweiligen Client unter dem Isolation Storage speichern. Nat&#252;rlich mit bequemen Feature&#8217;s wie z.B. lazy loading oder die Komprimierung der Datenbank.</p>
<p>Hier die offzielle Projektbeschreibung:</p>
<p><span id="ctl00_ctl00_MasterContent_Content_wikiSourceLabel">&#8220;</span></p>
<p>This project implements a Isolated Storage (IsolatedStorage) based database for Silverlight. The usage of this software is very simple. You create a new database by Calling CreateDatabase. You can add tables to the database by calling db.CreateTable&lt;T&gt; where T is the type of entity to be stored in table rows. You can save database by calling Save, and open the database by calling OpenDatabase. This database supports version changes, so you can update your application and still be able to open the database. You can look for basic use of this database by examining test Silverlight application. Encryption and compression have been implemented; just provide a password to use encryption. Compression is based on SharpZipLib &#8211; you will have all the rights specified under that project. See <a class="externalLink" href="http://slsharpziplib.codeplex.com/license">http://slsharpziplib.codeplex.com/license</a> for details. Also lazy loading has been implemented. If you open database with lazy loading flag, tables will be loaded when first accessed. Feel free to look documentation help file under current download for API details. The source code file contains unit test project that you can also examine for usage details.</p>
<p>Here is a list features on the radar:</p>
<p><span id="ctl00_ctl00_MasterContent_Content_wikiSourceLabel"></p>
<ul>
<li>Isolated Storage quota checks, possibly with ability to automatically request more space</li>
</ul>
<p></span>&#8220;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.entwicklerforum.org/silverlight-db/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Footer &#8211; bleib wo du hingeh&#246;rst!</title>
		<link>http://www.entwicklerforum.org/footer-bleib-wo-du-hingehoerst</link>
		<comments>http://www.entwicklerforum.org/footer-bleib-wo-du-hingehoerst#comments</comments>
		<pubDate>Fri, 26 Jun 2009 12:57:58 +0000</pubDate>
		<dc:creator>Johann Müller</dc:creator>
				<category><![CDATA[Allgemein / Web 2.0]]></category>
		<category><![CDATA[PHP, HTML, Wordpress]]></category>

		<guid isPermaLink="false">http://www.entwicklerforum.org/?p=618</guid>
		<description><![CDATA[Ein sehr wehleidiges Thema von Webdesignern ist der Footer der nicht immer dort ist, wo er hingeh&#246;rt. Doch das geh&#246;rt ab heute der Vergangenheit an! Es gibt nun eine L&#246;sung auf CSS-Basis, die laut der Homepage www.cssstickyfooter.com sogar auf &#252;ber 50 verschiedenen Browsern (und unterschiedlichen Betriebssystemen) funktioniert.
Das Problem:
 ist immer wieder das Selbe. Man plant [...]]]></description>
			<content:encoded><![CDATA[<p>Ein sehr wehleidiges Thema von Webdesignern ist der Footer der nicht immer dort ist, wo er hingeh&#246;rt. Doch das geh&#246;rt ab heute der Vergangenheit an! Es gibt nun eine L&#246;sung auf CSS-Basis, die laut der Homepage <a href="http://www.cssstickyfooter.com/" target="_blank">www.cssstickyfooter.com</a> sogar <strong>auf &#252;ber 50 verschiedenen Browsern</strong> (und unterschiedlichen Betriebssystemen) funktioniert.</p>
<p><span id="more-618"></span><strong><span style="font-size: medium;">Das Problem:</span></strong><br />
 ist immer wieder das Selbe. Man plant einen Footer f&#252;r eine Homepage am Ende der Seite, ist der Content aber nicht Fensterf&#252;llend, rutscht der Footer gerne auch mal hoch. An diesem Thema haben sich schon sehr viele Webdesigner die Finger verbrannt und unz&#228;hlige Stunden f&#252;r eine <em>ansatzweise</em> perfekte L&#246;sung investiert.</p>
<p>Sonderl&#246;sungen und Ans&#228;tze gibt es zu hauf, aber nicht alle funktionieren wie sie sollten, schon garnicht auf allen Browsern und Betriebssystemen. St&#228;ndig m&#252;ssen neue CSS / HTML Hacks her. So schreibt der ein oder andere auch schon gleich eigene CSS Dokumente nur f&#252;r diesen einen Hack.<br />
 <strong><em>Eine vermeindlich so einfache Sache</em></strong> schluckt doch sehr h&#228;ufig unn&#246;tige Zeit f&#252;r Sonderanpassungen.</p>
<p><span style="font-size: medium;"><strong>Hier die L&#246;sung:</strong></span></p>
<p>Neben unz&#228;hligen Hacks, Vorschl&#228;gen und Sonderl&#246;sungen vieler Webdesigner habe ich endlich etwas gefunden das auch funktioniert. Es sind erstaunlich wenig Anpassungen am CSS / HTML n&#246;tig, und doch funktioniert es einwandfrei.</p>
<p>Diese L&#246;sung hat definitiv eine eigene Seite verdient:<br />
 <a href="http://www.cssstickyfooter.com/" target="_blank">www.cssstickyfooter.com</a></p>
<p>Webdesigner wissen warum!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.entwicklerforum.org/footer-bleib-wo-du-hingehoerst/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>11 Innovative Ans&#228;tze von den Machern von World of Warcraft</title>
		<link>http://www.entwicklerforum.org/11-innovative-ansaetze-von-den-machern-von-world-of-warcraft</link>
		<comments>http://www.entwicklerforum.org/11-innovative-ansaetze-von-den-machern-von-world-of-warcraft#comments</comments>
		<pubDate>Fri, 26 Jun 2009 12:31:57 +0000</pubDate>
		<dc:creator>Johann Müller</dc:creator>
				<category><![CDATA[Allgemein / Web 2.0]]></category>
		<category><![CDATA[News & Linktipps]]></category>

		<guid isPermaLink="false">http://www.entwicklerforum.org/?p=607</guid>
		<description><![CDATA[&#8230; oder wie manch anderer Blog es nannte: &#8220;11 Ans&#228;tze, um wettbewerbsf&#228;hig zu bleiben.&#8221;
Der Originalbeitrag handelt &#252;ber 11 Prinzipien die der Spielehersteller Blizzard &#252;ber die Jahre lernen musste und denen er treu geblieben ist. Der Beitrag handelt nicht direkt um das Spiel, sondern um die Erfahrungen im Umgang mit einem Produkt und deren Kunden die [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230; oder wie manch anderer Blog es nannte: &#8220;11 Ans&#228;tze, um wettbewerbsf&#228;hig zu bleiben.&#8221;</p>
<p>Der <a href="http://innovation.freedomblogging.com/2008/04/04/11-innovation-lessons-from-creators-of-world-of-warcraft/584/" target="_blank">Originalbeitrag</a> handelt &#252;ber 11 Prinzipien die der Spielehersteller Blizzard &#252;ber die Jahre lernen musste und denen er treu geblieben ist. Der Beitrag handelt nicht direkt um das Spiel, sondern um die Erfahrungen im Umgang mit einem Produkt und deren Kunden die es benutzen.</p>
<p>Hier ein paar Kleine Zitate die euch vielleicht &#252;berzeugen den (relativ langen) englischen Originalbeitrag auf <a href="http://innovation.freedomblogging.com/2008/04/04/11-innovation-lessons-from-creators-of-world-of-warcraft/584/" target="_blank">innovation.freedomblogging.com</a> durchzulesen.</p>
<blockquote><p>some industries, taking on the role of the customer: “is referred to as ‘eating your own dog food,’</p>
</blockquote>
<blockquote><p>“In many industries, near perfection is the goal,” Wartenberg said.</p>
</blockquote>
<blockquote><p>“Living with mediocrity can be the downfall of a company or service firm,” said St. George. “There are many companies that have learned this lesson through failed product lines and even company closures.</p>
</blockquote>
<blockquote><p>“Many successful companies and CEOs have noted that their best successes have come from failures. The lessons learned from failures will provide the stepping stones for the next innovation.”</p>
</blockquote>
<p>In einem der Punkte ist auch die Rede von einigen der Produkten die es nichtmal in die Final-Version geschafft haben, und dem Mut, Projekte rechtzeitig zu canceln bevor man auf Teufel komm raus seine ganze Energie daran vergeudet.</p>
<p>Diese Ans&#228;tze und Prinzipien lassen sich sicherlich auch erfolgreich auf jedes andere Produkt oder jede Dienstleistung reflektieren.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.entwicklerforum.org/11-innovative-ansaetze-von-den-machern-von-world-of-warcraft/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Erste Schritte mit Adobe Flex</title>
		<link>http://www.entwicklerforum.org/erste-schritte-mit-adobe-flex</link>
		<comments>http://www.entwicklerforum.org/erste-schritte-mit-adobe-flex#comments</comments>
		<pubDate>Fri, 08 May 2009 16:48:45 +0000</pubDate>
		<dc:creator>Paul Exler</dc:creator>
				<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.entwicklerforum.org/?p=600</guid>
		<description><![CDATA[F&#252;r viele Entwickler ist Adobe Flex wohl noch kein bekannter Begriff, aber ich bin &#252;berzeugt, dass sich dies in Zukunft &#228;ndern wird.
Mit Adobe Flex ist es m&#246;glich grafisch anspruchsvolle, interaktive und innovative Web-Anwendungen zu entwickeln, die sowohl in jedem Browser, als auch lokal auf jedem Betriebssystem laufen k&#246;nnen.
Flex ist ein Open-Source-Framework. Um allerdings effektiv damit [...]]]></description>
			<content:encoded><![CDATA[<p>F&#252;r viele Entwickler ist Adobe Flex wohl noch kein bekannter Begriff, aber ich bin &#252;berzeugt, dass sich dies in Zukunft &#228;ndern wird.</p>
<p>Mit Adobe Flex ist es m&#246;glich grafisch anspruchsvolle, interaktive und innovative Web-Anwendungen zu entwickeln, die sowohl in jedem Browser, als auch lokal auf jedem Betriebssystem laufen k&#246;nnen.</p>
<p>Flex ist ein Open-Source-Framework. Um allerdings effektiv damit zu entwickeln empfiehlt es sich den <a href="http://www.adobe.com/de/products/flex/" target="_blank">Flex Builder</a> zu nutzen (Kostenlos f&#252;r <a href="https://freeriatools.adobe.com/flex/" target="_blank">Sch&#252;ler, Studenten</a> und <a href="https://freeriatools.adobe.com/learnflex/" target="_blank">arbeitslose Entwickler</a>).</p>
<p>Mit Flex werden SWF-Dateien erzeugt, die man einfach auf jeder Webseite einbinden kann. <br />
 Um eine lokale Applikation erstellen zu k&#246;nnen muss man sein Projekt lediglich f&#252;r das AIR-Framework kompilieren. Das AIR-Framework l&#228;sst sich leicht installieren und bindet die eigenen Applikationen, ohne merkbaren Unterschied f&#252;r den Benutzer, ein.</p>
<p>Ein weiterer gro&#223;er Vorteil bei Flex ist die sehr gute Schnittstelle zwischen Adobe-Grafikprodukten (wie z.B. Photoshop) und Flex. So ist es ein einfaches ein ganz neues Design (Skin) mit Flex / Illustator / Flash zu erstellen und dieses anschlie&#223;end mit Flex zu importieren um damit weiter zu arbeiten (Einfaches Tutorial hierf&#252;r: <a href="http://www.garunawebdesigner.com/?p=34" target="_blank">http://www.garunawebdesigner.com/?p=34</a>). Auch das erstellen neuer Komponenten l&#228;sst sich ausserhalb des Flex Builder&#8217;s durch einen Designer bewerkstelligen.</p>
<p>Genug zur Theorie. Einen sch&#246;nen &#220;berblick &#252;ber die verschiedenen M&#246;glichkeiten bekommt man u.A. in Adobe&#8217;s Showcase:</p>
<p><a href="http://www.flex.org/showcase/" target="_blank">http://www.flex.org/showcase/</a></p>
<p><br class="spacer_" /></p>
<p>F&#252;r alle die sich mal daran rantrauen wollen kann ich die Online-Hilfe von Adobe wirklich empfehlen. Hier gibt es ein sehr umfangreiches (kostenloses) Video-Training (immerhin 48 Videos!) mit guten Beispielen:</p>
<p><a href="http://www.adobe.com/devnet/flex/videotraining/" target="_blank">http://www.adobe.com/devnet/flex/videotraining/</a></p>
<p><br class="spacer_" /></p>
<p>Wem das an Video&#8217;s nicht reicht, kann hier gleich weitermachen (beinhaltet allerdings auch Tutorials zu anderen Adobe-Produkten):</p>
<p><a href="http://www.gotoandlearn.com/" target="_blank">http://www.gotoandlearn.com/</a></p>
<p><br class="spacer_" /></p>
<p>Sollte einem das Lesen von Tutorials mehr liegt, findet man hier eine sehr umfangreiche Sammlung (&#252;brigens gibt es auf dieser Seite auch hunderte Tutorials zu anderen Programmiersprachen / Frameworks):</p>
<p><a href="http://www.switchonthecode.com/frameworks/flex" target="_blank">http://www.switchonthecode.com/frameworks/flex</a></p>
<p><br class="spacer_" /></p>
<p>Eine Buchempfehlung von mir:</p>
<p><a href="http://www.amazon.de/Adobe-Flex-offizielle-Trainingsbuch-Systems/dp/3827327245/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1241800993&amp;sr=8-1" target="_blank">Adobe Flex 3 &#8211; Das offizielle Trainingsbuch</a></p>
<p><br class="spacer_" /></p>
<p>Zuletzt noch ein deutschsprachiges Forum, sollte man mal auf Probleme sto&#223;en:</p>
<p><a href="http://www.flexforum.de/" target="_blank">http://www.flexforum.de/</a></p>
<p><br class="spacer_" /></p>
<p>Viel Erfolg beim Flexen <img src='http://www.entwicklerforum.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.entwicklerforum.org/erste-schritte-mit-adobe-flex/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tipps zur Virtualisierung</title>
		<link>http://www.entwicklerforum.org/tipps-zur-virtualisierung</link>
		<comments>http://www.entwicklerforum.org/tipps-zur-virtualisierung#comments</comments>
		<pubDate>Mon, 23 Mar 2009 22:59:09 +0000</pubDate>
		<dc:creator>Martin Schmid</dc:creator>
				<category><![CDATA[OS - Betriebssysteme]]></category>

		<guid isPermaLink="false">http://www.entwicklerforum.org/?p=590</guid>
		<description><![CDATA[Virtualisierung ist ja seit geraumer Zeit in aller Munde. Ich selbst arbeite mit VMWare schon seit Jahren. Anfangs unter Windows und Linux als Host System. Als ich meinen ersten Intel Mac kaufte stieg ich zun&#228;chst von VMWare auf Parallels um, weil VMWare Fusion noch nicht verf&#252;gbar war.
Die Integration von Parallels ins MacOSX war vor 2 [...]]]></description>
			<content:encoded><![CDATA[<p>Virtualisierung ist ja seit geraumer Zeit in aller Munde. Ich selbst arbeite mit <a href="http://www.vmware.de" target="_blank">VMWare</a> schon seit Jahren. Anfangs unter Windows und Linux als Host System. Als ich meinen ersten Intel Mac kaufte stieg ich zun&#228;chst von VMWare auf <a href="http://www.parallels.com" target="_blank">Parallels</a> um, weil VMWare Fusion noch nicht verf&#252;gbar war.</p>
<p>Die Integration von Parallels ins MacOSX war vor 2 Jahren sehr gut. Inzwischen hat VMWare mit Fusion nachgeholt. Der gro&#223;e Vorteil bei VMWare ist aber, dass die Virtualisierungen problemlos zwischen Windows, Linux und MacOSX ausgetauscht werden k&#246;nnen. Die Version der VMWare  Workstation/Fusion bietet nachzu die selben Eigenschaften wie z.B. den Unity Mode, Share Folders etc. auf allen 3 Plattformen. Da wir im Team mit allen Hostsystemen arbeiten, ist VMWare deshalb die erste Wahl f&#252;r uns.</p>
<p>Deshalb werde ich nun die wichtigsten Tipps zu VMWare zusammenfassen:</p>
<ul>
<li>Festplatte: Es ist generell sinnvoll mit verschiedenen virtuellen Festplatten zu arbeiten. Die h&#246;chste Geschwindigkeit erreicht man dadurch, dass man ein File benutzt und den gesamten Speicherbereich reserviert.</li>
<li>Festplatte: Nachteil hierbei: Wenn man die VMs h&#228;ufig kopiert und austauscht, muss man jedes Mal den reservierten Bereich kopieren und nicht nur den benutzten. Ferner ist es sinnvoll, im 2GB Bl&#246;cken zu arbeiten, wenn man z.B. Fat32 als Filesystem benutzt oder die VMs auf DVD sichern m&#246;chte.</li>
<li>Festplatte: Die VMs auf einer eingebauten Platte benutzen und nicht &#252;ber USB oder andere externe Platten.</li>
<li>Festplatte: Wir verwenden in der Regel 2 virtuelle Festplatte. C: f&#252;r das Betreibssystem und die Programme. D: f&#252;r die Daten und &#196;nderungen. Bei uns l&#228;uft die gesamte Entwicklungsumgebung in einer VM. Die Updates werden zentral gepflegt. Gibt es &#196;nderungen muss nur die C: Platte getauscht werden.</li>
<li>Festplatte: Wenn man noch nicht genau weiss, wieviel Speicher die VMWare man belegen wird, ist es sinnvoll die Festplatte gr&#246;&#223;er in 2 GB Bl&#246;cken anzulegen, aber den Speicher nicht komplett zu reserverieren.</li>
<li>Festplatte: Wenn der Guest eine Linux-Installation wird, sollte man f&#252;r jeden Volumen eine separate virtuelle Festplatte anlegen. So kann man ggf. die einzelnen Platten auf verschiedene Partitionen des Hosts legen. Gleiche gilt nat&#252;rlich auch f&#252;r Windows.</li>
<li>Netzwerk: Braucht die VMs eine eigene IP benutzt man den &#8220;Bridge-Mode&#8221;, ansonten den NAT. Hier benutzt die VM nach au&#223;en die IP des Host.</li>
<li>Speicher: Je mehr, desto besser, wobei der Standby Modus dann l&#228;nger f&#252;r das Restoren braucht.</li>
<li>Zusatzoptionen: Wie Shared Folder, AutoProtect, Application Sharing etc. nur einschalten, wenn wirklich n&#246;tig. Dies mach sowohl das Host-System als auch den Guest langsam. </li>
</ul>
<p><br class="spacer_" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.entwicklerforum.org/tipps-zur-virtualisierung/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Netbeans 6.5 als IDE f&#252;r Ruby &amp; Ruby on Rails</title>
		<link>http://www.entwicklerforum.org/netbeans-65-als-ide-fuer-ruby-ruby-on-rails</link>
		<comments>http://www.entwicklerforum.org/netbeans-65-als-ide-fuer-ruby-ruby-on-rails#comments</comments>
		<pubDate>Wed, 04 Mar 2009 10:47:49 +0000</pubDate>
		<dc:creator>m.klimaschewski</dc:creator>
				<category><![CDATA[Allgemein / Web 2.0]]></category>

		<guid isPermaLink="false">http://www.entwicklerforum.org/?p=584</guid>
		<description><![CDATA[Wenn man unter Ruby eine gute Entwicklungsumgebung sucht, f&#252;hrt der Weg fr&#252;her oder sp&#228;ter zu Netbeans.
Netbeans in seiner aktuellen Version 6.5 ist eine auf Java basierende Entwicklungsplattform. Es unterst&#252;tzt neben Java SE, Java FX,Java Web/EE und Java Me auch Programmiersprachen wie Python,Ruby,C/C++ und Php. zus&#228;tzlich unterst&#252;tzt es den Apache Tomcat und Glassfish einen auf Java [...]]]></description>
			<content:encoded><![CDATA[<p>Wenn man unter Ruby eine gute Entwicklungsumgebung sucht, f&#252;hrt der Weg fr&#252;her oder sp&#228;ter zu Netbeans.</p>
<p><span id="more-584"></span>Netbeans in seiner aktuellen Version 6.5 ist eine auf Java basierende Entwicklungsplattform. Es unterst&#252;tzt neben Java SE, Java FX,Java Web/EE und Java Me auch Programmiersprachen wie Python,Ruby,C/C++ und Php. zus&#228;tzlich unterst&#252;tzt es den Apache Tomcat und Glassfish einen auf Java EE basierenden Aplikationserver. Hinzu kommen eine grosse Anzahl Entwicklungstools und weiterer Programmiersprachen die als Plugins nachinstallierbar sind.</p>
<p>Zur&#252;ck zum Thema Ruby &amp; Netbeans.</p>
<p>Wer Ruby unter Netbeans nutzen will bekommt direkt ein vorinstalliertes JRuby mitgeliefert &#8211; JRuby ist ein komplett in Java implementiertes Ruby. Wenn man ein &#8216;normales&#8217; Ruby nutzen will &#8211; kein Problem, Netbeans unterst&#252;tzt Multiplattformnutzung, man kann Ruby auf seinem System installieren und muss es nur noch im Netbeans korrekt eintragen und schon kann man jedes Rubyprojekt frei nach Wahl unter JRuby oder Ruby schreiben.</p>
<p>Ein weiteres Highlight ist die Gemverwaltung. F&#252;r jede genutzte Rubyplattform lassen sich von Netbeans die Gems installieren,updaten und suchen &#8211; ein grosser Vorteil wenn man ein Skript schreibt, welches ein Gem zur Ausf&#252;hrung ben&#246;tigt. Hinzu kommt ein interaktiver Editor und eine interaktive Shell, sowie ein &#252;ber Gems realisierter Debugmodus. All dies f&#252;hrt zu einer grossen Erleiterung bei der Entwicklung eines neuen Skripts, Netbeans unterst&#252;tzt die Arbeit und vereinfacht sie. Vor allem der vielen Entwicklungsumgebungen f&#252;r Ruby fehlende Debugmodus macht einem die Arbeit leichter, mit ihm ist die Fehleranalyse und Suche im Programm stark verbessert.</p>
<p>Mein Fazit:</p>
<p>Wer mit Ruby arbeitet sollte einen Blick in Netbeans werfen &#8211; es ist eine Riesenerleichterung f&#252;r die Entwicklung.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.entwicklerforum.org/netbeans-65-als-ide-fuer-ruby-ruby-on-rails/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Das Internet &#8211; Opfer seines eigenen Erfolgs?</title>
		<link>http://www.entwicklerforum.org/das-internet-opfer-seines-eigenen-erfolgs</link>
		<comments>http://www.entwicklerforum.org/das-internet-opfer-seines-eigenen-erfolgs#comments</comments>
		<pubDate>Mon, 05 Jan 2009 13:54:01 +0000</pubDate>
		<dc:creator>Johann Müller</dc:creator>
				<category><![CDATA[Allgemein / Web 2.0]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Zukunft]]></category>

		<guid isPermaLink="false">http://www.entwicklerforum.org/?p=576</guid>
		<description><![CDATA[Vorbei sind die Zeiten, als sich ein paar PC-Freaks mal kurz ins Internet einw&#228;hlten, um E-Mails zu versenden oder im World Wide Web zu surfen. Nur wenige Bits schickten sie dabei auf die Leitung. Die neue Generation der Internet-Nutzer ist den ganzen Tag online, l&#228;dt &#252;ber die schnellen und billigen DSL- oder Kabelanschl&#252;sse Musik, Spiele, [...]]]></description>
			<content:encoded><![CDATA[<p>Vorbei sind die Zeiten, als sich ein paar PC-Freaks mal kurz ins Internet einw&#228;hlten, um E-Mails zu versenden oder im World Wide Web zu surfen. Nur wenige Bits schickten sie dabei auf die Leitung. Die neue Generation der Internet-Nutzer ist den ganzen Tag online, l&#228;dt &#252;ber die schnellen und billigen DSL- oder Kabelanschl&#252;sse Musik, Spiele, Videos und Fernsehen – und verbraucht am Tag so viele Megabits wie fr&#252;her im ganzen Jahr.</p>
<p><span id="more-576"></span></p>
<p>Obwohl heutzutage an einigen Stellen die Daten per Lichtgeschwindigkeiten durch das Netz donnern, machen sich einige Experten Sorgen. Denn die Datenmengen, die &#252;ber das Netz geschickt werden, wachsen in atemberaubendem Ma&#223;e.<br />
 Der Grund: Das einst als Transportweg dr&#246;ger Datenpakete konzipierte Internet wandelt sich rasant zur Multimedia-Rennbahn. Breitband-Angebote wie Live-Fernsehen oder die Video-Streams von YouTube oder Joost laufen klassischen Internet-Diensten wie E-Mail zunehmend den Rang ab.</p>
<p>Schon drohen erste Staus auf der Datenautobahn. „Der Datenverkehr verdoppelt sich jedes Jahr“, melden die Verkehrsstatistiken. Wenn die Netzbetreiber nicht bald in zus&#228;tzliche Kapazit&#228;ten investieren, prophezeit der US-Marktforscher Nemertes, gibt es ab 2010 die ersten Engp&#228;sse.</p>
<p>Die europ&#228;ischen Netzlieferanten Alcatel-Lucent, Nokia Siemens Networks und Ericsson, die gemeinsam nach schnelleren &#220;bertragungstechniken suchen, schlagen Alarm: Bis zum Jahr 2015 w&#228;chst das Internet um den Faktor 100. „Die heute ben&#246;tigte Netzkapazit&#228;t betr&#228;gt nur ein Prozent der Kapazit&#228;t, die wir im Jahr 2015 brauchen“,</p>
<p style="text-align: center;"><img class="size-full wp-image-579 aligncenter" title="grafik-internet2" src="http://www.entwicklerforum.org/wp-content/uploads/2009/01/grafik-internet2.jpg" alt="" width="240" height="254" /></p>
<p>„Wenn die Vermittlungsrechner an ihre Kapazit&#228;tsgrenzen sto&#223;en, werden die &#252;bertragenen Datenpakete besch&#228;digt“, warnt Roberts, der heute Vorstand beim kalifornischen Routing-Spezialisten Anagran ist.</p>
<p><br class="spacer_" /></p>
<p>Weitere nur nebenbei erw&#228;hnte Probleme w&#228;ren dass die gesamte Telefonindustrie immer mehr auf das Internet ausgelagert wird.</p>
<p>Im Jahr 2015, prophezeit der Vorstandschef von Nokia Siemens Networks, Simon Beresford-Wylie, werden f&#252;nf Milliarden Menschen einen Internet-Anschluss haben (siehe WirtschaftsWoche 6/2008). Der gr&#246;&#223;te Zuwachs kommt aus Entwicklungsl&#228;ndern, die ausschlie&#223;lich via Funk und Handy surfen, da es dort weder PC noch Festnetz gibt.</p>
<p>Die Quelle dieses Beitrags ist der Artikel <a href="http://www.wiwo.de/technik/tsunami-im-netz-ueber-die-zukunft-des-internet-267746/" target="_blank">Tsunami im Netz: &#220;ber die Zukunft des Internets</a> auf <a href="http://www.wiwo.de/technik/tsunami-im-netz-ueber-die-zukunft-des-internet-267746/" target="_blank">wiwo.de<br />
 </a></p>
<p>Obwohl der Leitartikel vor ca 10 Monaten erschienen ist, ist das Thema noch lange nicht vom Tisch.</p>
<p><br class="spacer_" /></p>
<p>In dem Artikel &#8220;<a href="http://faz-community.faz.net/blogs/netzkonom/archive/2008/12/15/die-zukunft-des-internet.aspx" target="_blank">Die Zukunft des Internets</a>&#8220;, welcher sich auf die vor kurzem erschienen Experten-Analyse des <a href="http://www.pewinternet.org/" target="_blank">Pew Internet &amp; American Life Project</a>s (welcher <a href="http://www.pewinternet.org/pdfs/PIP_FutureInternet3.pdf" target="_blank">hier</a> zu finden und sehr empfehlenswert ist), wird stark vermutet dass das Handy (oder allgemein mobile Ger&#228;te) die Zukunft des Internets sind, dass sogar die Mehrheit der Menschen mit diesen mobilen Ger&#228;ten das Internet erst&#252;rmen werden.</p>
<p><em>Ja, aber Handys etc brauchen doch eine kleinere Bandbreite?</em></p>
<p>Das will man meinen, zumindest noch!</p>
<p>Denn laut dem Bericht, der sich &#252;brigens auf die Meinung von 578 Internet-Experten st&#252;tzt, wird die Zukunft in &#8220;Spracherkennung und ber&#252;hrungsempfindliche Bildschirme&#8221; liegen, was die Bandbreite nat&#252;rlich nicht sehr gering halten wird!<br />
 Zumal: Je mehr Bandbreite vom Anbieter zur Verf&#252;gung gestellt und je mehr Qualit&#228;t an Inhalt &#252;ber die Ger&#228;te an den Nutzer gebracht werden kann, desto mehr wird diese auch von den Entwicklern genutzt!</p>
<p><br class="spacer_" /></p>
<p><em><strong>Mein Fazit: </strong></em>Ich bezweifle dass es ein Internet-Chaos oder andere brutale Einbr&#252;che im WWW geben wird, nat&#252;rlich vorrausgesetzt die Netz-Giganten fangen jetzt schon an vorzusorgen.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.entwicklerforum.org/das-internet-opfer-seines-eigenen-erfolgs/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dokumentation zu Talend Open Studio</title>
		<link>http://www.entwicklerforum.org/dokumentation-zu-talend-open-studio</link>
		<comments>http://www.entwicklerforum.org/dokumentation-zu-talend-open-studio#comments</comments>
		<pubDate>Tue, 23 Dec 2008 09:22:09 +0000</pubDate>
		<dc:creator>m.klimaschewski</dc:creator>
				<category><![CDATA[Allgemein / Web 2.0]]></category>

		<guid isPermaLink="false">http://www.entwicklerforum.org/?p=561</guid>
		<description><![CDATA[
 

Hier gebe ich eine kurze Einf&#252;hrung zu Talend Open Studio
Talend Open Studio ist ein Programm zur Datenfilterung, Bearbeitung und Datenmigration. Daten k&#246;nnen aus unterschiedlichsten Quellen eingelesen, gefiltert, bearbeitet und in Datenbanken und andere Formate exportiert werden. Dabei sind zus&#228;tzliche Optionen wie der Versand von Emails bei Fehlern und vieles mehr m&#246;glich.

Download unter:
http://www.talend.com/download.php
Vorraussetzung:
Java 1.5
Man kann [...]]]></description>
			<content:encoded><![CDATA[<p><!--[if !mso]></p>
<p><mce:style><!  v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} --></p>
<p><!--[endif]--><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves /> <w:TrackFormatting /> <w:HyphenationZone>21</w:HyphenationZone> <w:PunctuationKerning /> <w:ValidateAgainstSchemas /> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF /> <w:LidThemeOther>DE</w:LidThemeOther> <w:LidThemeAsian>X-NONE</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:BreakWrappedTables /> <w:SnapToGridInCell /> <w:WrapTextWithPunct /> <w:UseAsianBreakRules /> <w:DontGrowAutofit /> <w:SplitPgBreakAndParaMark /> <w:DontVertAlignCellWithSp /> <w:DontBreakConstrainedForcedTables /> <w:DontVertAlignInTxbx /> <w:Word11KerningPairs /> <w:CachedColBalance /> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathPr> <m:mathFont m:val="Cambria Math" /> <m:brkBin m:val="before" /> <m:brkBinSub m:val="&#45;-" /> <m:smallFrac m:val="off" /> <m:dispDef /> <m:lMargin m:val="0" /> <m:rMargin m:val="0" /> <m:defJc m:val="centerGroup" /> <m:wrapIndent m:val="1440" /> <m:intLim m:val="subSup" /> <m:naryLim m:val="undOvr" /> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"   DefSemiHidden="true" DefQFormat="false" DefPriority="99"   LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Normal" /> <w:LsdException Locked="false" Priority="9" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="heading 1" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9" /> <w:LsdException Locked="false" Priority="39" Name="toc 1" /> <w:LsdException Locked="false" Priority="39" Name="toc 2" /> <w:LsdException Locked="false" Priority="39" Name="toc 3" /> <w:LsdException Locked="false" Priority="39" Name="toc 4" /> <w:LsdException Locked="false" Priority="39" Name="toc 5" /> <w:LsdException Locked="false" Priority="39" Name="toc 6" /> <w:LsdException Locked="false" Priority="39" Name="toc 7" /> <w:LsdException Locked="false" Priority="39" Name="toc 8" /> <w:LsdException Locked="false" Priority="39" Name="toc 9" /> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption" /> <w:LsdException Locked="false" Priority="10" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Title" /> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font" /> <w:LsdException Locked="false" Priority="11" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtitle" /> <w:LsdException Locked="false" Priority="22" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Strong" /> <w:LsdException Locked="false" Priority="20" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Emphasis" /> <w:LsdException Locked="false" Priority="59" SemiHidden="false"    UnhideWhenUsed="false" Name="Table Grid" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text" /> <w:LsdException Locked="false" Priority="1" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="No Spacing" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 1" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 1" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 1" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 1" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision" /> <w:LsdException Locked="false" Priority="34" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="List Paragraph" /> <w:LsdException Locked="false" Priority="29" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Quote" /> <w:LsdException Locked="false" Priority="30" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Quote" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 1" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 1" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 1" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 1" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 1" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 2" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 2" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 2" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 2" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 2" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 2" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 2" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 2" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 3" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 3" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 3" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 3" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 3" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 3" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 3" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 3" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 3" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 4" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 4" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 4" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 4" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 4" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 4" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 4" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 4" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 4" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 5" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 5" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 5" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 5" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 5" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 5" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 5" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 5" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 5" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 6" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 6" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 6" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 6" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 6" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 6" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 6" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 6" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 6" /> <w:LsdException Locked="false" Priority="19" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis" /> <w:LsdException Locked="false" Priority="21" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis" /> <w:LsdException Locked="false" Priority="31" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference" /> <w:LsdException Locked="false" Priority="32" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Reference" /> <w:LsdException Locked="false" Priority="33" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Book Title" /> <w:LsdException Locked="false" Priority="37" Name="Bibliography" /> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading" /> </w:LatentStyles> </xml><![endif]--> <!--[if gte mso 10]></p>
<p><mce:style><!   /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Normale Tabelle"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin:0cm; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} --></p>
<p><!--[endif]--></p>
<p class="MsoNormal">Hier gebe ich eine kurze Einf&#252;hrung zu Talend Open Studio</p>
<p class="MsoNormal">Talend Open Studio ist ein Programm zur Datenfilterung, Bearbeitung und Datenmigration. Daten k&#246;nnen aus unterschiedlichsten Quellen eingelesen, gefiltert, bearbeitet und in Datenbanken und andere Formate exportiert werden. Dabei sind zus&#228;tzliche Optionen wie der Versand von Emails bei Fehlern und vieles mehr m&#246;glich.</p>
<p class="MsoNormal"><span id="more-561"></span></p>
<p class="MsoNormal"><span lang="EN-US">Download unter:</span></p>
<p class="MsoNormal"><span lang="EN-US"><a href="http://www.talend.com/download.php">http://www.talend.com/download.php</a></span></p>
<p class="MsoNormal">Vorraussetzung:</p>
<p class="MsoNormal">Java 1.5</p>
<p class="MsoNormal">Man kann mehrere Versionen parallel auf dem System haben, es ist nicht n&#246;tig das Programm zu installieren, entpacken der Dateien ist ausreichend.</p>
<p class="MsoNormal">Inhalt der .ini Datei von Talend Open Studio ( TOS)</p>
<p class="MsoNormal">-vmargs : &#220;bergabe von Einstellungen an Java</p>
<p class="MsoNormal">-Xms40m : Minimaler Speicher</p>
<p class="MsoNormal">-Xmx500m : Maximaler Speicher, auf 1024 erh&#246;hen</p>
<p class="MsoNormal">-XX:MaxPermSize=128m : <span> </span>Gr&#246;&#223;e der Permanenten Belegung</p>
<p class="MsoNormal"> </p>
<h1>Erster Start von TOS</h1>
<p class="MsoNormal"><!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600"  o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f"  stroked="f"> <v:stroke joinstyle="miter" /> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0" /> <v:f eqn="sum @0 1 0" /> <v:f eqn="sum 0 0 @1" /> <v:f eqn="prod @2 1 2" /> <v:f eqn="prod @3 21600 pixelWidth" /> <v:f eqn="prod @3 21600 pixelHeight" /> <v:f eqn="sum @0 0 1" /> <v:f eqn="prod @6 1 2" /> <v:f eqn="prod @7 21600 pixelWidth" /> <v:f eqn="sum @8 21600 0" /> <v:f eqn="prod @7 21600 pixelHeight" /> <v:f eqn="sum @10 21600 0" /> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" /> <o:lock v:ext="edit" aspectratio="t" /> </v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:396pt;  height:352.5pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image001.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image001.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild.png"><img class="alignnone size-medium wp-image-517" title="neues-bild" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-300x267.png" alt="" width="300" height="267" /></a><!--[endif]--></p>
<p class="MsoNormal">GNU Lizenz Akzeptieren.</p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1036" type="#_x0000_t75"  style='width:429pt;height:232.5pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image003.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image003.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-1.png"><img class="alignnone size-medium wp-image-518" title="neues-bild-1" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-1-300x162.png" alt="" width="300" height="162" /></a><!--[endif]--></p>
<p class="MsoNormal">Erster Schritt: Verbindung einrichten.</p>
<p class="MsoNormal">Dazu auf die 3 Punkte ganz rechts klicken.</p>
<p class="MsoNormal">Verbindung einrichten ( lokal ist bereits angelegt) &#8211; Email als Benutzer angeben. Damit sind alle Projekte und Jobs mit der Email als Benutzername gekennzeichnet.</p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-2.png"><img class="alignnone size-medium wp-image-519" title="neues-bild-2" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-2-300x229.png" alt="" width="300" height="229" /></a></p>
<p class="MsoNormal">Erstelle/ Import Projekt ( Perl oder Java m&#246;glich) – Wir benutzen grunds&#228;tzlich Java</p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1027" type="#_x0000_t75"  style='width:429pt;height:232.5pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image007.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image007.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-3.png"><img class="alignnone size-medium wp-image-520" title="neues-bild-3" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-3-300x162.png" alt="" width="300" height="162" /></a><!--[endif]--></p>
<p class="MsoNormal">Das Demo-Projekt ist als erster &#220;berblick n&#252;tzlich, es sind viele Jobs vorhanden als Beispiele f&#252;r die Einsatzm&#246;glichkeiten.</p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1028" type="#_x0000_t75"  style='width:273pt;height:123.75pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image009.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image009.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-4.png"><img class="alignnone size-medium wp-image-522" title="neues-bild-4" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-4-300x136.png" alt="" width="300" height="136" /></a><!--[endif]--></p>
<p class="MsoNormal">Wir erzeugen ein neues Projekt und starten das Programm durch Klick auf ‚Laden‘.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Danach startet das Open Studio</p>
<h1>Talend Open Studio &#220;berblick</h1>
<p class="MsoNormal">Nach einem Popup mit Aufforderung zur Registrierung wird erstmal das Programm initialisiert.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1029" type="#_x0000_t75"  style='width:744.75pt;height:343.5pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image011.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image011.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-5.png"><img class="alignnone size-medium wp-image-521" title="neues-bild-5" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-5-300x173.png" alt="" width="300" height="173" /></a><!--[endif]--></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Ein Blick auf die Repository</p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1030" type="#_x0000_t75"  style='width:234.75pt;height:204.75pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image013.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image013.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-6.png"><img class="alignnone size-medium wp-image-523" title="neues-bild-6" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-6-300x261.png" alt="" width="300" height="261" /></a><!--[endif]--></p>
<p class="MsoNormal">Die Projekte arbeiten mit Jobs. Alle Komponenten werden in die graphische Oberfl&#228;che der Jobs gezogen und dort verlinkt. Es ist m&#246;glich Subjobs zu definieren und zu verlinken, ebenfalls ist es m&#246;glich verschiedene Jobs miteinander zu verkn&#252;pfen. Dazu mehr weiter unten.</p>
<p class="MsoNormal">!Wichtig! Alle Routinen, Abfragen, Jobs etc d&#252;rfen keine Leerzeichen oder Sonderzeichen enthalten und alle Komponenten m&#252;ssen unterschiedlich benannt sein.</p>
<p class="MsoNormal">Alle Bennungen nach Art der Komponente durchf&#252;hren:</p>
<p class="MsoNormal">z.B. job_xxx oder abfrage_xxx</p>
<p class="MsoNormal"> </p>
<h2>Die Palette</h2>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-7.png"><img class="alignnone size-medium wp-image-524" title="neues-bild-7" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-7-117x300.png" alt="" width="117" height="300" /></a></p>
<h3><span lang="EN-US">Business Intelligence</span></h3>
<p class="MsoNormal"><span lang="EN-US">Enth&#228;lt u.a. Charts und SCDs (Slowly Changing Dimension) </span></p>
<p class="MsoNormal">SCD werden verwendet um &#196;nderungen an den Dimensionstabellen vorzunehmen, dabei gibt es Typ 1, 2 und 3</p>
<p class="MsoNormal">Typ 1 &#252;berschreibt alte Daten</p>
<p class="MsoNormal">Typ 2 arbeitet mit Historie</p>
<p class="MsoNormal">Typ 3 legt eine neue Dimension an</p>
<p class="MsoNormal">Erkl&#228;rung: <a href="http://de.wikipedia.org/wiki/Slowly_Changing_Dimensions">http://de.wikipedia.org/wiki/Slowly_Changing_Dimensions</a></p>
<h3>Business</h3>
<p class="MsoNormal">Connectoren zu verschiedenen CRM Systemen und bestimmten Serversystemen</p>
<h3>Custom Code</h3>
<p class="MsoNormal">WICHTIG</p>
<p class="MsoNormal">Hier ist man in der Lage eigene Routinen zu schreiben<span> </span>und eigene Funktionen zu bauen und die Modifikation vorhandener Komponenten</p>
<p class="MsoNormal">tJavaFlex – Startprozedur, Hauptteil mit Funktionen, Endteil mit Beendigung von Schleifen</p>
<p class="MsoNormal">tJavaRow &#8211; nur Hauptteil</p>
<h3>Data Quality</h3>
<p class="MsoNormal">Funktionen zum Filtern und Vergleichen von Daten, z.B.<span> </span>Gleiche, Intervall-Vergleiche, Schemasuche …</p>
<h3>Databases</h3>
<p class="MsoNormal">Connectoren zu verschiedenen Datenbanken – je nach Datenbank mehr oder weniger<span> </span>verschiedene Funktionen vorhanden.</p>
<p class="MsoNormal">Diese werden von uns nicht verwendet, da wir DB Verbindungen in Repository unter Metadaten anlegen. Damit sind sie f&#252;r alle Jobs des Projekts verf&#252;gbar.</p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-8.png"><img class="alignnone size-medium wp-image-525" title="neues-bild-8" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-8-70x300.png" alt="" width="70" height="300" /></a></p>
<p class="MsoNormal"> </p>
<h3>ELT</h3>
<p class="MsoNormal"><strong>Extract, Transform, Load</strong> (ETL) bezeichnet in der Informatik einen Prozess, um Daten aus mehreren Datenquellen mit ggf. unterschiedlichen Strukturen in einer Zieldatenbank zu vereinigen. Dieser Vorgang wird in drei Schritten vollzogen, aus denen sich die Bezeichnung ETL ableitet:</p>
<p class="MsoNormal"><strong>Extraktion</strong> (Extract) der relevanten Daten aus verschiedenen Quellen</p>
<p class="MsoNormal"><strong>Transformation</strong> (Transform) der Daten in das Schema und Format der Zieldatenbank</p>
<p class="MsoNormal"><strong>Laden</strong> (Load) der Daten in die Zieldatenbank.</p>
<p class="MsoNormal">( Auszug aus Wikipedia)</p>
<h3>File</h3>
<p class="MsoNormal">Datenoperationen wie einlesen verschiedener Dateiformate, Speichern in verschiedenen Dateiformaten z.B. Excel</p>
<h3>Internet</h3>
<p class="MsoNormal">Operationen welche eine Internetverbindung erfordern z.B. Mailversand, ssh oder ftp Operationen</p>
<h3>Logs &amp; Errors</h3>
<p class="MsoNormal">!Wichtig! Wichtige Tools zur Fehleranalyse, Sammlung von Fehlermeldungen.</p>
<p class="MsoNormal">tLogRow macht eine Ausgabe von Daten an Console &#8211; Man kann verschiedene Daten &#252;bermitteln, z.B. eingelesene, gefilterte, Errors &#8230;</p>
<p class="MsoNormal">dieses wird durch die Verlinkung in der graphischen Oberfl&#228;che bestimmt</p>
<h3><span> </span>Misc</h3>
<p class="MsoNormal">Wichtig! Enth&#228;lt tRowGenerator, welcher nach Vorgaben Testdaten erstellt.</p>
<h3>Orchestration</h3>
<p class="MsoNormal">-</p>
<h3>Processing</h3>
<p class="MsoNormal">Enth&#228;lt wichtige Komponenten zur Verarbeitung / Bearbeitung von Daten z.B. Verkn&#252;pfung von Tabellen</p>
<h3>System</h3>
<p class="MsoNormal">Komponenten die weitere Jobs im TOS Starten oder Systemvariablen &#228;ndern</p>
<h3>XML</h3>
<p class="MsoNormal">Operationen auf XML</p>
<p class="MsoNormal"> </p>
<h2>Repository &amp; Build-In</h2>
<p class="MsoNormal">Repositorys eingetragene Komponenten die global von mehreren Jobs genutzt werden k&#246;nnen.</p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1033" type="#_x0000_t75"  style='width:234.75pt;height:142.5pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image019.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image019.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-9.png"><img class="alignnone size-medium wp-image-526" title="neues-bild-9" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-9-300x182.png" alt="" width="300" height="182" /></a><!--[endif]--></p>
<p class="MsoNormal">Ein Beispiel w&#228;re eine eingetragene Datenbankverbindung und ihre Tabellen, man kann diese dann in jedem beliebigen Job nutzen.</p>
<p class="MsoNormal">Repositories werden nur &#252;ber die Metadaten ge&#228;ndert. <span> </span>Die Metadaten enthalten die Informationen &#252;ber die Komponenten, aber keine direkten ‚Nutzdaten‘.</p>
<p class="MsoNormal">Bei &#196;nderungen wird eine &#8216;Impact&#8217; Analyse durchgef&#252;hrt, d.h. es wird angezeigt welche Jobs betroffen sind, man kann w&#228;hlen ob Jobs ausgelassen werden, dort ist dann die Komponente automatisch ‚Build-In‘.&#196;nderungen des Repositories k&#246;nnen sehr viel Zeit in Anspruch nehmen, falls das Repository sehr oft verwendet wird.</p>
<p class="MsoNormal">In den Jobs kann man die Eigenschaften einer Komponente auf &#8216;Build-In&#8217; setzen. Damit <span> </span>sind dann lokale &#196;nderungen m&#246;glich und nur dieser Job verwendet diese ver&#228;nderten Einstellungen.</p>
<p class="MsoNormal"> </p>
<h2>Export von Daten</h2>
<p class="MsoNormal">Einstellungen kann man <span> </span>als Context exportieren, damit sind Settings als Context.xxx verf&#252;gbar &#8211; Jobs k&#246;nnen dann Daten &#252;bergeben bekommen oder</p>
<p class="MsoNormal">aus einer Datei oder DB auslesen, dieses sind dann die aktuellen Settings ( z.b. login,pwd etc pp), nicht eingelesene Daten</p>
<p class="MsoNormal">sind dann die Standardvorgaben. Den Export kann man bei der Einrichtung neuer Metadaten durchf&#252;hren.</p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1034" type="#_x0000_t75"  style='width:600pt;height:514.5pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image021.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image021.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-10.png"><img class="alignnone size-medium wp-image-527" title="neues-bild-10" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-10-300x259.png" alt="" width="300" height="259" /></a><!--[endif]--></p>
<p class="MsoNormal">Diese Contextdaten lassen sich aus verschiedenen Quellen einlesen. Wie z.B. einfache Dateien oder Datenbanken.</p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1035" type="#_x0000_t75"  style='width:385.5pt;height:174pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image023.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image023.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-11.png"><img class="alignnone size-medium wp-image-528" title="neues-bild-11" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-11-300x135.png" alt="" width="300" height="135" /></a><!--[endif]--></p>
<p class="MsoNormal">In diesem Fall werden die Contextdaten ausgelesen und an der Konsole ausgegeben, weiterhin wird danach, wenn diese Daten Ok sind, ein Importjob gestartet</p>
<p class="MsoNormal">Export eines Jobs: Rechtsklick auf einen Job -&gt; &#8216;Job-Scripts exportieren&#8217;</p>
<p class="MsoNormal">Die<span> </span>Jobs sind als Webservice,PlainOldJavaObject(POJO) und andere Formate exportierbar diese kann man dann entsprechend nutzen oder auch in ein anderes TOS importieren. Wichtig bei einem Webservice: Dateien dann auf einen Application Server wie z.B. Tomcat<span> </span>- Wichtig Server muss Java beherrschen, da Datei .war ist</p>
<h2>Neu compilieren der Settings</h2>
<p class="MsoNormal">Strg+Shift+F3</p>
<p class="MsoNormal"> </p>
<h2>Weiteres</h2>
<p class="MsoNormal">Unter Code / Routinen sind eigene Public Static Funktionen definierbar ( String.UpperCase etc)</p>
<p class="MsoNormal">Selbstentwickelte Funktionen lassen sich in eigene Kategorien unterteilen ( im Code unter den Kommentaren ist der Kategorie-Name hinterlegt) -&gt; Code-&gt;Routinen</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"> </p>
<h2>Dokumentationen</h2>
<p class="MsoNormal">M&#246;glichkeit zur Dokumentation:</p>
<p class="MsoNormal"><span> </span>Rechtsklick auf Job -&gt; Generiere Dokumentation als html</p>
<p class="MsoNormal">Erzeugt sehr umfassende Dokumentation aller Settings und Daten, leider sehr kryptisch, jedoch sind Grafiken mit &#220;bersicht des Strukturaufbaus enthalten.</p>
<p class="MsoNormal">Bietet die M&#246;glichkeit diverse Komponenten auszukommentieren.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"> </p>
<h1>Aufbau eines Beispiel-Jobs</h1>
<p class="MsoNormal">Hier ein &#220;berblick wie man einen Job aufbaut.</p>
<h2>Job erstellen</h2>
<p class="MsoNormal">Anlegen eines neuen Jobs, dieser ist unser Arbeitsblatt wir platzieren hier unsere Arbeitskomponenten und verbinden sie miteinander.</p>
<h2>Woher bekomme ich die Daten</h2>
<p class="MsoNormal">Start: Einlesen von Daten ( Datei, DB …. )</p>
<p class="MsoNormal">Daf&#252;r legt man dann im Repository die Verkn&#252;pfung zur Datenquelle an. In diesem Beispiel an eine Datenbank.</p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-12.png"><img class="alignnone size-medium wp-image-529" title="neues-bild-12" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-12-124x300.png" alt="" width="124" height="300" /></a></p>
<p class="MsoNormal"><span>Rechtsklick auf ‚DB Connections bringt dann dieses Dropdown</span></p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-13.png"><img class="alignnone size-medium wp-image-530" title="neues-bild-13" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-13.png" alt="" width="283" height="152" /></a></p>
<p class="MsoNormal">‚Erstelle Verbindung‘</p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-14.png"><img class="alignnone size-medium wp-image-531" title="neues-bild-14" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-14-272x300.png" alt="" width="272" height="300" /></a></p>
<p class="MsoNormal">Im n&#228;chsten Fenster tr&#228;gt man dann entsprechend die Serverdaten ein.</p>
<p class="MsoNormal">Wenn man dies erledigt hat muss nun TOS das Schema der DB einlesen. Rechtsklick auf die neue DB-Verbindung:</p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-15.png"><img class="alignnone size-medium wp-image-533" title="neues-bild-15" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-15.png" alt="" width="173" height="187" /></a></p>
<p class="MsoNormal">‚Schema ermitteln‘</p>
<p class="MsoNormal">Die ausgew&#228;hlten Spalten tauchen jetzt unter Tabellen-Schemas auf.</p>
<p class="MsoNormal">Diese Schemas kann man nun im Job verwenden um die Daten einzulesen und diese dann im Job bearbeiten um sie dann letztendlich in eine Datei zu speichern.</p>
<p class="MsoNormal">In diesem Fall wird der Schritt &#252;bersprungen und die ben&#246;tigten Daten werden direkt durch eine SQL-Query ausgelesen.</p>
<p class="MsoNormal">Die Queries werden angelegt durch ‚Edit Queries‘.</p>
<p class="MsoNormal">Der Editor sieht folgenderma&#223;en aus:</p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-16.png"><img class="alignnone size-medium wp-image-534" title="neues-bild-16" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-16-300x227.png" alt="" width="300" height="227" /></a></p>
<p class="MsoNormal">&#220;ber den Reiter ‚Designer‘ lassen sich auch Queries aufbauen, jedoch ist der Funktionsumfang extrem begrenzt.</p>
<h2>Aufbau des Jobs</h2>
<p class="MsoNormal">Die Abfrage wird jetzt in die graphische Oberfl&#228;che des Jobs gezogen.</p>
<p class="MsoNormal">Da das Ziel in diesem Fall eine Access-DB ist, habe ich diese ebenfalls unter den DB Connections angelegt und das Schema eingelesen.</p>
<p class="MsoNormal">Da ich in diesem Fall nur eine Tabelle &#228;ndere ziehe ich den gesamten Connectionreiter als Output auf die graphische Oberfl&#228;che .</p>
<p class="MsoNormal">Als letztes will ich noch wissen ob die Daten richtig angekommen sind. Also leite ich die Daten zum Schluss noch in eine tLogRow um die Daten auf der Konsole angezeigt zu bekommen.</p>
<h2>Verkn&#252;pfungen</h2>
<p class="MsoNormal">Als letzten Schritt verkn&#252;pfe ich die<span> </span>Komponenten und benenne die Verkn&#252;pfungen entsprechend:</p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1042" type="#_x0000_t75"  style='width:391.5pt;height:78pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image035.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image035.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-17.png"><img class="alignnone size-medium wp-image-535" title="neues-bild-17" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-17-300x60.png" alt="" width="300" height="60" /></a><!--[endif]--></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Jede dieser Verkn&#252;pfungen enth&#228;lt das Schema der Daten die ich Transferieren will:</p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1043" type="#_x0000_t75"  style='width:595.5pt;height:471pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image037.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image037.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-18.png"><img class="alignnone size-medium wp-image-536" title="neues-bild-18" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-18-300x237.png" alt="" width="300" height="237" /></a><!--[endif]--></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">&#220;ber ‚&#196;ndere Schema‘ kann ich z.B. den Typ &#228;ndern, dies kann wichtig sein, wenn das Schema falsch erkannt wurde, die L&#228;nge zu kurz ist etc</p>
<p class="MsoNormal">Bei Access z.B. darf kein Datentyp ‚Long‘ enthalten sein, dies f&#252;hrt zu einem Fehler.</p>
<p class="MsoNormal">Sollte es Probleme mit Verkn&#252;pfungen geben wird normalerweise angezeigt was Momentan das Problem ist.</p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-19.png"><img class="alignnone size-medium wp-image-537" title="neues-bild-19" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-19-300x62.png" alt="" width="300" height="62" /></a></p>
<p class="MsoNormal">L&#246;sung w&#228;re hier die Komponente und die Verkn&#252;pfung Datentransfer zu testen wo die Schemas der Daten verschieden sind ( Datentyp, Fehlende Spalte etc.)</p>
<p class="MsoNormal"> </p>
<h2>Weitere Verkn&#252;pfungen</h2>
<p class="MsoNormal"> </p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-20.png"><img class="alignnone size-medium wp-image-538" title="neues-bild-20" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-20-300x204.png" alt="" width="300" height="204" /></a></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">On Subjob :</p>
<p class="MsoNormal">Der gesamte Vorgang ( leicht blau Unterlegt)</p>
<p class="MsoNormal">On Component :</p>
<p class="MsoNormal">Nur die Ausf&#252;hrung dieser Komponente</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Dies sind bedingte Verkn&#252;pfungen. M&#246;glich w&#228;re z.B. eine Email mit : ‚Erfolg‘ bei ‚On Subjob Ok‘</p>
<p class="MsoNormal">Und eine Email mit ‚Error‘ wenn der Subjob nicht laufen sollte.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Auf Komponenten bezogen muss man mit solchen Verkn&#252;pfungen vorsichtig sein, z.B. ein Filter der 5000 Zeilen erfolgreich filtert, w&#252;rde 5000x ‚On Component Ok‘ senden.</p>
<p class="MsoNormal">Es lassen sich ebenso ganze Jobs verkn&#252;pfen, ebenfalls auf Bedingungen gest&#252;tzt.</p>
<h2>Ausf&#252;hrung</h2>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><!--[if gte vml 1]><v:shape id="_x0000_i1046" type="#_x0000_t75"  style='width:416.25pt;height:219.75pt'> <v:imagedata src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image043.png" mce_src="file:///C:\Users\EQUITA~1\AppData\Local\Temp\msohtmlclip1\01\clip_image043.png"   o:title="" /> </v:shape><![endif]--><!--[if !vml]--><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-21.png"><img class="alignnone size-medium wp-image-539" title="neues-bild-21" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-21-300x158.png" alt="" width="300" height="158" /></a><!--[endif]--></p>
<p class="MsoNormal">Wenn ‚Statistik‘ und ‚Traces‘ <span> </span>markiert sind wird w&#228;hrend der Auff&#252;hrung direkt angezeigt an welcher Stelle grade gearbeitet wird, und wie der Dateninhalt lautet. Dies sollte nur gemacht werden wenn es absolut Notwendig ist, da die Auff&#252;hrung extrem langsam wird.</p>
<p class="MsoNormal">Statistik alleine ist meistens bereits ausreichend um nachzuverfolgen, wieviele Daten und wie schnell die Daten transferiert wurden. Diese werden an den Verkn&#252;pfungen angezeigt.</p>
<p class="MsoNormal">Nach einer Erfolgreichen Ausf&#252;hrung sieht es dann z.B. so aus:</p>
<p class="MsoNormal"><a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-22.png"><img class="alignnone size-medium wp-image-540" title="neues-bild-22" src="http://www.entwicklerforum.org/wp-content/uploads/2008/12/neues-bild-22-300x61.png" alt="" width="300" height="61" /></a></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">In der Konsole kann ich nachgucken wie die Datens&#228;tze aussehen und zur Not kann ich auch nochmal die Access-Datei pr&#252;fen ob alles ordnungsgem&#228;&#223; angekommen ist.</p>
<p class="MsoNormal"> </p>
<h1>Weitere Informationen</h1>
<p class="MsoNormal">Weitere Hilfe gibt es in der integrierten Hilfe von TOS</p>
<p class="MsoNormal">Unter Hilfe -&gt; Help Contents</p>
<p class="MsoNormal">Oder unter</p>
<p class="MsoNormal"><a href="http://www.talendforge.org/">http://www.talendforge.org/</a></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Dokumentation als PDF: <a href="http://www.entwicklerforum.org/wp-content/uploads/2008/12/dokumentation-zu-talend-open-studio.pdf">Dokumentation zu Talend Open Studio</a></p>
<p><br class="spacer_" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.entwicklerforum.org/dokumentation-zu-talend-open-studio/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
