<?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>Marius</title>
	<atom:link href="http://www.devilx.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.devilx.net</link>
	<description>... a place full of dorkness</description>
	<lastBuildDate>Thu, 26 Aug 2010 09:14:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>OTRS LDAP Authentication for Agents and Customers</title>
		<link>http://www.devilx.net/2010/03/19/otrs-ldap-authentication-for-agents-and-customers/</link>
		<comments>http://www.devilx.net/2010/03/19/otrs-ldap-authentication-for-agents-and-customers/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 04:05:40 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Linux and stuff ...]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[CGI]]></category>
		<category><![CDATA[Configuration]]></category>
		<category><![CDATA[Hack]]></category>
		<category><![CDATA[ITIL]]></category>
		<category><![CDATA[Kernel]]></category>
		<category><![CDATA[LDAP]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OTRS]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[RADIUS]]></category>
		<category><![CDATA[SSH]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1147</guid>
		<description><![CDATA[Probably many of you have or still are actively using the open-source, ITIL compliant trouble ticket system named OTRS. And probably some of you also might have experienced the pleasure of setting up the software once &#8211; and know the pain. OTRS as a product is pretty cool and full of features, unfortunately from a [...]]]></description>
			<content:encoded><![CDATA[<p>Probably many of you have or still are actively using the open-source, ITIL compliant trouble ticket system named <a href="http://otrs.org/">OTRS</a>. And probably some of you also might have experienced the pleasure of setting up the software once &#8211; and know the pain.</p>
<p>OTRS as a product is pretty cool and full of features, unfortunately from a technical aspect it&#8217;s pretty much of an unaesthetic &#8220;Perl hack&#8221; that&#8217;s, especially when you should try to integrate it into your existing environments and make it talk to your RADIUS or directly to your LDAP. Here, I would like to describe the basic configuration to get the latter working without any troubles.</p>
<p>Everything actually starts within the $OTRSHOME/Kernel/Config.pm. After you&#8217;ve set up your Apache to get you displayed the <em>/otrs/index.pl</em> and <em>/otrs/customer.pl</em> you&#8217;ll need to start hacking Perl in OTRS&#8217; &#8220;config file&#8221;.<br />
Let&#8217;s say, that we would want to authenticate against LDAP. And maybe not only for the agents (the people using index.pl) but also for the customers. So, let&#8217;s assume that we&#8217;re having a LDAP-tree containing our Base (&#8220;dc=something,dc=com&#8221;) and our &#8220;Users&#8221; OU (&#8220;ou=Users,dc=something,dc=com&#8221;). Also, we have a &#8220;Groups&#8221; OU (&#8220;ou=Groups,dc=something,dc=com&#8221;). I think that&#8217;s probably the most common built-up, regardless what names the OUs actually have.</p>
<p>Now, first of all, we need to know what user we could use to authenticate on our LDAP later and get the information we need. Here, I&#8217;m assuming it&#8217;s &#8220;cn=admin,dc=something,dc=com&#8221;. Let&#8217;s begin with the configuration for getting the agents authenticated:</p>
<pre>
    $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
    $Self->{'AuthModule::LDAP::Host'} = 'localhost';
    $Self->{'AuthModule::LDAP::BaseDN'} = 'dc=something,dc=com';
    $Self->{'AuthModule::LDAP::UID'} = 'uid';
    $Self->{'AuthModule::LDAP::GroupDN'} = 'cn=otrsagent,ou=Groups,dc=something,dc=com';
    $Self->{'AuthModule::LDAP::UserAttr'} = 'UID';
    $Self->{'AuthModule::LDAP::AccessAttr'} = 'memberUid';
    $Self->{'AuthModule::LDAP::Params'} = {
        port => 389,
        timeout => 120,
        async => 0,
        version => 3,
    };
</pre>
<p>The configuration should be pretty self-describing, though let&#8217;s sum it up: We&#8217;re connecting to the LDAP host &#8220;localhost&#8221; (since we probably tunnel the SSH port to the OTRS machine or have it running directly on that one &#8211; else you&#8217;d just need to specify another hostname/IP. BEWARE: When using an external LDAP with no tunnel you <strong>should</strong> use LDAPS!) and use our BaseDN. We define the user-id field being named &#8220;uid&#8221;, just like the user-attribute we&#8217;re going to look-up and we&#8217;ll be using the memberUid as access-attribute. Wait. memberUid? I lost you, right?</p>
<p>In this configuration, we&#8217;re also using a GroupDN that actually lets us &#8220;filter&#8221; which of our users might be allowed to use the OTRS as agents. For this, we&#8217;re accessing the group &#8220;otrsagent&#8221; within our &#8220;Groups&#8221;-OU and lookig up the memberUids.<br />
At last but not least, the actual LDAP parameters like the port for example.</p>
<p>Now, you can test your login by browsing to your index.pl and enter the credentials of an LDAP-user being in your otrsagent-group. You should now be possible to authenticate. Nothing more. You won&#8217;t be able to login to your OTRS yet. Why? It&#8217;s simple: OTRS uses LDAP only for authentication but initially copies the user-data from LDAP into its own database backend. Therefor we need to set up the &#8220;AuthSyncModule&#8221;.</p>
<p>This module allows us to tell OTRS that we&#8217;d like to have our user data being synchronized with the LDAP database. Let&#8217;s take a look at the actual configuration:</p>
<pre>
    $Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP';
    $Self->{'AuthSyncModule::LDAP::Host'} = 'ldap://localhost/';
    $Self->{'AuthSyncModule::LDAP::BaseDN'} = 'dc=something, dc=com';
    $Self->{'AuthSyncModule::LDAP::UID'} = 'uid';
    $Self->{'AuthSyncModule::LDAP::UserAttr'} = 'UID';
    $Self->{'AuthSyncModule::LDAP::AccessAttr'} = 'memberUid';
    $Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'cn=admin,dc=something,dc=com';
    $Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'swordfish';

    $Self->{'AuthSyncModule::LDAP::UserSyncMap'} = {
        UserFirstname => 'givenName',
        UserLastname  => 'sn',
        UserEmail     => 'mail',
    };
    $Self->{'AuthSyncModule::LDAP::UserSyncInitialGroups'} = [
        'users',
    ];
</pre>
<p>Again, from top to bottom: We tell OTRS what LDAP host, what BaseDN, what UID/UserAttr/AccessAttr, what search user and what password to use. Then, we need to define what&#8217;s needed to be synchronized. Here, we only sync the most important data: First name, last name and e-mail. Note: Without the mail entry this won&#8217;t work!<br />
After that, we define what OTRS-groups the user should initially be in.</p>
<p>Now you should be able to authenticate <strong>and</strong> login with your LDAP user. :)</p>
<p><strong>Next, customer authentication.</strong></p>
<p>The customer authentication needs to be configured separately and also starts with basic LDAP information:</p>
<pre>
    $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
    $Self->{'Customer::AuthModule::LDAP::Host'} = 'localhost';
    $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=something,dc=com';
    $Self->{'Customer::AuthModule::LDAP::UID'} = 'uid';
    $Self->{'Customer::AuthModule::LDAP::GroupDN'} = 'cn=otrscustomer,ou=Groups,dc=something,dc=com';
    $Self->{'Customer::AuthModule::LDAP::UserAttr'} = 'UID';
    $Self->{'Customer::AuthModule::LDAP::AccessAttr'} = 'memberUid';
    $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'cn=admin,dc=something,dc=com';
    $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'swordfish';
    $Self->{'Customer::AuthModule::LDAP::Params'} = {
        port => 389,
        timeout => 120,
        async => 0,
        version => 3,
    };
</pre>
<p>I think I don&#8217;t need to comment this section once again. Next:</p>
<pre>
    $Self->{CustomerUser} = {
      Name => 'LDAP Datasource',
      Module => 'Kernel::System::CustomerUser::LDAP',
      Params => {
         Host => 'localhost',
         BaseDN => 'dc=something,dc=com',
         SSCOPE => 'sub',
         UserDN => 'cn=admin,dc=something,dc=com',
         UserPW => 'swordfish',
         Params => {
            port => 389,
            timeout => 120,
            async => 0,
            version => 3,
         },
      },
      CustomerKey => 'uid',
      CustomerID => 'mail',
      CustomerUserListFields => ['sn', 'cn', 'mail'],
      CustomerUserSearchFields => ['uid', 'cn', 'sn', 'mail'],
CustomerUserSearchPrefix => '',
       CustomerUserSearchSuffix => '*',
       CustomerUserSearchListLimit => 250,
       CustomerUserPostMasterSearchFields => ['mail'],
       CustomerUserNameFields => ['givenname', 'sn'],
       CustomerUserExcludePrimaryCustomerID => 0,
       AdminSetPreferences => 0,
       Map => [
           [ 'UserSalutation', 'Title',      'title',           1, 0, 'var', '', 0 ],
           [ 'UserFirstname',  'Firstname',  'cn',              1, 1, 'var', '', 0 ],
           [ 'UserLastname',   'Lastname',   'sn',              1, 1, 'var', '', 0 ],
           [ 'UserLogin',      'Username',   'uid',             1, 1, 'var', '', 0 ],
           [ 'UserEmail',      'Email',      'mail',            1, 1, 'var', '', 0 ],
           [ 'UserCustomerID', 'CustomerID', 'mail',            0, 1, 'var', '', 0 ],
           [ 'UserPhone',      'Phone',      'telephonenumber', 1, 0, 'var', '', 0 ],
           [ 'UserAddress',    'Address',    'postaladdress',   1, 0, 'var', '', 0 ],
           [ 'UserComment',    'Comment',    'description',     1, 0, 'var', '', 0 ],
       ],
    };
</pre>
<p>This is theoretically the same we&#8217;ve also set up for the agents and will let OTRS synchronize the customer data into its own database. I think the whole mapping should be pretty clear when read carefully, so I&#8217;m not going to explain every setting in detail.</p>
<p>However, after you&#8217;ve hacked together your basic configuration in this kinda way, also the customer.pl authentication should be working against your LDAP.</p>
<p>There&#8217;s one more thing that&#8217;s left to be mentioned. When you authenticate your agents against the LDAP, OTRS will try to authenticate root@localhost against it &#8211; what probably won&#8217;t work anymore then. Of course, you won&#8217;t need to go without an administrative user now. Simply pick one of your LDAP users, add him to the otrsagent group, log in to the web-interface and then adding an entry into the group_user table of OTRS&#8217; database, containing the user_id of your LDAP user (get it from the &#8220;users&#8221; table) and the group_id &#8220;1&#8243;, with the permission_key &#8220;rw&#8221; and the permission_value &#8220;1&#8243;. After that, the user should have administrative rights.</p>
<p>And the next time, I&#8217;ll show you how to build an automatic back-scratcher using a wall, some glue and a cat. Enjoy! :)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2010/03/19/otrs-ldap-authentication-for-agents-and-customers/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Automating Things</title>
		<link>http://www.devilx.net/2010/02/21/automating-things/</link>
		<comments>http://www.devilx.net/2010/02/21/automating-things/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 14:56:58 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[AppleScript]]></category>
		<category><![CDATA[Automator]]></category>
		<category><![CDATA[Chandler]]></category>
		<category><![CDATA[Dropbox]]></category>
		<category><![CDATA[GTD]]></category>
		<category><![CDATA[Hacking]]></category>
		<category><![CDATA[iChat]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Mail.app]]></category>
		<category><![CDATA[Midnight Inbox]]></category>
		<category><![CDATA[MobileMe]]></category>
		<category><![CDATA[The Hit List]]></category>
		<category><![CDATA[Things]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1138</guid>
		<description><![CDATA[CulturedCode&#8217;s Things is probably one of the best GTD applications available on the Mac OS X and the iPhone platform. Yet, there really is no alternative that supports managing your tasks in such a big scale like Things does. I know Potion Factory&#8217;s The Hit List as well as I know Chandler, Midnight Inbox and [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Things" href="http://culturedcode.com/things/" target="_blank">CulturedCode&#8217;s Things</a> is probably one of the best GTD applications available on the Mac OS X and the iPhone platform. Yet, there really is no alternative that supports managing your tasks in such a big scale like Things does. I know <a title="The Hit List" href="http://www.potionfactory.com/thehitlist/" target="_blank">Potion Factory&#8217;s The Hit List</a> as well as I know <a title="Chandler Project" href="http://chandlerproject.org/" target="_blank">Chandler</a>, <a title="Midnight Beep Softworks" href="http://www.midnightbeep.com/" target="_blank">Midnight Inbox</a> and others &#8211; but they all kinda lack of specific features or just don&#8217;t integrate that good into one&#8217;s everyday workflow. I would really love to see The Hit List being developed more active and finally provide an <a title="The Hit List Mobile" href="http://www.flickr.com/photos/andypotion/4213848965/" target="_blank">iPhone client</a> that might beat the crap out of CulturedCode&#8217;s Things bundle, which yet still doesn&#8217;t allow me to keep each client in sync via MobileMe/without being in the same network or using <a title="Dropbox" href="http://www.dropbox.com/referrals/NTIxODYyMjk5" target="_blank">Dropbox</a> for desktop-to-desktop sync.</p>
<p>However, since (at least for me) there&#8217;s nothing comparable to Things, I&#8217;m trying to benefit from using it the best I can. One possibility to do so is the automation of task-creation. Wouldn&#8217;t it be cool to have Things automatically pack specific e-mails together as tasks you would only need to get done &#8211; without actually having the trouble of importing the information from Mail.app manually into Things first? I solved this problem for myself by using a feature that Things, Mail.app and Mac OS X provide me by default: AppleScript.</p>
<p>Now, how would this automated task-creation look like. First, a piece of code is needed, which gets the specific information out of an e-mail and tells Things to add those information to its library. The <a title="MailToThings" href="http://culturedcode.com/things/wiki/index.php/MailToThings" target="_blank">CulturedCode Wiki</a> already provides us such a script and first I&#8217;ve tried to use that. Unfortunately, the script seems to be something hacked together with Apple&#8217;s Automator and interferes with the UI, what causes the process of task-creation to be visible to the end-user. I didn&#8217;t want that &#8211; so I just hacked together my own AppleScript using the AppleScript Edior:</p>
<pre>on perform_mail_action(info)
	tell application "Mail"
		set selectedMessages to |SelectedMessages| of info
		set theRule to |Rule| of info
		repeat with eachMessage in selectedMessages
			set theSubject to subject of eachMessage
			set theContent to content of eachMessage
			tell application "Things"
				set newToDo to make new to do with properties {name:theSubject, due date:current date, notes:theContent} at beginning of list "Inbox"
			end tell
			set the (read status) of eachMessage to true
		end repeat
	end tell
end perform_mail_action</pre>
<p>You can simply copy &amp; paste this code into your AppleScript Editor and save it somewhere in your filesystem as AppleScript.</p>
<p>Next, we need this script to be called as soon as a new mail arrives. Let&#8217;s use Mail.app&#8217;s &#8220;Rules&#8221; for doing that!</p>
<div id="attachment_1139" class="wp-caption alignnone" style="width: 310px"><a href="http://www.devilx.net/wp-content/uploads/2010/02/mailtothings.png"  class="fancybox"><img class="size-medium wp-image-1139" title="Mail to Things" src="http://www.devilx.net/wp-content/uploads/2010/02/mailtothings-300x122.png" alt="Mail to Things Rule" width="300" height="122" /></a><p class="wp-caption-text">Mail.app Rule for Mail to Things</p></div>
<p>As &#8220;Run AppleScript&#8221; the script you&#8217;ve saved before needs to be specified. What rule you use for yourself actually depends on your incoming mails. In this example, I&#8217;m checking the mail&#8217;s subject to contain the string [ToDo]: for the script to act on that e-mail. Of course, you can also add another action *after* the &#8220;Run AppleScript&#8221; for Mail.app to delete the mail afterwards. The only thing my script does is to mark the mails that matched as read.</p>
<p>Now try it out on your own. Write yourself an e-mail containing your match-criteria and you&#8217;ll see that the script will automatically add a new task within your Things&#8217; Inbox, containing all details from within the mail itself. Of course, this script can be enhanced for example by leaving away the match-criteria from the subject (s/matchpattern//g), by cutting off everything after &#8220;&#8211; &#8221; (signature) or maybe even delegating the task to a co-worker or an area of responsibility by parsing the mail&#8217;s body. Feel free to extend it the way you need it. :)</p>
<p><em>PS: You can make the Inbox entries not being due by today by simply removing the &#8220;due date:current date&#8221; parameter from the script.</em></p>
<p><strong>//UPDATE:</strong></p>
<p>Because this whole automation topic is so much fun, I&#8217;ve just written an AppleScript that automatically adds every conversation-line you receive that starts with the pattern &#8220;task: &#8221; to your Things Inbox. :)</p>
<p>Here&#8217;s the AppleScript:</p>
<pre>using terms from application "iChat"
	on message received theMessage from theBuddy for textChat
		set theBuddy to full name of theBuddy

		if theMessage starts with "task: " then
			tell application "Things"
				set newToDo to make new to do with properties {name:theBuddy &amp; ": " &amp; my LeetReplacer((get theMessage), "task: ", "")} at beginning of list "Inbox"
			end tell
		end if
	end message received
end using terms from

on LeetReplacer(strng, srch, replc)
	tell (a reference to my text item delimiters)
		set {old, contents} to {contents, srch}
		set {strng, contents} to {strng's text items, replc}
		set {strng, contents} to {strng as Unicode text, old}
	end tell
	return strng
end LeetReplacer</pre>
<p>And here&#8217;s how you can include it into iChat:</p>
<div id="attachment_1142" class="wp-caption alignnone" style="width: 310px"><a href="http://www.devilx.net/wp-content/uploads/2010/02/ichattothings.png"  class="fancybox"><img class="size-medium wp-image-1142" title="iChat to Things" src="http://www.devilx.net/wp-content/uploads/2010/02/ichattothings-300x192.png" alt="iChat to Things" width="300" height="192" /></a><p class="wp-caption-text">iChat to Things</p></div>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2010/02/21/automating-things/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Protecting the Beauty through Ugliness</title>
		<link>http://www.devilx.net/2010/02/13/protecting-the-beauty-through-ugliness/</link>
		<comments>http://www.devilx.net/2010/02/13/protecting-the-beauty-through-ugliness/#comments</comments>
		<pubDate>Sat, 13 Feb 2010 18:23:14 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[Life itself]]></category>
		<category><![CDATA[Lifestyle]]></category>
		<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[Accessory]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Beautiful]]></category>
		<category><![CDATA[Blackberry]]></category>
		<category><![CDATA[Bosch]]></category>
		<category><![CDATA[Case]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Motorola]]></category>
		<category><![CDATA[N900]]></category>
		<category><![CDATA[Nokia]]></category>
		<category><![CDATA[Palm]]></category>
		<category><![CDATA[Pixi]]></category>
		<category><![CDATA[Pre]]></category>
		<category><![CDATA[Protect]]></category>
		<category><![CDATA[Silicon]]></category>
		<category><![CDATA[Skit]]></category>
		<category><![CDATA[Sleeve]]></category>
		<category><![CDATA[The Matrix]]></category>
		<category><![CDATA[Ugly]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1130</guid>
		<description><![CDATA[Let&#8217;s think back to the days where the cellular phones just became more and more popular. Surely most of you remember phones like the Motorola StarTAC or the Nokia 8110 (from the Movie &#8220;The Matrix&#8221;). When trip down memory lane, when such mobile phones were quite as expensive and according to that also quite as [...]]]></description>
			<content:encoded><![CDATA[<p>Let&#8217;s think back to the days where the cellular phones just became more and more popular. Surely most of you remember phones like the Motorola StarTAC or the Nokia 8110 (from the Movie &#8220;The Matrix&#8221;). When trip down memory lane, when such mobile phones were quite as expensive and according to that also quite as valuable as modern &#8220;Smartphones&#8221;, where have the accessories like for example silicon sleeves for those phones been back then? Kind of a gap in the memory, huh? Well, no, they just haven&#8217;t been there. Or at least, not at such a mass as they&#8217;re available today. But how come?</p>
<p>Fast forward to today and the Smartphones we&#8217;re using in our everyday life &#8211; Blackberries, Pres and Pixies, iPhones and N900s. What&#8217;s the biggest part in that whole cellular phone market that changed since the mid/end 90s? Of course, it&#8217;s the phone&#8217;s technology and the features they provide nowadays. But what&#8217;s more important, the whole accessories-ecosystem around those phones actually changed. Today, you see people buying additional battery-packs for their Blackberries, since the phones are already that &#8220;Smart&#8221; that you&#8217;d actually need a constant power-source to make them last for more than a couple of hours of heavy usage. When people buy a mobile phone, they also typically throw some on-the-go charger into the bucket. And maybe also some docking-station for the desk, or even equipment for attaching it to their car&#8217;s windshields.</p>
<p>Now the whole accessory-ecosystem goes that far, that people even buy overpriced socks or pieces of silicon formed as protection-sleeve for their Smartphones. Especially within the iPhone user-groups you can see such protection-cases being very popular. But let us look from another perspective at especially those accessories.</p>
<p>When someone buys an iPhone, of course, he&#8217;s interested in the phone&#8217;s features and probably likes the way the phone integrates with the rest of his personal infrastructure, like laptops, computers/Macs, etc. But of course, only a few people really go for the features-pack only. Probably 90% of the iPhone customers look forward to have a phone that&#8217;s so exclusive and so beautiful that you&#8217;d hardly like to take it out of the showcase. And exactly at that point, all third-party manufacturers of iPhone accessories come in handy. So, people go and get their iPhones, take them out of the packing and lock them right into some ugly silicon, acrylic, plastic or whatever kind of case to protect their beauty against scratches, dirt and other natural enemies of the glossy piano paint. Sure, I mean, they paid and ass full of money for a brick that blinds you by its glint, so why should these people not try the best to protect it the best they can?</p>
<p>Well, sure they can do that &#8211; but where&#8217;s the point? I think I can talk for everyone that has ever searched for an iPhone case when I say that 99% of them are ugly as hell and not worth the package they&#8217;re shipped in. So, why do people then actually buy an iPhone for its cool look, when they &#8220;protect&#8221; it most of the time with such a case where the phone&#8217;s actual look does not matter anymore? For what? So they can slide it out when they&#8217;re feeling lucky and show it to everybody for one blink of an eye and then pack it back into its sleeve?</p>
<p>Of course, you can&#8217;t blame the people for that. I mean, why can&#8217;t accessory-manufacturers produce electro-magnetic protection shields that build an own atmosphere around the iPhone that does not allow anything else to come through than the owner&#8217;s washed hands to touch the touchscreen? I mean come on, that&#8217;s what people are waiting for! F*ck invisibleSHIELD, f*ck the pseudo translucent plastic shields that doesn&#8217;t absorb hits that could cause the iPhone&#8217;s screen to break into million small pieces. The people want cases that doesn&#8217;t even allow the iPhone to fall down the stairs or into water!</p>
<p>Yeah, right. Now I can definitely remember those days when I got my first Bosch 509 and protected it with one of the dozen plastic-sleeves against the cruel reality.</p>
<p>Think different, people.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2010/02/13/protecting-the-beauty-through-ugliness/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Anybody who&#8217;d like to have a Google Wave invitation?</title>
		<link>http://www.devilx.net/2009/11/29/anybody-whod-like-to-have-a-google-wave-invitation/</link>
		<comments>http://www.devilx.net/2009/11/29/anybody-whod-like-to-have-a-google-wave-invitation/#comments</comments>
		<pubDate>Sun, 29 Nov 2009 10:53:43 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Life itself]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[E-Mail]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google Wave]]></category>
		<category><![CDATA[Invitation]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1124</guid>
		<description><![CDATA[As the subject says. Yet, I still have some Google Wave invitations left, so if you&#8217;re interested in trying it out yourself just leave me a comment including your GMail-account as e-mail address or write me an e-mail to devilx [at) devilx $dot% net. Enjoy! :-)]]></description>
			<content:encoded><![CDATA[<p>As the subject says. Yet, I still have some Google Wave invitations left, so if you&#8217;re interested in trying it out yourself just leave me a comment including your GMail-account as e-mail address or write me an e-mail to devilx [at) devilx $dot% net.</p>
<p>Enjoy! :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/29/anybody-whod-like-to-have-a-google-wave-invitation/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Tumblr</title>
		<link>http://www.devilx.net/2009/11/24/tumblr/</link>
		<comments>http://www.devilx.net/2009/11/24/tumblr/#comments</comments>
		<pubDate>Tue, 24 Nov 2009 19:45:53 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Fun]]></category>
		<category><![CDATA[Life itself]]></category>
		<category><![CDATA[This Site]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[devilx]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Hype]]></category>
		<category><![CDATA[Hysterie]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[mariusmm]]></category>
		<category><![CDATA[Porn]]></category>
		<category><![CDATA[Tumblr]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[Victim]]></category>
		<category><![CDATA[Vimeo]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[YouTube]]></category>
		<category><![CDATA[YQL]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1122</guid>
		<description><![CDATA[So, I&#8217;ve just became a victim of the general web-2.0-hysterie by creating myself a so-named &#8220;Tumblr&#8221;-account. Tumblr seems to be kind of a mash-up between one&#8217;s blogs, twitter-, youtube-, facebook-, vimeo- and whatever else accounts &#8211; of course with addition of an obligatory but surprisingly cost-free application for the imperial mobile-telephone for showing-off coolness and [...]]]></description>
			<content:encoded><![CDATA[<p>So, I&#8217;ve just became a victim of the general web-2.0-hysterie by creating myself a so-named &#8220;Tumblr&#8221;-account. Tumblr seems to be kind of a mash-up between one&#8217;s blogs, twitter-, youtube-, facebook-, vimeo- and whatever else accounts &#8211; of course with addition of an obligatory but surprisingly cost-free application for the imperial mobile-telephone for showing-off coolness and life-style (a.k.a. &#8220;iPhone&#8221;).</p>
<p>However, I could philosophize even more about the pros and cons of this themeable-web-interface-for-<a title="YQL" href="http://developer.yahoo.com/yql/" target="_blank">YQL</a> but I&#8217;m actually not that much into it to do so. The reason for registering was mainly for the hype&#8217;s sake and besides, I actually planned to reserve my everywhere used nickname &#8220;devilx&#8221; &#8211; unfortunately it was already taken by an as-it-seems porn addicted guy. :-(<br />
If this guy should coincidentally follow my blog and read this: I would be very thankful, if you could pass me that subdomain name, so I can make use of it for more than just an empty page named &#8220;Default&#8221; and following porn. Thank you!</p>
<p>Oh well, enough for today. Read (someday) more on <a title="Marius" href="http://mariusmm.tumblr.com/" target="_self">http://mariusmm.tumblr.com/</a>. Enjoy! :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/24/tumblr/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Clean Re-Installation of MacPorts under Snow Leopard</title>
		<link>http://www.devilx.net/2009/11/21/clean-re-installation-of-macports-under-snow-leopard/</link>
		<comments>http://www.devilx.net/2009/11/21/clean-re-installation-of-macports-under-snow-leopard/#comments</comments>
		<pubDate>Sat, 21 Nov 2009 12:51:14 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Clean]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[Leopard]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[MacPorts]]></category>
		<category><![CDATA[Snow Leopard]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1119</guid>
		<description><![CDATA[Since I&#8217;ve upgraded from Leopard to Snow Leopard, I had trouble using MacPorts until I cleaned it all up and did a fresh re-install &#8211; which really helped. Here&#8217;s the way to go: First of all, re-install the MacPorts.dmg. After that, check what packages you&#8217;ve got installed and activated: $ port installed &#124; grep -i [...]]]></description>
			<content:encoded><![CDATA[<p>Since I&#8217;ve upgraded from Leopard to Snow Leopard, I had trouble using MacPorts until I cleaned it all up and did a fresh re-install &#8211; which really helped. Here&#8217;s the way to go:</p>
<p>First of all, re-install the MacPorts.dmg. After that, check what packages you&#8217;ve got installed and activated:</p>
<blockquote><p>$ port installed | grep -i active</p></blockquote>
<p>You can save this list by redirecting it&#8217;s output via &gt; to any file. Next, clean up the ports:</p>
<blockquote><p>$ sudo su -<br />
Password:<br />
# port clean all</p></blockquote>
<p>Next, uninstall *all* installed (even not activated) ports:</p>
<blockquote><p># sudo port -f uninstall installed</p></blockquote>
<p>And last but not least, look at your list, check what software you still need and re-install it:</p>
<blockquote><p># port install</p></blockquote>
<p>You could try to automate the re-installation by something like:</p>
<blockquote><p># port install $(cat ./file_containing_list.txt | awk &#8216;{ print $1 }&#8217; | while read line; do echo -n &#8220;$line &#8220;; done)</p></blockquote>
<p>Although I would not recommend it, since you&#8217;d like to install different variants on some ports. :-)</p>
<p>Enjoy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/21/clean-re-installation-of-macports-under-snow-leopard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Put some CandyBars into your Dropbox&#8230; or not&#8230; or maybe soon?</title>
		<link>http://www.devilx.net/2009/11/18/put-some-candybars-into-your-dropbox-or-not/</link>
		<comments>http://www.devilx.net/2009/11/18/put-some-candybars-into-your-dropbox-or-not/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 18:59:39 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Art & Design]]></category>
		<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[CandyBar]]></category>
		<category><![CDATA[Cool]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Dropbox]]></category>
		<category><![CDATA[Icons]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Panic]]></category>
		<category><![CDATA[Style]]></category>
		<category><![CDATA[Update]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1113</guid>
		<description><![CDATA[On 11/15/2009 01:22PM, devilx@devilx.net wrote: Hi, I&#8217;m having a bit of a trouble while trying to move my CandyBar&#8217;s Library from the regular Application Support directory into my Dropbox directory. I did that move on my iMac and everything worked out pretty good. I&#8217;m now having the Library running on my Dropbox, so it&#8217;s always [...]]]></description>
			<content:encoded><![CDATA[<p><em>On 11/15/2009 01:22PM, devilx@devilx.net wrote:</em></p>
<blockquote><p>Hi,</p>
<p>I&#8217;m having a bit of a trouble while trying to move my CandyBar&#8217;s Library from the regular Application Support directory into my <a href="http://www.dropbox.com/referrals/NTIxODYyMjk5">Dropbox</a> directory. I did that move on my iMac and everything worked out pretty good. I&#8217;m now having the Library running on my Dropbox, so it&#8217;s always being synced up to the cloud.</p>
<p>When I open my MacBook now and change the Library path to the Dropbox directory there (since those two Macs are being kept in sync via Dropbox) I can see all libraries contents, but instead of the actual icons or docks, I only see CandyBar-file-icons in the preview. I can even double-click some item from my list to view it in detail, still, no actual icon-image, only the white paper with CandyBar logo on it.</p>
<p>Could you please help me on this/tell me, what&#8217;s left to be done so that my sync works? I&#8217;m not expecting both CandyBars to work simultaneously, since it would probably break the Library, but at least when I run one after another (what&#8217;s the actual use-case here) I expect everything to be in sync.</p>
<p>Thanks in advance,<br />
Marius.<br />
&#8211;<br />
Sent from my iMac.</p></blockquote>
<p><em>On Nov 17, 2009, at 3:47 AM, candybar@panic.com wrote:</em></p>
<blockquote><p>Hi Marius,</p>
<p>It&#8217;s currently not possible with Dropbox because whichever protocol Dropbox uses does not support resource forks, which is the part of the icon file where CandyBar stores icon data.</p>
<p>You&#8217;ll have to compress the whole library before putting it on Dropbox to make this work.</p>
<p>&#8211;<br />
Les<br />
Panic Inc.</p></blockquote>
<p><del datetime="2009-11-18T19:54:29+00:00">Hm&#8230; :-/</del></p>
<p><strong>Update:</strong></p>
<p><em>On 11/17/2009 97:22AM, devilx@devilx.net wrote:</em></p>
<blockquote><p>Hi,</p>
<p>I&#8217;m having trouble in using Dropbox in combination with a popular Mac OS X application named &#8220;CandyBar&#8221; (http://www.panic.com/candybar/). The application itself provides a way to move its existing Library into a custom location, for example right into Dropbox&#8217;s folder, unfortunately the sync over two Macs fails. Please read the appended conversation I&#8217;ve already had with one of Panic&#8217;s support guys for more information.</p>
<p>I would really appreciate if you could provide a bugfix for this issue, to make Dropbox even more usable than it already is.</p>
<p>Thanks in advance and best regards,<br />
Marius.</p></blockquote>
<p><em>On Nov 18, 2009, at 11:51 AM, support@getdropbox.com wrote:</em></p>
<blockquote><p>Hi Marius,</p>
<p>Yup, their support person is correct.</p>
<p>You can work around this problem by making an archive ZIP file of the file(s) and putting the archive in the Dropbox folder. Just right-click on the file (or a whole folder of files) and select &#8220;Create Archive.&#8221; The resulting .zip file is safe to put into the Dropbox folder. You can double click on the .zip file to open it and recreate the file(s).</p>
<p>Are are working on this. Add your voice:</p>
<p>https://www.dropbox.com/votebox/4/mac-resource-fork-support#votebox:0</p>
<p>Best,<br />
Kevin Chu</p></blockquote>
<p>This means: Vote people! Vote! :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/18/put-some-candybars-into-your-dropbox-or-not/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>It&#8217;s like Magic. It&#8217;s a Mouse.</title>
		<link>http://www.devilx.net/2009/11/15/its-like-magic-its-a-mouse/</link>
		<comments>http://www.devilx.net/2009/11/15/its-like-magic-its-a-mouse/#comments</comments>
		<pubDate>Sun, 15 Nov 2009 17:00:14 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Art & Design]]></category>
		<category><![CDATA[Hot Gear]]></category>
		<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Battery]]></category>
		<category><![CDATA[Cool]]></category>
		<category><![CDATA[Exposé]]></category>
		<category><![CDATA[Feedback]]></category>
		<category><![CDATA[Hot]]></category>
		<category><![CDATA[Magic Mouse]]></category>
		<category><![CDATA[Mighty Mouse]]></category>
		<category><![CDATA[Multi-Touch]]></category>
		<category><![CDATA[New]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1107</guid>
		<description><![CDATA[I&#8217;ve been using Apple&#8217;s newly designed and named Magic Mouse for around a week now and have to say that I&#8217;m actually pretty happy to have bought it and replaced my Mighty Mouse with it. First of all, the new Magic Mouse has no more scroll-ball, what&#8217;s probably the biggest change in the whole redesign. [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1108" class="wp-caption alignleft" style="width: 160px"><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1751.jpg"  class="fancybox"><img class="size-thumbnail wp-image-1108" title="IMG_1751" src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1751-150x150.jpg" alt="Apple Magic Mouse" width="150" height="150" /></a><p class="wp-caption-text">Apple Magic Mouse</p></div>
<p>I&#8217;ve been using Apple&#8217;s newly designed and named <a title="Apple Magic Mouse" href="http://www.apple.com/magicmouse/" target="_blank">Magic Mouse</a> for around a week now and have to say that I&#8217;m actually pretty happy to have bought it and replaced my Mighty Mouse with it.</p>
<p>First of all, the new Magic Mouse has no more scroll-ball, what&#8217;s probably the biggest change in the whole redesign. Apple finally found a way to remove the always-broken-due-to-dirt scroll-ball by a multi-touch surface that goes across the Mouse&#8217;s whole surface. I haven&#8217;t had any problems with scrolling yet, except for my habit that lets me always search for the scroll-ball with my fingers, heh.</p>
<p>Besides the new multi-touch surface, the Mouse became way more flat. It really was a weird feeling to work with it in the first few hours, but I got pretty fast used to it and the only thing I&#8217;m still missing are the buttons on the Mouse&#8217;s side. I had them configured for application-based Exposé and I know that there are some &#8220;Middle-Button-Hacks&#8221; for the Magic Mouse available which could be used for such features, but still some real buttons would be more comfortable, in my opinion.</p>
<p>However, I really like the new Mouse, especially since it&#8217;s a bit heavier and doesn&#8217;t feel like a cheap and shaky plastic-puttogether, as the Mighty Mouse did. Regarding the Bluetooth connectivity, I can&#8217;t see any differences yet. I didn&#8217;t experience problems neither with the Mighty nor with the new Magic Mouse. As soon as I&#8217;ll have some information about the power-consumption of the new Mouse, I&#8217;ll update this post &#8211; yet, I still run the one-time-batteries Apple provides with their devices and it&#8217;s still working pretty fine, at a battery-level of 88%. If the discharge-procedure continues straight-line I&#8217;d expect the life of those average batteries to end in around three weeks &#8211; at least with my more or less heavy usage. :-) Of course, I&#8217;ll replace them by re-chargeable batteries, since I&#8217;m not really a fan of the one-time-use.</p>
<p>My conclusion on the Magic Mouse is, that it&#8217;s indeed a very high priced mouse but also uses the great multi-touch technology to provide best user-experience at the lowest annoyance possible. I think that, if the actual internal hardware is qualitatively good enough, Apple finally did a good and lasting job on this Mouse. And if you&#8217;re not one of those fanboys, that <em>really really really</em> need to always have the latest stuff around, you might be sticking to this Mouse for a long time. :-)</p>
<p>Hope this feedback helps some of you at least a bit on deciding whether to get one for yourself or not. Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/15/its-like-magic-its-a-mouse/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>iUse on OS X (Updated)</title>
		<link>http://www.devilx.net/2009/11/15/iuse-on-os-x/</link>
		<comments>http://www.devilx.net/2009/11/15/iuse-on-os-x/#comments</comments>
		<pubDate>Sun, 15 Nov 2009 11:09:47 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Life itself]]></category>
		<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Address Book]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[CandyBar]]></category>
		<category><![CDATA[Colloquy]]></category>
		<category><![CDATA[Dropbox]]></category>
		<category><![CDATA[Echofon]]></category>
		<category><![CDATA[iCal]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iPhoto]]></category>
		<category><![CDATA[iTunes]]></category>
		<category><![CDATA[Last.fm]]></category>
		<category><![CDATA[LaunchBar]]></category>
		<category><![CDATA[LittleSnapper]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Mail.app]]></category>
		<category><![CDATA[Money]]></category>
		<category><![CDATA[OSX]]></category>
		<category><![CDATA[Pixelmator]]></category>
		<category><![CDATA[Quiet Read]]></category>
		<category><![CDATA[Shovebox]]></category>
		<category><![CDATA[Telephone]]></category>
		<category><![CDATA[Terminal]]></category>
		<category><![CDATA[TextMate]]></category>
		<category><![CDATA[Things]]></category>
		<category><![CDATA[Times]]></category>
		<category><![CDATA[Versions]]></category>
		<category><![CDATA[Viscosity]]></category>
		<category><![CDATA[Wallet]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=984</guid>
		<description><![CDATA[After now already several people asked me, what different kind of software/applications I use on my Macs, I&#8217;d like to sum up a list with the most essential software in my everyday work. CandyBar makes OS X appear even more lickable than it already is. It allows to simply change each application&#8217;s icon and provides [...]]]></description>
			<content:encoded><![CDATA[<p>After now already several people asked me, what different kind of software/applications I use on my Macs, I&#8217;d like to sum up a list with the most essential software in my everyday work.</p>
<p><span id="more-984"></span></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/CandyBar.png"  class="fancybox"><img class="alignleft size-full wp-image-1095" title="CandyBar" src="http://www.devilx.net/wp-content/uploads/2009/09/CandyBar.png" alt="CandyBar" width="64" height="64" /></a><a title="CandyBar" href="http://www.panic.com/candybar/" target="_blank">CandyBar</a> makes OS X appear even more lickable than it already is. It allows to simply change each application&#8217;s icon and provides a cool management of all the available icon-sets. Besides, also the Dock appearance can be tweaked and managed. It would be really nice, if CandyBar would provide a way to sync the collection from one Mac to another, since now, I need to keep my collections on my iMac and my MacBook manually in sync, what&#8217;s pretty meh. However,  although it&#8217;s pretty pricy, it&#8217;s worth to have it.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Colloquy.png"  class="fancybox"><img class="alignleft size-full wp-image-986" title="Colloquy" src="http://www.devilx.net/wp-content/uploads/2009/09/Colloquy.png" alt="Colloquy" width="64" height="64" /></a><a title="Colloquy" href="http://colloquy.info/" target="_blank">Colloquy</a> is the most advanced, free IRC client I&#8217;ve found yet. Its feature-list is pretty good and there&#8217;s a similar <a title="Colloquy iPhone App" href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=302000478&amp;mt=8" target="_blank">iPhone client</a> available, too. I used this client already in 2006, when I still had my PowerBook and have to say, that it&#8217;s pretty bloated and slow on older hardware. But on the current generation of MacBooks, iMacs and MacPros it should be running like a charm.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Dropbox.png"  class="fancybox"><img class="alignleft size-full wp-image-1096" title="Dropbox" src="http://www.devilx.net/wp-content/uploads/2009/09/Dropbox.png" alt="Dropbox" width="64" height="64" /></a> Width <a title="Dropbox" href="http://www.dropbox.com/referrals/NTIxODYyMjk5" target="_blank">Dropbox</a> you can easily keep your files in sync over two or more different devices, regardless if it&#8217;s a PC, a Mac, a Linux or even an iPhone &#8211; all your data is always up-to-date. Besides, you can share files with friends and receive shared folder invitations yourself. 2GB of space is being provided for free, more is affordable for some cash. Though, I&#8217;d never put sensitive data &#8220;into the cloud&#8221;.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Echofon.png"  class="fancybox"><img class="alignleft size-full wp-image-1097" title="Echofon" src="http://www.devilx.net/wp-content/uploads/2009/09/Echofon.png" alt="Echofon" width="64" height="64" /></a> <a title="Echofon" href="http://echofon.com/" target="_blank">Echofon</a> is probably the best Twitter-suite available on the Mac and the iPhone. Thanks to their Sync- and Push-Notification-Service it&#8217;s a pleasure to use Twitter, even with multiple accounts and on multiple devices. Thanks to the intelligent Sync-Service, Echofon notices when you&#8217;re not on your desktop anymore, and starts pushing notifications to your iPhone client when you get mentioned by someone else &#8211; very cool! Yet, the notifications will be pushed only every 15 minutes, but from what I&#8217;ve heard, the Echofon guys are already working on shrinking this interval. If you haven&#8217;t tried out yet &#8211; be sure to do soon!</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/iPhoto.png"  class="fancybox"><img class="alignleft size-full wp-image-987" title="iPhoto" src="http://www.devilx.net/wp-content/uploads/2009/09/iPhoto.png" alt="iPhoto" width="64" height="64" /></a>Is there much to say about <a title="iPhoto" href="http://www.apple.com/ilife/iphoto/" target="_blank">iPhoto</a>? I think you can call it <strong>the</strong> image-management application on OS X. Since &#8217;09 it also supports Faces &amp; Places, what makes everything even more sexy. In combination with the photos shot on a GPS-able camera (like the iPhone) it even detects automatically, what place you&#8217;ve taken the photo. Although, yet the face-recognition doesn&#8217;t work as I would expect it to. You need high quality pictures with much contrast to get iPhoto recognize the people.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/LastFM.png"  class="fancybox"><img class="alignleft size-full wp-image-988" title="LastFM" src="http://www.devilx.net/wp-content/uploads/2009/09/LastFM.png" alt="LastFM" width="64" height="64" /></a>I used to be registered on <a title="Last.fm" href="http://www.last.fm/" target="_blank">Last.fm</a> since I was using Linux with its Media-Players with Audioscrobbler plugin, so I&#8217;ve just continued using this pretty cool service. It let&#8217;s me tag the music I listen and discover new tracks I might like. I never tried out Pandora or similar services, so I can&#8217;t say whether Last.fm is better or not &#8211; I&#8217;m just used to it. :-)</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/LaunchBar.png"  class="fancybox"><img class="alignleft size-full wp-image-1098" title="LaunchBar" src="http://www.devilx.net/wp-content/uploads/2009/09/LaunchBar.png" alt="LaunchBar" width="64" height="64" /></a> After discovering and trying out <a title="LaunchBar" href="http://www.obdev.at/products/launchbar/index.html" target="_blank">LaunchBar</a> there was no way around it anymore &#8211; not even by using QuickSilver, what I did quite some time. LaunchBar is extremely fast, supports a ton of different Applications and even provides an easy way to write and include your own plugins. I wouldn&#8217;t want to miss it again in my daily work.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/LittleSnapperIcon.png"  class="fancybox"><img class="alignleft size-full wp-image-989" title="LittleSnapperIcon" src="http://www.devilx.net/wp-content/uploads/2009/09/LittleSnapperIcon.png" alt="LittleSnapperIcon" width="64" height="64" /></a><a title="LittleSnapper" href="http://www.realmacsoftware.com/littlesnapper/" target="_blank">LittleSnapper</a> in combination with its web-service (former QuickSnapper, now <a title="Ember" href="http://emberapp.com/" target="_blank">Ember</a>) is a very nice enhancement to the OS X desktop, since it provides a very quick and easy way to share screenshots with others, without having to use &#8220;Grab&#8221; and manually upload the images to some service like ImageShack. In addition to the Desktop client, I also use the <a title="LittleSnapper iPhone App" href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=310591640&amp;mt=8" target="_blank">iPhone app</a> to share camera-snapshots with others.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Money.png"  class="fancybox"><img class="alignleft size-full wp-image-1099" title="Money" src="http://www.devilx.net/wp-content/uploads/2009/09/Money.png" alt="Money" width="64" height="64" /></a> With <a title="Money" href="http://www.jumsoft.com/money/" target="_blank">Money</a> managing finances became as easy as a finger-snip. I bought my license on a MacUpdate Promo for 20% less and have to say that it&#8217;s worth every penny, especially when there&#8217;s such a <a title="Getting Jumsoft's Money working..." href="http://www.devilx.net/2009/11/10/getting-jumsofts-money-working-with-my-ing-diba-csv-exports/" target="_self">friendly and helpful company like Jumsoft</a> behind. Money supports backing up the whole database to MobileMe and by that even synchronization of two Macs with each other. The iPhone client yet only supports sync over WiFi from what I&#8217;ve seen, but hopefully there will be MobileMe support in future, too.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Pixelmator.png"  class="fancybox"><img class="alignleft size-full wp-image-990" title="Pixelmator" src="http://www.devilx.net/wp-content/uploads/2009/09/Pixelmator.png" alt="Pixelmator" width="64" height="64" /></a>Let me just call it &#8220;Poor man&#8217;s Photoshop&#8221; &#8211; in an excellent way! <a title="Pixelmator" href="http://www.pixelmator.com/" target="_blank">Pixelmator</a> is, what GIMP is to the GNOME Desktop. It let&#8217;s me create/edit images in an easy and smooth way, without much knowledge of the actual application itself. Pixelmator provides me a light and intuitive application with a feature-list that fits my needs perfectly without being over-bloated.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/QuietRead.png"  class="fancybox"><img class="alignleft size-full wp-image-1100" title="QuietRead" src="http://www.devilx.net/wp-content/uploads/2009/09/QuietRead.png" alt="QuietRead" width="64" height="64" /></a>As the name already says, <a title="Quiet Read" href="http://bambooapps.com/free-stuff/" target="_blank">Quiet Read</a> provides you a way to temporary bookmark for example web-pages and read it later, when there&#8217;s more time for it. It&#8217;s actually the similar concept Instapaper follows, although it doesn&#8217;t really extract your site&#8217;s content for any mobile platform, nor does it have any web-service in the background to which you can sync multiple installations. MobileMe support would be a great feature, maybe Bamboo Apps will implement it some day. :-)</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Shovebox.png"  class="fancybox"><img class="alignleft size-full wp-image-1101" title="Shovebox" src="http://www.devilx.net/wp-content/uploads/2009/09/Shovebox.png" alt="Shovebox" width="64" height="64" /></a> <a title="Shovebox" href="http://www.wonderwarp.com/shovebox/" target="_blank">Shovebox</a> is a great companion for Things and Quiet Read which also provides a pretty cool iPhone client that&#8217;s for free. I got the App itself from within a MacHeist Bundle, where I didn&#8217;t need to pay anything for it &#8211; and maybe that&#8217;s the reason I&#8217;m actually using it. Yet, I would not really pay money on this App, since its yet pretty &#8220;small&#8221; (regarding its features) and I have most things already managed by Things and Quiet Read/Instapaper (free).</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Telephone.png"  class="fancybox"><img class="alignleft size-full wp-image-991" title="Telephone" src="http://www.devilx.net/wp-content/uploads/2009/09/Telephone.png" alt="Telephone" width="64" height="64" /></a>Yes, it&#8217;s <a title="Telephone" href="http://code.google.com/p/telephone/" target="_blank">Telephone</a>! And yes! It&#8217;s OpenSource! This application allows you to use your VoIP account provided by your ISP directly on your Mac. At the moment, several ISP are supported and the list gets longer and longer. Telephone makes it easy to dial and receive calls on a VoIP account without much hassle.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/TextMate.png"  class="fancybox"><img class="alignleft size-full wp-image-992" title="TextMate" src="http://www.devilx.net/wp-content/uploads/2009/09/TextMate.png" alt="TextMate" width="64" height="64" /></a><a title="TextMate" href="http://macromates.com/" target="_blank">TextMate</a> &#8211; <strong>THE</strong> Editor. I think, there&#8217;s nothing better for writing any kind of code under OS X. This editor is light, fast and provides hell of a feature-set you&#8217;ll probably never finish to explore. MacroMates did an excellent job with this application and I know of many tries (especially on Linux) to re-create something similar, but yet no other (GUI-)editor reached TextMate.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Things.png"  class="fancybox"><img class="alignleft size-full wp-image-1102" title="Things" src="http://www.devilx.net/wp-content/uploads/2009/09/Things.png" alt="Things" width="64" height="64" /></a><a title="Things" href="http://culturedcode.com/things/" target="_blank">Things</a> is probably one of the most amazing task management applications for OS X available today. It provides all you need for successfully managing all your ToDos and even syncs them up to your iPhone client. Two big cons of Things are the yet still not available MobileMe sync (today, it does sync only over WiFi, without even using an encrypted connection) and the pricing on both, the desktop and the iPhone app. Still, the App is just lo-ve-ly and a must of everyone who&#8217;s really into task management.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Times.png"  class="fancybox"><img class="alignleft size-full wp-image-993" title="Times" src="http://www.devilx.net/wp-content/uploads/2009/09/Times.png" alt="Times" width="64" height="64" /></a>A very nice newsfeed reader with excellent graphical user interface. <a title="Times" href="http://www.acrylicapps.com/times/" target="_blank">Times</a> provides you all basic-features you would expect form an RSS-reader plus the possibility to read the whole articles within the application itself. Very nice idea, and pretty cool implementation, though I&#8217;d wish it to be faster and not that bloated.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Versions.png"  class="fancybox"><img class="alignleft size-full wp-image-994" title="Versions" src="http://www.devilx.net/wp-content/uploads/2009/09/Versions.png" alt="Versions" width="64" height="64" /></a><a href="http://www.versionsapp.com/" target="_blank">Versions</a> &#8211; and you&#8217;ll never need to look up <em>svn &#8211;help</em> again. Since the last version of Version (ough, what a sentence) it even supports the latest SVN 1.6.x and provides you to work with several different SVN repositories at a time without much practice. Although, with $39 it this application is very pricy.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Viscosity.png"  class="fancybox"><img class="alignleft size-full wp-image-995" title="Viscosity" src="http://www.devilx.net/wp-content/uploads/2009/09/Viscosity.png" alt="Viscosity" width="64" height="64" /></a><a title="Viscosity" href="http://www.viscosityvpn.com/" target="_blank">Viscosity</a> is yet the best user interface for OpenVPN available on OS X, in my opinion. It lets you import your OpenVPN config-files and edit them within a very nice preference-window. Also, it shows you statistics about your running connections and makes OpenVPN easier than it already is &#8211; and with $9 it&#8217;s quite a fair deal.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/Wallet.png"  class="fancybox"><img class="alignleft size-full wp-image-996" title="Wallet" src="http://www.devilx.net/wp-content/uploads/2009/09/Wallet.png" alt="Wallet" width="64" height="64" /></a>Storing passwords, credit-card information and other sensitive data. <a title="Wallet" href="http://www.acrylicapps.com/wallet/" target="_blank">Wallet</a> allows me to manage all my logins and other passwords in a very nice and fast way, it provides me an add-on for Safari and Firefox and it allows me to sync my Wallet-database via MobileMe and even browse it on my iPhone with its <a title="Wallet iPhone App" href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=297540008&amp;mt=8" target="_blank">iPhone app</a> &#8211; although it took years until the iPhone pendant was available here in germany.</p>
<p>I think, that&#8217;s it so far. Besides those application, of course I use the regular tools like Mail.app, iCal, the Address Book, iTunes, the Terminal and all the other not-worth-mentioning programs that come with OS X. :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/15/iuse-on-os-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A brief summary of setting up a CentOS 5.4 DRBD Cluster in Primary/Primary</title>
		<link>http://www.devilx.net/2009/11/14/a-brief-summary-of-setting-up-a-centos-5-4-drbd-cluster-in-primaryprimary/</link>
		<comments>http://www.devilx.net/2009/11/14/a-brief-summary-of-setting-up-a-centos-5-4-drbd-cluster-in-primaryprimary/#comments</comments>
		<pubDate>Sat, 14 Nov 2009 20:10:45 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Linux and stuff ...]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Cluster]]></category>
		<category><![CDATA[CMAN]]></category>
		<category><![CDATA[Coffee]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[DRBD]]></category>
		<category><![CDATA[GFS]]></category>
		<category><![CDATA[Grub]]></category>
		<category><![CDATA[High Availability]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[HPET]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OCFS]]></category>
		<category><![CDATA[OpenAIS]]></category>
		<category><![CDATA[RedHat]]></category>
		<category><![CDATA[RHEL]]></category>
		<category><![CDATA[SELinux]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[SuSE]]></category>
		<category><![CDATA[TSC]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[x86_64]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1090</guid>
		<description><![CDATA[Clustering is cool and fun when it&#8217;s working, but for getting to such status it mostly takes like a dozen hours, coffee and many nerves. To simplify it a bit, I&#8217;d like to share some information on that topic, especially the stones I stumbled over. First of all, we defined our scenario. Let&#8217;s assume that [...]]]></description>
			<content:encoded><![CDATA[<p>Clustering is cool and fun when it&#8217;s working, but for getting to such status it mostly takes like a dozen hours, coffee and many nerves. To simplify it a bit, I&#8217;d like to share some information on that topic, especially the stones I stumbled over.</p>
<p>First of all, we defined our scenario. Let&#8217;s assume that we&#8217;d like to have a cluster of two servers, both running the latest CentOS (5.4), both up-to-date, both using the very same partitioning and both using DRBD and GFS(2). On most SuSE or Debian systems, the installation would be pretty straight-forward: You install the base system, set up the DRBD, format it with some OCFS and make Heartbeat monitor everything. So far so good. On RHEL/CentOS it seems to work a bit different, due to the different tools they&#8217;re using. When installing the installation-group &#8220;Cluster Storage&#8221; for example, yum fetches packages named openais and cman &#8211; tools you&#8217;ve probably never heard of, when you come form the Debian corner (as I do). But before I describe those in detail, let&#8217;s just configure our plain base-installation.</p>
<p>What do we need to do first? What&#8217;s one of the most important things on two systems that should run &#8220;symmetrically&#8221; and have the very same data available, with every change that&#8217;s being made every second? Exactly, the time would be one of those things. We need to assure that both systems use the very same time. Mostly, you&#8217;ll be using some x86_64 hardware for such setups, where the problems start: On 64-bit hardware, the timekeeping with TSC doesn&#8217;t run <strong>that</strong> perfect, which is why we should just deactivate it and leave HPET do its job alone. After installing ntpd we need to open our grub.conf and add the notsc option to our kernels. It should looks something like this:</p>
<blockquote><p>===================================================================<br />
RCS file: /etc/grub.conf,v<br />
retrieving revision 1.1<br />
diff -u -r1.1 /etc/grub.conf<br />
&#8212; /etc/grub.conf	2009/11/13 13:30:26	1.1<br />
+++ /etc/grub.conf	2009/11/13 13:32:26<br />
@@ -13,9 +13,9 @@<br />
hiddenmenu<br />
title CentOS (2.6.18-164.6.1.el5)<br />
root (hd0,0)<br />
-	kernel /vmlinuz-2.6.18-164.6.1.el5 ro root=LABEL=/<br />
+	kernel /vmlinuz-2.6.18-164.6.1.el5 ro root=LABEL=/ notsc<br />
initrd /initrd-2.6.18-164.6.1.el5.img<br />
title CentOS (2.6.18-164.el5)<br />
root (hd0,0)<br />
-	kernel /vmlinuz-2.6.18-164.el5 ro root=LABEL=/<br />
+	kernel /vmlinuz-2.6.18-164.el5 ro root=LABEL=/ notsc<br />
initrd /initrd-2.6.18-164.el5.img</p></blockquote>
<p>Now, we can shutdown the ntpd and set its drift-file to 0.000. After that, simply reboot and check the dmesg for the HPET-lines and of course also check the time on both systems to be identically.</p>
<p>Now, what else should we configure until we start building our actual cluster? Probably, we should take a look into the system-config-securitylevel-tui tool. Depending on what environment you plan your cluster to run in, you either want to open each port by port manually in the firewall and configure your SELinux to allow CMAN/OpenAIS and DRBD to work properly &#8211; or you simply turn of those &#8220;toys&#8221; and configure the network-segment to be secure by itself. It depends to you and I&#8217;m not going to write how to reconfigure the firewall or your SELinux-environment. For my tests, I simply turned both off. Especially the combination of CMAN/OpenAIS and SELinux can become pretty tricky, when SELinux runs in any other mode than &#8220;Disabled&#8221;. :-)</p>
<p>Now, let&#8217;s finally please our inner kid and install some software:</p>
<blockquote><p># yum groupinstall &#8220;Cluster Storage&#8221;<br />
&#8230;<br />
# yum install drbd83 kmod-drbd83<br />
&#8230;</p></blockquote>
<p>I&#8217;ve chosen to use drbd83 since it&#8217;s the next stable release and already obsoletes drbd82 in CentOS 5.4 &#8211; and drbd is simply just too old. Of course, upgrades might become tricky when using explicitly versioned packages, but on DRBD it&#8217;s always a bit tricky, since there could be configuration changes which would have to be implemented manually on future versions.</p>
<p>However, now let&#8217;s create the infamous and poorly documented /etc/cluster/cluster.conf. For testing, we could simply use something like this:</p>
<blockquote><p>&lt;?xml version=&#8221;1.0&#8243;?&gt;<br />
&lt;cluster alias=&#8221;cluster-setup&#8221; config_version=&#8221;1&#8243; name=&#8221;cluster-setup&#8221;&gt;<br />
&lt;rm log_level=&#8221;4&#8243;/&gt;<br />
&lt;fence_daemon clean_start=&#8221;1&#8243; post_fail_delay=&#8221;0&#8243; post_join_delay=&#8221;3&#8243;/&gt;<br />
&lt;clusternodes&gt;<br />
&lt;clusternode name=&#8221;server-1.cross&#8221; nodeid=&#8221;1&#8243; votes=&#8221;1&#8243;&gt;<br />
&lt;fence&gt;<br />
&lt;method name=&#8221;2&#8243;&gt;<br />
&lt;device name=&#8221;LastResortNode01&#8243;/&gt;<br />
&lt;/method&gt;<br />
&lt;/fence&gt;<br />
&lt;/clusternode&gt;<br />
&lt;clusternode name=&#8221;server-2.cross&#8221; nodeid=&#8221;2&#8243; votes=&#8221;1&#8243;&gt;<br />
&lt;fence&gt;<br />
&lt;method name=&#8221;2&#8243;&gt;<br />
&lt;device name=&#8221;LastResortNode02&#8243;/&gt;<br />
&lt;/method&gt;<br />
&lt;/fence&gt;<br />
&lt;/clusternode&gt;<br />
&lt;/clusternodes&gt;<br />
&lt;cman expected_votes=&#8221;1&#8243; two_node=&#8221;1&#8243;/&gt;<br />
&lt;fencedevices&gt;<br />
&lt;fencedevice agent=&#8221;fence_manual&#8221; name=&#8221;LastResortNode01&#8243; nodename=&#8221;server-1.cross&#8221;/&gt;<br />
&lt;fencedevice agent=&#8221;fence_manual&#8221; name=&#8221;LastResortNode02&#8243; nodename=&#8221;server-2.cross&#8221;/&gt;<br />
&lt;/fencedevices&gt;<br />
&lt;rm/&gt;<br />
&lt;totem consensus=&#8221;4800&#8243; join=&#8221;60&#8243; token=&#8221;10000&#8243; token_retransmits_before_loss_const=&#8221;20&#8243;/&gt;<br />
&lt;/cluster&gt;</p></blockquote>
<p>Configuring OpenAIS this way isn&#8217;t actually the best way&#8230; it&#8217;s not even &#8220;good&#8221;. But for testing (and understanding how stuff works) it should be enough. Those rules expect manual intervention when one of the two server should become unavailable and needs to be brought back into the cluster.</p>
<p>The domain &#8220;.cross&#8221; is expected to be a hostname.domainname entry within the /etc/hosts of each server and defines the direct cross-cable-connection from one server to another. We need this connection to shrink down network latency and provide a way for OpenAIS and (in this example) also DRBD to directly communicate with each other. A better setup would be to set the heartbeat on top of a serial-line, since it would be most fault-tolerant.</p>
<p>Okay, next. What&#8217;s left? Exactly, the actual DRBD &#8211; so let&#8217;s set it up:</p>
<blockquote><p>global { usage-count yes; }<br />
common { syncer { rate 100M; } }<br />
resource the-disk {<br />
protocol C;<br />
startup {<br />
wfc-timeout 20;<br />
degr-wfc-timeout 10;<br />
# become-primary-on both; # Uncomment this only after tested!<br />
}<br />
net {<br />
cram-hmac-alg sha1;<br />
shared-secret &#8220;i4m501337&#8243;;<br />
allow-two-primaries;<br />
}<br />
on server-1 {<br />
device    /dev/drbd1;<br />
disk      /dev/sdb;<br />
address   10.100.0.1:7789;<br />
meta-disk  internal;<br />
}<br />
on server-2 {<br />
device    /dev/drbd1;<br />
disk      /dev/sdb;<br />
address   10.100.0.2:7789;<br />
meta-disk  internal;<br />
}<br />
disk {<br />
fencing resource-and-stonith;<br />
}<br />
handlers {<br />
#outdate-peer &#8220;/sbin/handler&#8221;;<br />
}<br />
}</p></blockquote>
<p>This configuration defines our two servers and tells DRBD to use /dev/sdb on both for the actual data. Our meta-disk will be internal and with address we defined &#8211; guess what? &#8211; the IP addresses of our two servers. Those are the .cross-domain addresses!</p>
<p>Next, we initialize our meta-disks (on both nodes), set our generation identifier, start the actual DRBD service and check the roles it currently runs in:</p>
<blockquote><p># drbdadm create-md the-disk<br />
&#8230;<br />
# drbdadm &#8212; 6::::1 set-gi the-disk<br />
&#8230;<br />
# service drbd start<br />
&#8230;<br />
# drbdadm role all<br />
Secondary/Secondary</p></blockquote>
<p>If all those steps succeed, we can try to promote both nodes to primary:</p>
<blockquote><p># drbdadm primary all<br />
# drbdadm role all<br />
Primary/Primary</p></blockquote>
<p>And if this now worked out properly, we can enable the automatic promotion from within our drbd.conf:</p>
<blockquote><p># rcsdiff -u /etc/drbd.conf<br />
===================================================================<br />
RCS file: /etc/drbd.conf,v<br />
retrieving revision 1.2<br />
diff -u -r1.2 /etc/drbd.conf<br />
&#8212; /etc/drbd.conf	2009/11/13 10:34:23	1.2<br />
+++ /etc/drbd.conf	2009/11/13 15:16:26<br />
@@ -9,7 +9,7 @@<br />
startup {<br />
wfc-timeout 20;<br />
degr-wfc-timeout 10;<br />
-                # become-primary-on both; # Uncomment this only after tested!<br />
+                become-primary-on both; # Uncomment this only after tested!<br />
}<br />
net {<br />
cram-hmac-alg sha1;</p></blockquote>
<p>Great. <em>So we&#8217;re set up now?</em> Nope. We&#8217;re not. Next, we need to change DRBDs boot order in order for it to work properly with the GFS auto-mounting on boot:</p>
<blockquote><p># rcsdiff -u /etc/init.d/drbd<br />
===================================================================<br />
RCS file: /etc/init.d/drbd,v<br />
retrieving revision 1.1<br />
diff -u -r1.1 /etc/init.d/drbd<br />
&#8212; /etc/init.d/drbd	2009/11/13 10:57:15	1.1<br />
+++ /etc/init.d/drbd	2009/11/13 10:58:15<br />
@@ -1,6 +1,6 @@<br />
#!/bin/bash<br />
#<br />
-# chkconfig: 345 70 08<br />
+# chkconfig: 345 22 75<br />
# description: Loads and unloads the drbd module<br />
#<br />
# Copright 2001-2008 LINBIT Information Technologies</p></blockquote>
<p>And let it run on boot:</p>
<blockquote><p># chkconfig &#8211;level 345 drbd on</p></blockquote>
<p>Great! <em>So, now we are set up, right?</em> Nope, wrong. We have a running DRBD setup now, but we still lack of a cluster-able file-system. GFS2 is a pretty good choice for such a task, so let&#8217;s try to format the DRBD-device on <strong>one of our nodes</strong> with it:</p>
<blockquote><p># mkfs.gfs2 -p lock_dlm -t cluster-setup:mycluster /dev/drbd1 -j 2</p></blockquote>
<p>Before we can try to mount the device, we need to have OpenAIS/CMAN running, in order to manage our GFS consistency. Let&#8217;s start the cman service therefor (on both nodes!):</p>
<blockquote><p># service cman start</p></blockquote>
<p>Starting cman and starting fenced could take several seconds, be patient. If you installed both servers identically and followed this documentation step by step everything should work out just fine. :-)</p>
<p>At last, we can now mount our DRBD device into some folder (on both nodes) and start playing around with our fresh setup:</p>
<blockquote><p># mount -t gfs2 /dev/drbd1 /mnt/somefolder</p></blockquote>
<p>I hope everything worked out for you and I also hoped that this brief summary helped you getting a bit easier into the actual setup of such a cluster setup. Feel free to ask any questions or provide feedback in any form.</p>
<p>Enjoy! :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/14/a-brief-summary-of-setting-up-a-centos-5-4-drbd-cluster-in-primaryprimary/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Palm webOS (formerly Palm Pre) Development Bundle for TextMate 0.3</title>
		<link>http://www.devilx.net/2009/11/13/palm-webos-formerly-palm-pre-development-bundle-for-textmate-0-3/</link>
		<comments>http://www.devilx.net/2009/11/13/palm-webos-formerly-palm-pre-development-bundle-for-textmate-0-3/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 23:45:23 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[This Site]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Austin Powers]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Bundle]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Mail]]></category>
		<category><![CDATA[Mojo]]></category>
		<category><![CDATA[Palm]]></category>
		<category><![CDATA[Pre]]></category>
		<category><![CDATA[Project]]></category>
		<category><![CDATA[Release]]></category>
		<category><![CDATA[TextMate]]></category>
		<category><![CDATA[webOS]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1077</guid>
		<description><![CDATA[Releasing version 0.3 of my Palm webOS development bundle for TextMate, with plenty new features and a stand-alone &#8220;Mojo&#8221;-language. So, what&#8217;s new in 0.3? Well, just about everything. I&#8217;ve renamed the bundle (at least its metadata), since webOS is not just limited to the Pre and I&#8217;ve modified the shortcuts of existing features to fit [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/Palm-webOS-0.3.png"  class="fancybox"><img class="alignleft size-thumbnail wp-image-1079" title="Palm webOS 0.3" src="http://www.devilx.net/wp-content/uploads/2009/11/Palm-webOS-0.3-150x150.png" alt="Palm webOS 0.3" width="150" height="150" /></a>Releasing version 0.3 of my Palm webOS development bundle for TextMate, with plenty new features and a stand-alone &#8220;Mojo&#8221;-language.</p>
<p>So, what&#8217;s new in 0.3? Well, just about everything. I&#8217;ve renamed the bundle (at least its metadata), since webOS is not just limited to the Pre and I&#8217;ve modified the shortcuts of existing features to fit TextMate&#8217;s styling guidelines a bit better. I&#8217;ve also created some snippets which can be used for faster code-writing now and in addition to that, I&#8217;ve implemented a very own language for the bundle, which can&#8217;t be found in the document type picker named as &#8220;Mojo&#8221;. &#8220;Yeah baby!&#8221;, as Austin would say now. Actually, yet it&#8217;s just a copy &amp; paste of the JavaScript-language implementation in TextMate, but I&#8217;m planning to extend it to fit the Mojo-framework even better.</p>
<p>The TextMate bundle is now also available on <a title="devilx's palm-webos-development-tmbundle" href="http://github.com/devilx/palm-webos-development-tmbundle">GitHub</a>, for everyone who can&#8217;t wait for me packaging the releases and releasing them here. :-) If you have any ideas for improvement, feel free to contact me by mail or just leave some lines here on my blog.</p>
<p>Enjoy!</p>
<p><strong><span style="text-decoration: line-through;">Download: </span><a href="http://www.devilx.net/wp-content/uploads/2009/11/Palm_webOS-Bundle-0.3.zip"><span style="text-decoration: line-through;">Palm_webOS-Bundle-0.3</span></a></strong></p>
<p><strong>Download: <a href="http://www.devilx.net/wp-content/uploads/2009/11/Palm_webOS-Bundle-0.31.zip">Palm_webOS-Bundle-0.3</a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/13/palm-webos-formerly-palm-pre-development-bundle-for-textmate-0-3/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>VMware Fusion 3 (Upgrade) or Parallels Desktop 5 Mac (Retail)</title>
		<link>http://www.devilx.net/2009/11/12/vmware-fusion-3-upgrade-or-parallels-desktop-5-mac-retail/</link>
		<comments>http://www.devilx.net/2009/11/12/vmware-fusion-3-upgrade-or-parallels-desktop-5-mac-retail/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 21:52:20 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[Desktop 5 Mac]]></category>
		<category><![CDATA[Fusion]]></category>
		<category><![CDATA[iMac]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Parallels]]></category>
		<category><![CDATA[Unsure]]></category>
		<category><![CDATA[Upgrade]]></category>
		<category><![CDATA[VM]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1075</guid>
		<description><![CDATA[I don&#8217;t know. I don&#8217;t know what to do. I have VMware Fusion 2 installed on my iMac, which actually runs just fine and has some great features, but to use the latest additions (especially regarding Snow Leopard) I would need to buy the upgrade to VMware Fusion 3. But: I&#8217;m not sure, if I&#8217;d [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/Parallels-Desktop.png"  class="fancybox"><img class="alignleft size-thumbnail wp-image-1083" title="Parallels Desktop" src="http://www.devilx.net/wp-content/uploads/2009/11/Parallels-Desktop-150x150.png" alt="Parallels Desktop" width="150" height="150" /></a>I don&#8217;t know. I don&#8217;t know what to do. I have VMware Fusion 2 installed on my iMac, which actually runs just fine and has some great features, but to use the latest additions (especially regarding Snow Leopard) I would need to buy the upgrade to VMware Fusion 3. But: I&#8217;m not sure, if I&#8217;d still want to stick with VMware&#8217;s Fusion or maybe migrate to Parallels&#8217; new Desktop 5.0 for Mac. There are several reasons for migrating, but also quite some for staying at VMware.</p>
<p>On the one hand, VMware seems to me, especially when running Windows as Guest OS way slower than Parallels. At least from what I&#8217;ve tested it seems to be having way more disk I/O and by that produce a heavier load to the Mac. Parallels on the other hand seems to be better performing, but yet it still looks like it&#8217;s mostly just &#8220;hacked together&#8221;. It doesn&#8217;t integrate that smooth with my Mac and permanently keeps my Firewall asking me whether to allow its daemons to receive connections. VMware&#8217;s look-and-feel is just way better than Parallels&#8217;.</p>
<p>On the other hand again, VMware&#8217;s Fusion doesn&#8217;t provide an iPhone App, what&#8217;s definitely a Plus for Parallels. But VMware then again provides me with kind of a virtual appliance store, where I can find pre-installed VMs &#8211; many even for free.</p>
<p><strong>Update:</strong> So, I&#8217;ve just installed Windows 7 on both virtualization-solutions now. The average time for installation was approximately the same and even the performance is not such a big difference. What I&#8217;ve noticed: VMware is slower in rendering the Aero-effects while Parallels is slower in disk I/O-related things. I can&#8217;t really proof this, it&#8217;s just a feeling I get when using the VMs.</p>
<p>Huh, I don&#8217;t know. Any comments? I would like to see some in-detail 1:1-comparizon between Fusion 3 and Parallels Desktop 5 Mac, although I don&#8217;t think I&#8217;ll find something like that&#8230;</p>
<p><strong>Update #2:</strong> Now, I&#8217;ve also installed the latest openSuSE 11.2 on both and was astonished by Parallels&#8217; speed for copying, unpacking and installing 2.8GB of RPMs within around 11 Minutes. I guess the I/O argument isn&#8217;t valid any longer now. Hm&#8230;</p>
<p><strong>Update #3:</strong> Parallels somehow still totally disrupts my workflow. I&#8217;ve just booted a Windows Vista VM (pure pain, yes) and Parallels Desktop 5 Mac immediately started to ask me to install its tools. I clicked later and right after the dialog disappeared a new one popped up, that told me something about the VM/Mac profile-synchronization. I clicked on the red X, since I just wanted to test something quick within Vista. Regardless of my intend to dismiss the procedure, Parallels logged me out of my Windows Vista session, so I had to log in again. Again, the profile-sync dialog appeared &#8211; I didn&#8217;t touch it anymore. Some seconds later a new dialog appeared, that was telling me that Parallels placed some Windows folder right within my Dock &#8211; and I was like <em>&#8220;WTF?!&#8221;</em>. Ouff&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/12/vmware-fusion-3-upgrade-or-parallels-desktop-5-mac-retail/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>TextMate Palm Pre Development Bundle 0.2</title>
		<link>http://www.devilx.net/2009/11/11/textmate-palm-pre-development-bundle-0-2/</link>
		<comments>http://www.devilx.net/2009/11/11/textmate-palm-pre-development-bundle-0-2/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 20:55:58 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Life itself]]></category>
		<category><![CDATA[Linux and stuff ...]]></category>
		<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Bundle]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[Cool]]></category>
		<category><![CDATA[Debug]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Emulator]]></category>
		<category><![CDATA[GPS]]></category>
		<category><![CDATA[New]]></category>
		<category><![CDATA[Palm]]></category>
		<category><![CDATA[Pre]]></category>
		<category><![CDATA[Project]]></category>
		<category><![CDATA[Release]]></category>
		<category><![CDATA[SMS]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[SSH]]></category>
		<category><![CDATA[TextMate]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1070</guid>
		<description><![CDATA[Yes, after not even four hours I&#8217;ve already finished building the 0.2-release of my Palm Pre Development Bundle for TextMate. In case you&#8217;re wondering what weird stuff I&#8217;m talking about, please read my previous post first. However, this second release includes a lot more features than it had before, plus I&#8217;ve made use of the [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1072" class="wp-caption alignleft" style="width: 160px"><a href="http://www.devilx.net/wp-content/uploads/2009/11/palmprebundle-0.2.png"  class="fancybox"><img class="size-thumbnail wp-image-1072" title="Palm Pre Development Bundle 0.2" src="http://www.devilx.net/wp-content/uploads/2009/11/palmprebundle-0.2-150x150.png" alt="Palm Pre Development Bundle 0.2" width="150" height="150" /></a><p class="wp-caption-text">Palm Pre Development Bundle 0.2</p></div>
<p>Yes, after not even four hours I&#8217;ve already finished building the 0.2-release of my Palm Pre Development Bundle for TextMate. In case you&#8217;re wondering what weird stuff I&#8217;m talking about, <a title="Palm Pre Development Bundle for TextMate" href="http://www.devilx.net/2009/11/11/palm-pre-development-bundle-for-textmate/" target="_self">please read my previous post first</a>.</p>
<p>However, this second release includes a lot more features than it had before, plus I&#8217;ve made use of the CocoaDialog now. Let me describe the new features from the top to the bottom of the screenshot on the left site.</p>
<p>First of all, there&#8217;s &#8220;Generate New Project&#8221;. This lets you execute a palm-generate with all important attributes and opens the created project afterwards using the &#8220;mate&#8221; terminal-command, which needs to be available for this to work. All you have to do then is simply to save the TextMate project right into your generated project-directory.</p>
<p>Next, we still have &#8220;Generate New Scene&#8221;. I&#8217;ve enhanced the feature now, so that you&#8217;ll get a cocoa dialog asking for the scene&#8217;s name. Beware: The generation usually works as it should, the only problem is the TextMate project-drawer, which doesn&#8217;t seem to refresh by itself. A workaround: Cmd+H to hide TextMate and then click on its Dock-icon to make it appear again. Then all newly generated files should be visible in its drawer.</p>
<p>The next three features work just as before, no enhancements at all. On the fourth, the &#8220;Launch Project in Debugging-Mode&#8221; feature, I&#8217;ve implemented a palm-launch with debugging options, that can be run on an existing, packaged and installed project.</p>
<p>Next, there are ways to close and remove installed Projects. &#8220;Close running project&#8221; of course only works, when the App is actually running and &#8220;Remove installed Project&#8221; removes the App from the device. As device for all those commands the first device found by the Palm toolset will be taken &#8211; so if you would like to use the Emulator, better disconnect your real device and vice versa.</p>
<p>I&#8217;ve also built-in two features that let you simulate test calls and SMS on your Emulator, if you changed from password authentication to SSH public key authentication. You can do this either manually or try to use the feature at the menu&#8217;s bottom named &#8220;Auto-install SSH-Pubkey on Emulator&#8221;. Depending on your SSH-key-setup it works out or&#8230; not.</p>
<p>The other seven features allow you to simulate GPS drives on the Emulator &#8211; again only if you&#8217;ve set-up SSH-Pubkey authentication.</p>
<p>I hope you enjoy this release of the Palm Pre Development Bundle for TextMate! :-)</p>
<p><strong><span style="text-decoration: line-through;">Download: </span><a href="http://www.devilx.net/wp-content/uploads/2009/11/Palm-Pre-Bundle-0.2.zip"><span style="text-decoration: line-through;">Palm-Pre-Bundle-0.2</span></a></strong></p>
<p><strong>UPDATE:</strong> There&#8217;s a newer version available! <a title="Palm webOS (formerly Palm Pre) Development Bundle for TextMate 0.3" href="http://www.devilx.net/2009/11/13/palm-webos-formerly-palm-pre-development-bundle-for-textmate-0-3/">Get it here</a>. Or use <a title="GitHub" href="http://github.com/devilx/palm-webos-development-tmbundle">GitHub</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/11/textmate-palm-pre-development-bundle-0-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Palm Pre Development Bundle for TextMate</title>
		<link>http://www.devilx.net/2009/11/11/palm-pre-development-bundle-for-textmate/</link>
		<comments>http://www.devilx.net/2009/11/11/palm-pre-development-bundle-for-textmate/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 17:05:36 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Life itself]]></category>
		<category><![CDATA[Linux and stuff ...]]></category>
		<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Bundle]]></category>
		<category><![CDATA[Cool]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[New]]></category>
		<category><![CDATA[Palm]]></category>
		<category><![CDATA[Pre]]></category>
		<category><![CDATA[Project]]></category>
		<category><![CDATA[SDK]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[TextMate]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1065</guid>
		<description><![CDATA[Today I&#8217;ve created a tiny little bundle for the best editor available™ named TextMate which adds Palm Pre development features to it. The bundle contains of four commands which let you generate new scenes, package your project, install and launch it on the Pre Emulator. Of course, you need to have Palm&#8217;s SDK installed for [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/TextMate.png"  class="fancybox"><img class="alignleft size-full wp-image-992" title="TextMate" src="http://www.devilx.net/wp-content/uploads/2009/09/TextMate.png" alt="TextMate" width="64" height="64" /></a>Today I&#8217;ve created a tiny little bundle for the best editor available™ named <a title="TextMate - The Missing Editor" href="http://macromates.com/">TextMate</a> which adds Palm Pre development features to it. The bundle contains of four commands which let you generate new scenes, package your project, install and launch it on the Pre Emulator. Of course, you need to have Palm&#8217;s SDK installed for it to work.</p>
<p>The scene generation works like this: You implement your <em>this.controller.pushScene(&#8220;Main&#8221;);</em>-statement, select the scene&#8217;s name (Main, without the quotes!) and select the scene-generation command from the bundle&#8217;s menu. The command will immediately generate you a new scene named just the way you chose to name it. :-)</p>
<p>The other three commands can be ran by pressing the keys Fn+Ctrl+F5/F6/F7. Attention: The bundle only works with TextMate Projects! Generate your Palm Pre project like you always do, by using the following command:</p>
<blockquote><p>palm-generate -p &#8220;{ title:&#8217;ProjectName&#8217;, id:com.my.ProjectName, version:&#8217;1.0.0&#8242; }&#8221; ProjectName</p></blockquote>
<p>Then, create a new TextMate Project and drag&amp;drop the folder palm-generate created for you (&#8220;ProjectName&#8221;) into the Project&#8217;s drawer. Save the project <strong>within</strong> your Project-directory (&#8220;ProjectName&#8221;) and then run the commands.</p>
<p>This is the very first version of this bundle and I&#8217;ll keep constantly improving it with other features that help me and hopefully others on the development of Palm Pre Web-Apps.</p>
<p>Enjoy!</p>
<p><strong><span style="text-decoration: line-through;">Download: </span><span style="text-decoration: line-through;"><a href="http://www.devilx.net/wp-content/uploads/2009/11/PalmPre-Bundle-0.1.zip">PalmPre-Bundle-0.1</a></span></strong></p>
<p><strong>UPDATE:</strong> There&#8217;s a newer version available now! <a title="TextMate Palm Pre Development Bundle 0.2" href="http://www.devilx.net/2009/11/11/textmate-palm-pre-development-bundle-0-2/" target="_self">Get it here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/11/palm-pre-development-bundle-for-textmate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting Jumsoft&#8217;s Money working with my ING-DiBa CSV exports</title>
		<link>http://www.devilx.net/2009/11/10/getting-jumsofts-money-working-with-my-ing-diba-csv-exports/</link>
		<comments>http://www.devilx.net/2009/11/10/getting-jumsofts-money-working-with-my-ing-diba-csv-exports/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 16:49:37 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Life itself]]></category>
		<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Account]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Bank]]></category>
		<category><![CDATA[Cool]]></category>
		<category><![CDATA[CSV]]></category>
		<category><![CDATA[Help]]></category>
		<category><![CDATA[ING-DiBa]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Money]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1060</guid>
		<description><![CDATA[On the last monday I&#8217;ve just seen a very attractive offer for Jumsoft&#8217;s Money on the MUPromo newsletter and as my stomach was bigger than my eyes, I immediately bought it. I&#8217;ve tested out Money back in 2006 and loved it then ago and now, that it also has an iPhone client, it would have [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/money.png"  class="fancybox"><img class="alignleft size-full wp-image-1063" title="Money" src="http://www.devilx.net/wp-content/uploads/2009/11/money.png" alt="Money" width="128" height="128" /></a>On the last monday I&#8217;ve just seen a very attractive offer for <a title="Jumsoft | Money" href="http://www.jumsoft.com/money/">Jumsoft&#8217;s Money</a> on the MUPromo newsletter and as my stomach was bigger than my eyes, I immediately bought it. I&#8217;ve tested out Money back in 2006 and loved it then ago and now, that it also has an iPhone client, it would have been just perfectly for my needs. I already had a finance management software for my Macs named Squirrel, which also had an iPhone client. I bought it when it has just been released, somewhen in 2008, at a special &#8220;early-bird&#8221; price &#8211; unfortunately, I didn&#8217;t experience much enhancements for the software in the past few months. I know, to never touch a running system or replace a software that does just what it should, but I was kinda missing some features I&#8217;ve seen in Money meanwhile.</p>
<p>However, after I bought Money, I exported my whole transaction info from my ING-DiBa account as CSV (since they do not provide me anything else) and tried to import it into Money &#8211; and it failed. I was using the latest version (3.4.4 v1938) and had quite a few problems with the CSV import. First of all, the columns haven&#8217;t been recognized automatically. Also, I didn&#8217;t really knew how to import the transaction-value, since I only had one column containing a positive (income) or a negative (outgoing) number, where Money expected &#8220;Withdrawal&#8221; and &#8220;Deposit&#8221;. Also, Money seemed to have problems with the punctuation of the numbers, what cause 1000€ to become 100€. And in general, the software didn&#8217;t work well with the CSV my bank provided me. I had to manually cut out the first few lines (which were just some additional information but not party of the transactions) and stuff line that. I was wondering, why this is so, since Squirrel automatically recognized the CSV and imported it just perfectly into my virtual account.</p>
<p>I wrote an e-mail to Jumsoft and explained the problems I have with my freshly purchased Money and of course asked for help. After some more mailing, I got a patched version of Money one day later. I tried it out and: Bam! It worked! The CSV imports work just as they should now, even if there&#8217;s still no automatic column recognition. Still, I&#8217;m very happy that Jumsoft helped my out that fast and in such an uncomplicated way &#8211; I&#8217;m not used to this from Apple-related companies anymore.</p>
<p>After I had all my data imported into Money and got everything categorized, synced the info up to my iPhone, what also worked out as smooth as I&#8217;d expect it.</p>
<p><del datetime="2009-11-10T12:49:37+00:00">The one thing I did not check yet are the possibilities to sync Money over two different Macs. I&#8217;m sure it&#8217;s possible by using the <a href="http://www.dropbox.com/referrals/NTIxODYyMjk5">Dropbox</a>-way, although I would not like to upload such sensitive information to my Dropbox. Maybe it&#8217;s possible to sync via W-LAN, dunno.</del></p>
<p>It seems to be possible to sync different Macs via MobileMe! Hurray! I&#8217;ll test it out and give some feedback as soon as possible. :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/10/getting-jumsofts-money-working-with-my-ing-diba-csv-exports/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Amsterdam 2009</title>
		<link>http://www.devilx.net/2009/11/08/amsterdam-2009/</link>
		<comments>http://www.devilx.net/2009/11/08/amsterdam-2009/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 19:20:09 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Art & Design]]></category>
		<category><![CDATA[Life itself]]></category>
		<category><![CDATA[Lifestyle]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[Nightlife]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Amsterdam]]></category>
		<category><![CDATA[Cool]]></category>
		<category><![CDATA[Lightroom]]></category>
		<category><![CDATA[Netherlands]]></category>
		<category><![CDATA[Photography]]></category>
		<category><![CDATA[Travel]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1037</guid>
		<description><![CDATA[Just a few pictures of my journey to Amsterdam. More (raw) pictures can be found in my Gallery. :-) Enjoy viewing!]]></description>
			<content:encoded><![CDATA[<p>Just a few pictures of my journey to Amsterdam. More (raw) pictures can be found in my Gallery. :-)</p>
<p>Enjoy viewing!</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1136.jpg"  class="fancybox"><img class="size-thumbnail wp-image-1038 alignleft" title="IMG_1136" src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1136-150x150.jpg" alt="IMG_1136" width="150" height="150" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1167.jpg"  class="fancybox"><img class="size-thumbnail wp-image-1039 alignleft" title="IMG_1167" src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1167-150x150.jpg" alt="IMG_1167" width="150" height="150" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1176.jpg"  class="fancybox"><img class="size-thumbnail wp-image-1040 alignleft" title="IMG_1176" src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1176-150x150.jpg" alt="IMG_1176" width="150" height="150" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1325.jpg"  class="fancybox"><img class="size-thumbnail wp-image-1041 alignleft" title="IMG_1325" src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1325-150x150.jpg" alt="IMG_1325" width="150" height="150" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1337.jpg"  class="fancybox"><img class="size-thumbnail wp-image-1042 alignleft" title="IMG_1337" src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1337-150x150.jpg" alt="IMG_1337" width="150" height="150" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1344.jpg"  class="fancybox"><img class="size-thumbnail wp-image-1043 alignleft" title="IMG_1344" src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1344-150x150.jpg" alt="IMG_1344" width="150" height="150" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1366.jpg"  class="fancybox"><img class="size-thumbnail wp-image-1044 alignleft" title="IMG_1366" src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1366-150x150.jpg" alt="IMG_1366" width="150" height="150" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1129.jpg"  class="fancybox"><img src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1129-150x150.jpg" alt="IMG_1129" title="IMG_1129" width="150" height="150" class="alignleft size-thumbnail wp-image-1050" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1142.jpg"  class="fancybox"><img src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1142-150x150.jpg" alt="IMG_1142" title="IMG_1142" width="150" height="150" class="alignleft size-thumbnail wp-image-1051" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1158.jpg"  class="fancybox"><img src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1158-150x150.jpg" alt="IMG_1158" title="IMG_1158" width="150" height="150" class="alignleft size-thumbnail wp-image-1052" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1168.jpg"  class="fancybox"><img src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1168-150x150.jpg" alt="IMG_1168" title="IMG_1168" width="150" height="150" class="alignleft size-thumbnail wp-image-1053" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1171.jpg"  class="fancybox"><img src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1171-150x150.jpg" alt="IMG_1171" title="IMG_1171" width="150" height="150" class="alignleft size-thumbnail wp-image-1054" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1189.jpg"  class="fancybox"><img src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1189-150x150.jpg" alt="IMG_1189" title="IMG_1189" width="150" height="150" class="alignleft size-thumbnail wp-image-1055" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1226.jpg"  class="fancybox"><img src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1226-150x150.jpg" alt="IMG_1226" title="IMG_1226" width="150" height="150" class="alignleft size-thumbnail wp-image-1056" /></a></p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1243.jpg"  class="fancybox"><img src="http://www.devilx.net/wp-content/uploads/2009/11/IMG_1243-150x150.jpg" alt="IMG_1243" title="IMG_1243" width="150" height="150" class="alignleft size-thumbnail wp-image-1057" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/08/amsterdam-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MediaWiki and Lucene</title>
		<link>http://www.devilx.net/2009/11/02/mediawiki-and-lucene/</link>
		<comments>http://www.devilx.net/2009/11/02/mediawiki-and-lucene/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 12:14:31 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Linux and stuff ...]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Class]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[JAR]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Lucene]]></category>
		<category><![CDATA[MediaWiki]]></category>
		<category><![CDATA[Search]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1035</guid>
		<description><![CDATA[Lately, I had to enhance a MediaWiki-installation for the search to find some special parameters within a code block. It&#8217;s generally known that MediaWiki&#8217;s built-in searcher is really just an example of how searching could work, but nothing you&#8217;d really like to use on heavy systems. However, Lucene is a pretty good replacement for MediaWiki&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Lately, I had to enhance a MediaWiki-installation for the search to find some special parameters within a code block. It&#8217;s generally known that MediaWiki&#8217;s built-in searcher is really just an example of how searching could work, but nothing you&#8217;d really like to use on heavy systems. However, Lucene is a pretty good replacement for MediaWiki&#8217;s built-in search, unfortunately the current EzMwLucene version isn&#8217;t that good integrated into the latest (Debian) Linux version I&#8217;ve been using. The installation on the <a title="Extension:EzMwLucene - MediaWiki" href="http://www.mediawiki.org/wiki/Extension:EzMwLucene">EzMwLucene Extension</a> looks pretty straight-forward, but at least on my installation the lucene/server didn&#8217;t really wanted to come up using the scripts that were shipped within its package. After debugging its startup procedure and taking a look into its classes and JARs, I came up with the following command to run the Lucene-server on a Debian GNU/Linux:</p>
<blockquote><p>export EZMWLUCENE_HOME=/opt/lucene/server<br />
/usr/lib/jvm/java-6-sun-1.6.0.12/jre/bin/java -Dezmwlucene.home=$EZMWLUCENE_HOME -Djava.io.tmpdir=$TMP -cp $EZMWLUCENE_HOME/ezmwlucene.jar:$EZMWLUCENE_HOME/lib/jetty-6.1.14.jar:$EZMWLUCENE_HOME/lib/jetty-util-6.1.14.jar:$EZMWLUCENE_HOME/lib/servlet-api-2.5-6.1.14.jar:$EZMWLUCENE_HOME/lib/commons-codec-1.3.jar:$EZMWLUCENE_HOME/lib/commons-httpclient-3.1.jar:$EZMWLUCENE_HOME/lib/commons-logging.jar:$EZMWLUCENE_HOME/lib/FontBox-0.1.0-dev.jar:$EZMWLUCENE_HOME/lib/lucene-core-2.4.0.jar:$EZMWLUCENE_HOME/lib/lucene-highlighter-2.4.0.jar:$EZMWLUCENE_HOME/lib/PDFBox-0.7.3.jar:$EZMWLUCENE_HOME/lib/poi-3.5-beta3-20080926.jar:$EZMWLUCENE_HOME/lib/poi-scratchpad-3.5-beta3-20080926.jar net.sourceforge.ezmwlucene.service.EzMwLuceneService</p></blockquote>
<p>Those two lines can be packed-up within a shell-script, which then gets ran by a proper /etc/init.d-script. For me, it now just works perfectly.</p>
<p>Enjoy! :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/02/mediawiki-and-lucene/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Amazon EC2: How to Setup an Instance and Bundle it</title>
		<link>http://www.devilx.net/2009/11/01/amazon-ec2-how-to-setup-an-instance-and-bundle-it/</link>
		<comments>http://www.devilx.net/2009/11/01/amazon-ec2-how-to-setup-an-instance-and-bundle-it/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 16:25:46 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Linux and stuff ...]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[AMI]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[Bucket]]></category>
		<category><![CDATA[Bundle]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[EBS]]></category>
		<category><![CDATA[EC2]]></category>
		<category><![CDATA[Elastic]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[HTTPS]]></category>
		<category><![CDATA[Instance]]></category>
		<category><![CDATA[IP]]></category>
		<category><![CDATA[LAMP]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[S3]]></category>
		<category><![CDATA[SSH]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1033</guid>
		<description><![CDATA[I know, that there are several documentations concerning Amazon&#8217;s Elastic Cloud Computing, though I&#8217;d like to describe some very first steps for using their infrastructure to build (Linux-) instances that fulfill your needs. Let&#8217;s not beat around the bush and start-over by setting up the very first instance. The first thing needed is a client [...]]]></description>
			<content:encoded><![CDATA[<p>I know, that there are several documentations concerning Amazon&#8217;s Elastic Cloud Computing, though I&#8217;d like to describe some very first steps for using their infrastructure to build (Linux-) instances that fulfill your needs. Let&#8217;s not beat around the bush and start-over by setting up the very first instance.</p>
<p>The first thing needed is a client computer running any kind of the supported OSs by the Amazon API tools and of course the tools themselves. After you&#8217;ve installed those and configured all credentials the right way, we can create a new pair of SSH keys for our new project. Due to the location I&#8217;m currently in, I&#8217;ve chosen to use Amazon Instances in the western EU. Execute the following line on your command-line:</p>
<blockquote><p>ec2-add-keypair &#8211;region eu-west-1 test-keypair</p></blockquote>
<p>The result should look something like this:</p>
<blockquote><p>[Deprecated] Xalan: org.apache.xml.res.XMLErrorResources_en_US<br />
KEYPAIR	test-keypair	e1:1a:d1:a1:a1:1c:10:a1:b1:d1:cb:11:11:1a:11:11:f1:11:ae:fe<br />
&#8212;&#8211;BEGIN RSA PRIVATE KEY&#8212;&#8211;<br />
XXX<br />
&#8212;&#8211;END RSA PRIVATE KEY&#8212;&#8211;</p></blockquote>
<p>You can now copy the lines from <i>BEGIN&#8230;</i> until <i>END&#8230;</i> (including those two) into a file which you&#8217;ll be using as SSH-key for connecting to your instance. Don&#8217;t forget to <i>chmod 600</i> it!</p>
<p>Next, let&#8217;s see what base-images for creating our instance we could you &#8211; first, provided by Amazon themselves:</p>
<blockquote><p>
ec2-describe-images &#8211;region eu-west-1 -o &#8216;amazon&#8217;
</p></blockquote>
<p>The list is contained of several different OSs and versions, although in our current project we can&#8217;t make use of any of those. Therefor, we&#8217;re now searching for a perfectly fitting, really good operating system:</p>
<blockquote><p>
ec2-describe-images &#8211;region eu-west-1 -a | grep -i debian
</p></blockquote>
<p>And yet, we receive another list with several different versions of the Debian Linux distribution. After we&#8217;ve picked the one we&#8217;d like to run, we should check what instances are currently up and running:</p>
<blockquote><p>
ec2-describe-instances &#8211;region eu-west-1
</p></blockquote>
<p>If you&#8217;re using Amazon&#8217;s EC2 for the first time, there shouldn&#8217;t be any items listed. We can now start our very first instance, by copying the instance&#8217;s identifier (in the second column, a string starting with ami-<id>) and pasting it into our command:</p>
<blockquote><p>
ec2-run-instances &#8211;region eu-west-1 -k test-keypair -g &#8216;http/s&#8217; -g &#8216;ssh&#8217; ami-b8446fcc
</p></blockquote>
<p>In this command, we tell Amazon to start up a new instance that&#8217;s built on top of the ami-b8446fcc-image, using the key-pair we just created before and using some custom built firewall-rules named &#8220;http/s&#8221; (which allows us to connect to port 80 and 443) and &#8220;ssh&#8221; (port 22).</p>
<p>We need to wait a few seconds, until the instance comes up. We can use the describe-instances command from above to check the instance&#8217;s status:</p>
<blockquote><p>
ec2-describe-instances &#8211;region eu-west-1
</p></blockquote>
<p>As soon as it&#8217;s up and running, the &#8220;pending&#8221; column should have been replaced by a dynamically allocated hostname and the status &#8220;running&#8221;. Keep in mind, that this hostname/ip is dynamically allocated! If you want a fixed IP, you need to allocate and assign an Elastic IP &#8211; I&#8217;ll show you later how to do so.<br />
If our firewall rules worked out, we can now connect using SSH:</p>
<blockquote><p>
ssh -i ~/Library/EC2/id_rsa-test-keypair root@ec2-11-111-11-111.eu-west-1.compute.amazonaws.com
</p></blockquote>
<p>By default, Amazon sets up a Small Instance, that provides around 10 GB of hard drive, an Dual-Core AMD Opteron 2218 with 2600 MHz and around 1.7 GB of RAM. Small instances, in comparison to the bigger ones, also still provide a real swap-partition which is limited to 895 MB. Here, you could run into problems when installing some Oracle for example, since the DB would like to have 1 GB or more Swap-space. If 895 MB should not be enough, the only way to enlarge it seems to be to use a file within your file-system for that. Either, by placing it somewhere into / or by using /mnt for that. /mnt is a special mount in Amazon instances which provides you 147 GB of additional <i>volatile</i> storage. Amazon doesn&#8217;t guarantee in any way the storage to be stable/solid or even backed up &#8211; and usually /mnt is only used for bundling your instance. You might now think <i>&#8220;so, where could I place my data, if / is only providing me 10 GB of space and /mnt should not be used for storing sensitive data?&#8221;</i> &#8211; well, there&#8217;s a third possibility named Elastic Block Storage. An EBS is being displayed to your instance as regular block-device (/dev/sdb, &#8230;) that&#8217;s format- and mountable. There, sensitive data could be stored, by bind-mounting the directories you&#8217;d like to have your data in. I&#8217;m not going to explain how this works, else I&#8217;ll never finish writing this brief documentation.</p>
<p>However, since we&#8217;re connected to the instance now, we can set it up the way we want it, with whatever software we need on it. I&#8217;ve assumed, that most people would set it up as regular LAMP-instance, therefor I&#8217;ve also added the firewall-rule for HTTP/HTTPS. After we finished installing the software we need, there&#8217;s one more package that should be plugged into the system: The Amazon AMI Tools. Simply wget them from http://s3.amazonaws.com/ec2-downloads/ec2-ami-tools.zip and unzip the package. Those tools make use of Ruby, so ensure having it installed on your instance. Also, you need to have the private key (pk-<id>.pem) and the certificate (cert-<id>.pem) you created the instance with somewhere within your instance&#8217;s filesystem, for later use.</p>
<p>Before we bundle up our system now, let&#8217;s come back to the topic we had before: The hostname/IP. Amazon allocates some dynamic address, unless you tell them to give you a fixed (called Elastic) IP. You can do that by simply executing:</p>
<blockquote><p>
ec2-allocate-address &#8211;region eu-west-1
</p></blockquote>
<p>&#8230; within your client&#8217;s command-line (where the Amazon API Tools have been installed &#8211; not on the instance!). As result you&#8217;ll get some IP address that has now being allocated by Amazon for you. The IP isn&#8217;t bound to any instance yet &#8211; it&#8217;s just allocated for you to be able to use it. ATTENTION: You pay for Elastic IPs as long as you do not assign them to an instance. Yes, that&#8217;s right. Amazon charges you for every allocated but unused IP hourly. By that, they want to prevent people &#8220;collecting&#8221; addresses, I guess. To assign the address you just received to your instance, simply run:</p>
<blockquote><p>
ec2-associate-address &#8211;region eu-west-1 -i i-11e11b1e 79.125.11.11
</p></blockquote>
<p>The i-<id> is your actual instance&#8217;s ID, where the last, dot-separated number is the IP you&#8217;ve received. And yes, those are fake numbers &#8211; so don&#8217;t even try. ;]</p>
<p>Now it could take a bit for Amazon to reconfigure the instance, but as soon as it finished, you should be able to re-connect to the instance using the IP you just assigned to it.</p>
<p>As last task for today, let&#8217;s bundle up the image the way we have it now. Bundling an image allows you more than just eating up your credit card&#8217;s limit by dumping your S3 buckets. On the one hand, with bundles you can recover machines that crashed or lost data within a few blinks and on the other, you can created new instances out of a bundle (talking about &#8220;scalability&#8221;).</p>
<p>For bundling, we use the AMI tools we installed. First of all, let&#8217;s create a directory for the bundle:</p>
<blockquote><p>
mkdir /mnt/myimage
</p></blockquote>
<p>After that, run the bundle-vol-tool:</p>
<blockquote><p>
ec2-bundle-vol -k pk-<id>.pem -c cert-<id>.pem -s <bundle size in MB, e.g. 5000> -u <user-id, without dashes> -d /mnt/myimage/
</p></blockquote>
<p>This command takes several parameters for the private key, the certificate, the size of the resulting bundle in MB and your User-ID (without dashes). The User-ID can be found within your Account Information on Amazon&#8217;s EC2 site. The command should ask you, what architecture you&#8217;d like to bundle the system for &#8211; i386 should work out perfectly for what we&#8217;re doing. The following procedure could take some time, since the tool collections every peace of the system and builds a bundle into the directory we specified. As soon as the tool finished, we can upload our bundle to our S3-bucket:</p>
<blockquote><p>
ec2-upload-bundle &#8211;location EU -b <some unique bucket name>  -m /mnt/myimage/image.manifest.xml -a <access-key> -s <secret-key>
</p></blockquote>
<p>Again, we need to specify some credentials (our access-key and the secret-key) for the upload to work. Also, we need to pick a globally unique bucket-name for uploading the bundle, what shouldn&#8217;t be that hard as long as you don&#8217;t try stuff like &#8220;linux&#8221; or other common words. The bundle will then be uploaded to your (private) bucket, so you have it for later use.</p>
<p>From within the web-interface you could now simply create new instances out of the uploaded bundle, without even knowing how the actual system was set up or having the Amazon API tools installed on your client.</p>
<p>Cool stuff, enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/11/01/amazon-ec2-how-to-setup-an-instance-and-bundle-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sick of the Furniture Store Daylight Robbery</title>
		<link>http://www.devilx.net/2009/10/25/sick-of-the-furniture-store-daylight-robbery/</link>
		<comments>http://www.devilx.net/2009/10/25/sick-of-the-furniture-store-daylight-robbery/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 16:57:23 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Art & Design]]></category>
		<category><![CDATA[Life itself]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Annoyed]]></category>
		<category><![CDATA[Crap]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Disappointed]]></category>
		<category><![CDATA[Furniture]]></category>
		<category><![CDATA[Ikea]]></category>
		<category><![CDATA[Poor]]></category>
		<category><![CDATA[Pricy]]></category>
		<category><![CDATA[Quality]]></category>
		<category><![CDATA[Table]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1028</guid>
		<description><![CDATA[For the past months now already I&#8217;m searching for a new desktop table, since my actual one is now already eleven years old and getting more and more ramshackly by each day passing. I&#8217;ve been at several furniture stores around me, including (of course) IKEA, Möbel Gamerdinger, Heyne Büromarkt, any some more. Also, I&#8217;ve been [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1029" class="wp-caption alignleft" style="width: 160px"><a href="http://www.devilx.net/wp-content/uploads/2009/10/facepalm.jpg"  class="fancybox"><img class="size-thumbnail wp-image-1029" title="facepalm" src="http://www.devilx.net/wp-content/uploads/2009/10/facepalm-150x150.jpg" alt="Facepalm" width="150" height="150" /></a><p class="wp-caption-text">Facepalm</p></div>
<p>For the past months now already I&#8217;m searching for a new desktop table, since my actual one is now already eleven years old and getting more and more ramshackly by each day passing. I&#8217;ve been at several furniture stores around me, including (of course) <a title="IKEA" href="http://www.ikea.de/">IKEA</a>, <a title="Möbel Gamerdinger" href="http://www.moebel-gamerdinger.de/">Möbel Gamerdinger</a>, <a title="Heyne Büromarkt" href="http://www.heyne-buero.de/">Heyne Büromarkt</a>, any some more. Also, I&#8217;ve been searching for tables on the internet at several different online-stores and even found quite a few tables that really fit my needs. The only thing that didn&#8217;t fit on <strong>any</strong> of the desks I liked was their pricing &#8211; and I really can&#8217;t understand how this could be.</p>
<p>What&#8217;s a desk typically contained of? Well, mostly, one big plate &#8211; in my case some rectangle one with for example 180cm x 80cm and legs, usually four in number. And actually this is essentially everything I want and need. If you would now stumble through the different (online-)stores and search for exactly such a table, you would probably be shockingly disturbed by the prices furniture stores charge for one piece of wood with four legs. Let&#8217;s take IKEA as example: They charge 179,00€ for a <a title="GALANT" href="http://www.ikea.com/de/de/catalog/products/S59831699">Galant Desktop-Table</a> (160cm x 80cm), which is essentially only four table-legs, mounted beneath a frame which holds a plate made of pressboard &#8211; sold as a mass-production article, where the costs for fabrication probably are <strong>way</strong> under a quarter of the price they charge. Besides, at least the demonstration desks within the IKEA store were so shaky, because of their cheap built-up, that I wouldn&#8217;t want to have my iMac placed onto one of those, until I&#8217;d like to buy new hard drives every few weeks. And at last but not least: The way the table looks can hardly be called &#8220;design&#8221;.</p>
<p>Next store, same issue. Poorly designed desks made of cheap materials, ugly fabrication but prices within the range from two-hundred to five-hundred or even more Euros. And all I was thinking was &#8220;What&#8217;s the point?!&#8221; &#8211; there is no relation between the quality of those mass-produced tables and their prices. Don&#8217;t get me wrong, of course a lot of costs for crafting, producing, transportation and more come together &#8211; and I might not even bitch that loud if at least the materials they would use would have been real wood plates and solid steel-frames and -legs &#8211; but especially in those days I can&#8217;t see any relation between the price and the quality of those products. In my opinion, furniture stores achieved a status where they can just pull out the customer&#8217;s money off their pockets with nobody complaining about it. When some hardware producer prices its products at extremely exaggerated values you hear blogs and news-sites complaining about it. Why don&#8217;t they do so with furnitures? Are furniture-stores/-producers now already on the same level with car manufacturers and the music industry? For me, it seems so. :-(</p>
<p><span style="text-decoration: line-through;">However, since I&#8217;m a person which works at his desk a very large amount of time and wants to feel comfortable while doing so, I&#8217;ve decided to not buy any of those mass-production-crap-desks for myself. Instead, I&#8217;m looking forward at desktops like </span><a title="iDesk" href="http://idesk.sublevel.us/"><span style="text-decoration: line-through;">Sublevel&#8217;s iDesk</span></a><span style="text-decoration: line-through;"> or </span><a title="MILK" href="http://www.milk.dk/"><span style="text-decoration: line-through;">Holmris&#8217; Milk</span></a><span style="text-decoration: line-through;">. Both of those tables are made of qualitatively high materials to assure stability and both look just gorgeous. Of course, those desktops are priced at a totally different level, although there&#8217;s one difference that should be kept clearly in mind: Those are no mass-products. Those desktops are custom design work, containing innovative and practical features.</span></p>
<p><span style="text-decoration: line-through;">I&#8217;ve already received the price listings for the different version of Milk and will yet keep looking around for a bit more, until I&#8217;ve found the table I really really really want.</span></p>
<p><strong>Update:</strong> Yesterday I finally got a desktop table, although it was more like a spontaneous buy. I purchased the Galant table I was talking about, with the A-legs and, instead of a crappy wooden-plate, a gorgeous black glass one. For the whole table I paid around two-hundred bucks in total, what now really is a good price. Why I&#8217;m thinking so? Well, instead of the cheap and ugly want-to-be-real-wood plate I got a piece of glass which usually costs nearly two-hundred bucks itself, plus a half-way-solid frame with chrome legs that fit together pretty good. I&#8217;ve mounted the desk and yet, as I&#8217;ve expected, I&#8217;m experiencing &#8220;shocks&#8221; thru vibrations of the objects lying on the table (lamp, iMac, etc), but I&#8217;ve already found a way to screw the table&#8217;s frame to the wall behind, in an unobvious and clean way, to reduce the vibrations on the table itself. So, as I&#8217;ve said before, the table&#8217;s frame was not worth one penny, unfortunately there was no other way for me to get the glass-plate lifted to 70cm (or more) &#8211; besides building myself an own frame.</p>
<p><span style="text-decoration: line-through;">Also</span> <em>Still</em>, I hope the furniture stores/industry to suffer from the depression just like the automobile industry has (and will continue to), so maybe the thinking there will change in a way to provide the people prices that fit the actual product&#8217;s quality/value someday.</p>
<p><span style="text-decoration: line-through;">An annoyed and disappointed goodbye for now.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/10/25/sick-of-the-furniture-store-daylight-robbery/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>iPhone Safari and XmlHttpRequest Authorization-Headers</title>
		<link>http://www.devilx.net/2009/10/23/iphone-safari-and-xmlhttprequest-authorization-headers/</link>
		<comments>http://www.devilx.net/2009/10/23/iphone-safari-and-xmlhttprequest-authorization-headers/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 19:58:55 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Life itself]]></category>
		<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Epic Fail]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Safari]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Support]]></category>
		<category><![CDATA[XmlHttpRequest]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1026</guid>
		<description><![CDATA[Lately I came across an odd phenomenon regarding the iPhone OS (3.1) Safari and web-sites that make use of JavaScript to set XmlHttpRequest-Headers, like for ETags or for authorization. I&#8217;ve analyzed the (mobile) Safari&#8217;s behavior, tried to find possible mistakes within my JavaScript/jQuery code, searched the internet and even called Apple&#8217;s Technical Support (Germany) for [...]]]></description>
			<content:encoded><![CDATA[<p>Lately I came across an odd phenomenon regarding the iPhone OS (3.1) Safari and web-sites that make use of JavaScript to set XmlHttpRequest-Headers, like for ETags or for authorization. I&#8217;ve analyzed the (mobile) Safari&#8217;s behavior, tried to find possible mistakes within my JavaScript/jQuery code, searched the internet and even called Apple&#8217;s Technical Support (Germany) for more information on that problem. Let me first of all begin by describing the actual occurrence:</p>
<p>I&#8217;ve been working on a web-site that used the jQuery framework to render content on the client side and get information from its back-end, via XmlHttpRequests. The whole built-up worked just fine of every modern, popular browser available in the market &#8211; like the Firefox, Internet Explorer or Safari (on the Mac platform). Now, I had to test the site and make it workable on the iPhone-plattform as well. The site itself uses OAuth as authentication method and provides the information within a HTTP-header named &#8220;Authorization&#8221;. The theory is pretty plain: The back-end receives a request, checks for this header and responses accordingly.</p>
<p>However, iPhone&#8217;s Safari didn&#8217;t behave like the other browsers did. For whatever reason, the XHR was sent to the back-end, including every header that was set on the JavaScript side &#8211; except the &#8220;Authorization&#8221;-header. First, I though that Safari maybe could not handle the parameters of this header, but when I just renamed the setRequestHeader-argument to &#8220;Auth&#8221;, it worked. It simply just worked.</p>
<p>This happening made me search for other users experiencing this problem, unfortunately there doesn&#8217;t really seem to be many users testing JavaScript-sites on their iPhone &#8211; to be more precise, I did not find one result on Google that describes the problem I&#8217;m experiencing. I though, <em>&#8220;Oh well, why not call Apple&#8217;s Technical Support?&#8221;</em> &#8211; bad mistake. I got connected to a very annoyed and stroppy telephone-support which tried to convince me, that the iPhone&#8217;s Safari yet does not support Java. When I repeated myself by saying <em>&#8220;It&#8217;s about Java</em><strong><em>Script</em></strong><em>&#8220;</em>, he didn&#8217;t really make the impression to understand the difference. I told him what the actual scenario was and all I got as answer was <em>&#8220;Fill out the Feedback form on Apple&#8217;s site&#8221;</em>. This made me a bit angry, because I more and more got the feeling of him trying to simply get rid of me. I asked for someone who is more technically involved into the whole iPhone stuff and he answered with <em>&#8220;You&#8217;re already calling the most-advanced technical support &#8211; there&#8217;s no way to go further!&#8221;</em>. At this point total disappointment overcame me and the only thing I thought of saying before I would hang-up the phone was <em>&#8220;FAIL!&#8221;</em> &#8211; luckily I was behaving more polite than the support-guy himself. Eh.</p>
<p>The end of the story is, that I (once again) wrote a report via Apple&#8217;s Feedback form (which from my impression is saving the submitted content to /dev/null) and implemented a workaround for myself by renaming the &#8220;Authorization&#8221;-header to &#8220;Auth&#8221;. Yet again a scenario in which I&#8217;m feeling like talking to a wall of bricks and have no possibility to get any information regarding my problem or maybe even correct this sort of bug. I think, this is the other side of closed-source software.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/10/23/iphone-safari-and-xmlhttprequest-authorization-headers/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>On the Crest of the Google Wave</title>
		<link>http://www.devilx.net/2009/10/13/on-the-crest-of-the-google-wave/</link>
		<comments>http://www.devilx.net/2009/10/13/on-the-crest-of-the-google-wave/#comments</comments>
		<pubDate>Tue, 13 Oct 2009 17:05:50 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Art & Design]]></category>
		<category><![CDATA[Life itself]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[This Site]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Account]]></category>
		<category><![CDATA[Cool]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google Wave]]></category>
		<category><![CDATA[New]]></category>
		<category><![CDATA[Preview]]></category>
		<category><![CDATA[Sexy]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1022</guid>
		<description><![CDATA[I can happily announce (or brag :-P) that I&#8217;ve just received my Google Wave invitation today and already created my account. I&#8217;m really excited of exploring and developing on Google&#8217;s Wave, especially with the ideas I already have in mind. Yet, I just clicked around a bit, due to the lack of free time, but [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1023" class="wp-caption alignright" style="width: 360px"><a href="http://www.devilx.net/wp-content/uploads/2009/10/GoogleWave.png"  class="fancybox"><img class="size-full wp-image-1023 " title="GoogleWave" src="http://www.devilx.net/wp-content/uploads/2009/10/GoogleWave.png" alt="Google Wave Dev Preview" width="350" height="116" /></a><p class="wp-caption-text">Google Wave Dev Preview</p></div>
<p>I can happily announce (or brag :-P) that I&#8217;ve just received my Google Wave invitation today and already created my account. I&#8217;m really excited of exploring and developing on Google&#8217;s Wave, especially with the ideas I already have in mind. Yet, I just clicked around a bit, due to the lack of free time, but as soon as I can I will take a deeper look at the API and try out some stuff I might even publish here. So stay tuned to see read (and maybe see) the latest progress of my <em>Wavealicious</em> ideas/implementations. :-)</p>
<p>Btw, you can contact me on Wave via <em>devilx@wavesandbox.com</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/10/13/on-the-crest-of-the-google-wave/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Put some Things into your Dropbox!</title>
		<link>http://www.devilx.net/2009/10/02/put-some-things-into-your-dropbox/</link>
		<comments>http://www.devilx.net/2009/10/02/put-some-things-into-your-dropbox/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 20:59:17 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Cultured Code]]></category>
		<category><![CDATA[Dropbox]]></category>
		<category><![CDATA[iMac]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iPod]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[MacBook]]></category>
		<category><![CDATA[Things]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1018</guid>
		<description><![CDATA[Thanks to Andi, who donated me a fresh Things for Mac license for my birthday, I can now (as probably many Mac users out there) manage my ToDos within that great App. Unfortunately, Things for Mac doesn&#8217;t provide any possibility to Sync the Mac clients with each other &#8211; the only thing you can do [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.devilx.net/wp-content/uploads/2009/10/Things.png"  class="fancybox"><img class="alignleft size-full wp-image-1019" title="Things" src="http://www.devilx.net/wp-content/uploads/2009/10/Things.png" alt="Things" width="92" height="92" /></a>Thanks to <a title="Widmr" href="http://www.widmr.com">Andi</a>, who donated me a fresh <a title="Things for Mac" href="http://www.culturedcode.com/things/" target="_blank">Things for Mac</a> license for my birthday, I can now (as probably many Mac users out there) manage my ToDos within that great App. Unfortunately, Things for Mac doesn&#8217;t provide any possibility to Sync the Mac clients with each other &#8211; the only thing you can do is Sync it with the iPhone version via WLAN on your iPhone or iPod Touch. It doesn&#8217;t even work to sync the Things for Mac on your iMac with the iPhone and then sync the iPhone with your Things for Mac on your MacBook &#8211; as many of you would also probably want to do.</p>
<p>Well, what else can we do then? Oh wait, haven&#8217;t we just set-up our <a title="Dropbox" href="http://www.dropbox.com/referrals/NTIxODYyMjk5" target="_blank">Dropbox account</a> recently? So why not use it for poor-man&#8217;s-sync? :-)</p>
<p>First of all, move the subfolder of <em>~/Library/Application Support/Cultured Code/</em> named &#8220;Things&#8221; into your Dropbox folder and let it sync up to the cloud. After that, start Things for Mac while pressing the Option (Alt) key and select &#8220;<em>Choose Library&#8230;</em>&#8221; &#8211; and choose the Things directory from within your Dropbox-folder.</p>
<p>Then, install Dropbox on your other Mac and again navigate to the Cultured Code directory named above. Now, you just delete the Things subfolder and yet again you start Things while keeping the Option key pressed &#8211; and select &#8220;<em>Choose Library&#8230;</em>&#8220;. Then, you select the Things directory from within your Dropbox-folder and you&#8217;re done! :-)</p>
<p><strong>CAUTION</strong><strong>:</strong> This solution allows you the synchronization of Things between two (or more) Macs, but not the simultaneous running! Your Things database might break if you try to run it on both Macs at the same time!</p>
<p>This is a pretty good solution until Cultured Code implements something better. :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/10/02/put-some-things-into-your-dropbox/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Some Words about the Apple App Store</title>
		<link>http://www.devilx.net/2009/09/14/some-words-about-the-apple-app-store/</link>
		<comments>http://www.devilx.net/2009/09/14/some-words-about-the-apple-app-store/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 20:58:04 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Life itself]]></category>
		<category><![CDATA[Mac and stuff ...]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[App Store]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[Apps]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Crap]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iPod]]></category>
		<category><![CDATA[iTunes]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Need For Speed]]></category>
		<category><![CDATA[The Sims 3]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=950</guid>
		<description><![CDATA[This is not going to be some other statistic yet, or any professional analysis of Apple&#8217;s App Store. Nor it will be any important or informational content &#8211; let me just share some thoughts. First of all, the App Store is great. From its theory to its practice, everything is implemented just the way it [...]]]></description>
			<content:encoded><![CDATA[<p>This is not going to be some other statistic yet, or any professional analysis of Apple&#8217;s App Store. Nor it will be any important or informational content &#8211; let me just share some thoughts.</p>
<p>First of all, the App Store is great. From its theory to its practice, everything is implemented just the way it has to be. Sure, sometimes it&#8217;s a little slow and not that responsible as one would expect, but altogether the browsing experience is really great. Why? Because it has to be. Nobody likes to spend money somewhere he doesn&#8217;t enjoy browsing for things &#8211; regardless whether we&#8217;re talking about the #real-life or in virtual. It&#8217;s just fun to look through the Apps, find new ones, share them with your friends and of course buy them. And it&#8217;s so easy as well. One click, that&#8217;s all! Isn&#8217;t that just great?</p>
<p>Oh well, yeah, it would be &#8211; if. If Apple would have kept the essential concept of their App Store the way they actually planned and intended it to. I mean, let&#8217;s think back, to the time before the Apple App Store was launched (what&#8217;s only little over a year ago) &#8211; what was the general appearance of existing application stores (of e.g. Nokia or for the Windows Mobile Platform)? Exactly. Ugly, slow, confusing, a lot of useless tra&#8230;ehrrr&#8230; stuff. And then came Apple &#8211; <em>BAM</em>! Brand new App Store for mobile applications. Everything was clean, everything was very well working and simple for the end-user to access. Then ago, the App Store provided a few essential and yet well known applications by third-parties. Great apps, with great functionality that even looked amazingly cool.</p>
<p>But then, after a while, it seems like the whole <em>BAM</em> just <em>BAM-MED</em> even more. And more. And more. Of course, Apple was lucky about this fact &#8211; more Apps for sale, more cut-offs for themselves. Why not? And do you know what&#8217;s the best? Big numbers. <em>What</em>? <strong>Yeah</strong>! Just as I said it. Big numbers. From the moment on, from which Apple started literally raping the potential of the App store within every Keynote they presented people could see all those big numbers. Thousands of of Apps. Millions of downloads. Et cetera.</p>
<p>But did this really improve the Store? I&#8217;m looking around at this very same moment within the App Store and have to say: No. It didn&#8217;t. All it improved was Apple&#8217;s pockets and the big numbers on their Keynote presentations. I stumble through the App Store and see hundreds and hundreds of Apps, one more useless than the other &#8211; Bikini Babes, Gym Babes, Simple To-Do and of course a <strong>huge</strong> amount of games. Yeah, games. I&#8217;m not saying, that games are &#8220;useless&#8221; in that way. Sometimes, when waiting for the Bus or for your Girl getting changed you appreciate those little time-consumptions. But come on? I mean, spending more than $2 for a game that won&#8217;t last any longer than one hour to be played, thanks to Apple&#8217;s <em>gorgeous</em> batteries? Who should play those games? Shall I constantly keep my iPhone attached to the power-cord, so I can play two hours of <em>Need For Speed</em>? Isn&#8217;t the whole game stuff, that Apple&#8217;s trying to sell as &#8220;PSP/NintendoDS Killer&#8221; just plain dumb and totally impracticable? I&#8217;m not saying, that games on mobile phones are no fun in general, but are you re-charging your iPhone every three hours, just to be able to play some games? I mean, I still don&#8217;t understand what market Apple really tries to reach with that. My impression is, that people indeed spend money on games like NFS or Sims 3, but only to be able to show-off at parties or other occasions. I don&#8217;t believe anybody really playing (and by playing I mean the very same behavior you hear from 15-years old, Norwegian guys with a World of Warcraft account!) the games on the iPhone. At least not till their end. Also I believe, that 70% of the people buying games use in iPod Touch instead, in addition to their iPhone.</p>
<p>Eh, however. Back to the topic. So, the Apple App Store started providing more and more sh&#8230; apps, over the past year. Some, useless ones and also some totally useless ones. Of course, in between of all those crap, you&#8217;ll sometimes find a pearl, like for example Shazam, Daylite Touch, Things, LittleSnapper, Colloquy, eBay, Ego, Wallet, Squirrel, Shopper, Deliveries, Weightbot, iStat, Beats, Last.fm, RadAlert and many many more. Apps that really have a use and pay-back for the price you spent on them. Unfortunately, those apps aren&#8217;t the majority anymore &#8211; and it seems to become worse by each day passing by. So what to do?</p>
<p>Of course Apple could stop selling all those other crappy apps. Just reject when developers submit them &#8211; and instead include apps that would be worth including. *cough*GoogleVoice*cough* But to be honest, by that, Apple would shoot into their own feet. Why stop selling crappy apps, when there are enough users to buy them? Why rejecting the cut-off, even if it&#8217;s just some pennies per app?</p>
<p>So let&#8217;s see, what could be Plan B? Uh yeah. Plan B. Sounds always good. How about.. err.. an &#8220;Exclusive App Store&#8221;? An App Store exclusively for high-rated and (therefor) pricy apps. Yeah, that sounds good, doesn&#8217;t it? But wait&#8230; who decides what&#8217;s &#8220;exclusive&#8221;? The developers? The users? Or maybe the price? I don&#8217;t know how you think, but I&#8217;d probably go with the third option. As long as the price is high enough, I don&#8217;t believe Apple caring about the actual application&#8217;s quality &#8211; not esthetically nor functionally. So, what sense would an exclusive App Store have then? Well, I guess no more than just gather more and more money.</p>
<p>I&#8217;m really happy that at least there are Blogs and Sites on the web, which take the enormous job of searching through the App Store, filtering the whole crap away and bringing you the best and most beautiful applications available for your iPhone. :-) Without them, I guess I&#8217;d have a hard time to fine *anything* that would fit my needs within the actual App Store &#8211; and maybe just switch to Android.</p>
<p>So far.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/09/14/some-words-about-the-apple-app-store/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Playing Around with Ubuntu One (Pt. 2)</title>
		<link>http://www.devilx.net/2009/09/12/playing-around-with-ubuntu-one-pt-2/</link>
		<comments>http://www.devilx.net/2009/09/12/playing-around-with-ubuntu-one-pt-2/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 21:08:25 +0000</pubDate>
		<dc:creator>Marius M.</dc:creator>
				<category><![CDATA[Linux and stuff ...]]></category>
		<category><![CDATA[New & Cool]]></category>
		<category><![CDATA[World Wide Web]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Evolution]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MobileMe]]></category>
		<category><![CDATA[Pidgin]]></category>
		<category><![CDATA[Service]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Ubuntu One]]></category>

		<guid isPermaLink="false">http://www.devilx.net/?p=1012</guid>
		<description><![CDATA[In the first post of my tests regarding Ubuntu One, I described a bit how the general principle of Ubuntu One works and what I&#8217;ve experienced while setting it up on one Ubuntu client. Now, I got a bit deeper into the service by cloning the Ubuntu machine and also authorizing the second Ubuntu client [...]]]></description>
			<content:encoded><![CDATA[<p>In the <a title="Playing Around with Ubuntu One" href="http://www.devilx.net/2009/09/12/playing-around-with-ubuntu-one/" target="_self">first post</a> of my tests regarding Ubuntu One, I described a bit how the general principle of Ubuntu One works and what I&#8217;ve experienced while setting it up on one Ubuntu client. Now, I got a bit deeper into the service by cloning the Ubuntu machine and also authorizing the second Ubuntu client for the Ubuntu One service.</p>
<p>As I&#8217;ve written, moving the application-folders into the cloud seems to be working pretty good on one client. Now I&#8217;ve tested, how it is when using two clients and pulled the information contained in the cloud (from client A) down to client B. Each of the three applications worked in general, Pidgin started with the account configured on client A, Evolution started with the Inbox configure in client A but asked me for the password to access the mail-server (what&#8217;s clear, because I did not synchronize the key-rings) and Firefox displayed with the preferences configured, but prepended a message box that said:</p>
<blockquote><p>Could not initialize the application&#8217;s security component. The most likely cause is problems with files in your application&#8217;s profile directory. Please check that this directory has no read/write restrictions and your hard disk is not full or close to full. It is recommended that you exit the application and fix the problem. If you continue to use this session, you might see incorrect application behaviour when accessing security features.</p></blockquote>
<p>This confused me a bit, especially since the actual browser ran without any more problems. However, I&#8217;ve been to lazy to track down this permission problem.</p>
<p><a href="http://www.devilx.net/wp-content/uploads/2009/09/UbuntuOne-Conflict.png"  class="fancybox"><img class="alignleft size-thumbnail wp-image-1013" title="UbuntuOne-Conflict" src="http://www.devilx.net/wp-content/uploads/2009/09/UbuntuOne-Conflict-150x150.png" alt="UbuntuOne-Conflict" width="150" height="150" /></a>After I&#8217;ve checked, if &#8220;one-after-another&#8221; synchronization worked, I tried out the simultaneous usage of both machines, while being connected and synced with the cloud on each of them. As I&#8217;ve expected, I ran into some problems: Suddenly, some more folder (thumbnail) appeared within the client B&#8217;s Ubuntu One folder, that contained his app-information. The folders remained until the actual Home folder finished receiving the data from within the cloud, then they just disappeared. I don&#8217;t know, if those have been merged or just deleted &#8211; it just worked afterwards. :-)</p>
<p>Ubuntu One seems to be using &#8220;semaphores&#8221;, in a similar way token-ring was using: At first, client A is allowed to sync his data with the cloud. When this is finished, client B is allowed to sync. Then, it&#8217;s client A&#8217;s turn again &#8211; and so on. Theoretically, this is good. But in practice, Ubuntu One unfortunately seems to overwrite locale changes when pulling data down from the cloud. In comparison: MobileMe asks the user and merges the data, as good as possible.</p>
<p>In the end, simultaneous usage was unable to sync both machines in a way, so that data was kept consistent. Either one machine lost information, or the other. Especially when adding a new Pidgin account on client B, waiting for the sync, closing Pidgin on client A (which then seems to save a final account-info) and waiting for the sync there, you will be surprised your account not to be available when re-launching Pidgin on client A.</p>
<p>Of course, synchronization always is a tricky feature, but I guess, Ubuntu One lacks of an SVN-like back-end, that keeps track of all changes and makes merging possible. I&#8217;m really interested in how Ubuntu One will continue to evolve and I&#8217;ll try to keep tack of its development status. This could really kick ass someday, as soon as everything works seamless and simultaneous.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devilx.net/2009/09/12/playing-around-with-ubuntu-one-pt-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
