<?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>myplace.dk</title>
	<atom:link href="http://myplace.dk/feed/" rel="self" type="application/rss+xml" />
	<link>http://myplace.dk</link>
	<description></description>
	<lastBuildDate>Fri, 30 Sep 2011 12:21:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>How to subscribe a company for iOS development.</title>
		<link>http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/</link>
		<comments>http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/#comments</comments>
		<pubDate>Fri, 25 Mar 2011 08:55:14 +0000</pubDate>
		<dc:creator>Niels</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://myplace.dk/?p=435</guid>
		<description><![CDATA[<p>My company is about to release a smartphone app (iPhone and Android) on behalf of several customers. Even though I am a developer (not on the Apple platform though), I got the task of registering the customers on the relevant app markets. Android Market was easy and fast. But to release an app in Apple [...]]]></description>
			<content:encoded><![CDATA[<p>My company is about to release a smartphone app (iPhone and Android) on behalf of several customers. Even though I am a developer (not on the Apple platform though), I got the task of registering the customers on the relevant app markets. Android Market was easy and fast. But to release an app in Apple App Store, we had to get an iOS Developer Program for each customer, and that was <a href="http://myplace.dk/2011/02/17/apple-hates-developers/">such a nightmare</a> full of doubt and surprices. I wrote down the process to help myself (or hopefully a colleague) in case we need to add another customer, and decided to publish it here to help others in similar situation.</p>
<p>This is how I subscribed several customers for iOS development. If you have anything to add, please add a comment or send an email.</p>
<p><span id="more-435"></span>
<div class="toc">
<ol>
<li><a href="http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/#toc-a-quick-overview">A quick overview</a></li>
<li><a href="http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/#toc-what-you-need">What you need</a></li>
<li><a href="http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/#toc-enrolling">Enrolling</a></li>
<li><a href="http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/#toc-confirming">Confirming</a>
<ol>
<li><a href="http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/#toc-heres-some-more-details-in-danish">Here&#8217;s some more details in danish:</a></li>
</ol>
</li>
<li><a href="http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/#toc-checking-status">Checking status</a></li>
<li><a href="http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/#toc-payment">Payment</a></li>
<li><a href="http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/#toc-activation">Activation</a></li>
</ol>
</div>
<h2 id="toc-a-quick-overview">A quick overview</h2>
<ol>
<li>An Apple user is called an &#8220;Apple ID&#8221;. You need an Apple ID to purchase the iOS Developer Program, but it can be created as part of the process.</li>
<li>Then you enroll for an iOS Developer Program, which means you are asking Apple if they will allow you to send them money.</li>
<li>Apple considers your request. They may contact you, ask you to send documentation, ask you to phone someone etc.</li>
<li>If your request is accepted, you are allowed to pay and accept the conditions.</li>
</ol>
<p>This has nothing to do with actually releasing an app, it&#8217;s just a prerequisite.</p>
<h2 id="toc-what-you-need">What you need</h2>
<p>My situation is a bit special, because I&#8217;m not an iOS developer. I chose to register a legal person, and let the developer either use that account, or create his own account and add that to the developer program. I guess you could register a developer instead. In that case, you will still need the information about a legal contact, and the process is almost exactly the same.</p>
<p>I need the following information to “enroll in the iOS Developer Program”:</p>
<ul>
<li>Legal name and address of the company (The name for marketing is not relevant in this process.)</li>
<li>Name, phonenumber and email-address of a person with legal responsibility</li>
<li>An email-address (used a lot during the process)</li>
<li>A password</li>
<li>A birthdate (I picked a random and noted it with all the other security information. I’m not going to ask the legal person about his/her birthday.)</li>
<li>A security question and an answer</li>
<li>The company website address</li>
</ul>
<p><em>These informations CANNOT contain any special characters. Apple does NOT use the 8859-1 (latin-1) character set, apparently they use us-ascii. Apple DO NOT validate the input for this. You CANNOT expect to be able to change this later. If you overlook a special character you WILL be rejected, and you will need to start all over with ANOTHER Apple-id and ANOTHER email-address! <a href="http://myplace.dk/2011/02/17/apple-hates-developers/">The email-address will be banned indefinitely!</a></em></p>
<p>Just to make it clear, here&#8217;s a danish example: In stead of &#8220;blåbærgrød&#8221;, write &#8220;blaabaergroed&#8221; according to the danish spelling rules.</p>
<p>By the way: I asked our customers for an email for &#8220;important technical email that I need to do this &#8211; you can create a new address that will automatically forward everything to me, or just forward manually&#8221;. About 25% gave me an address that didn&#8217;t even work. Almost all of the generic addresses with manual forwarding had problems with long delays and mails that wasn&#8217;t forwarded at all.</p>
<h2 id="toc-enrolling">Enrolling</h2>
<p><strong>Special characters</strong><br />
Go back to the information you collected, and replace any special characters.</p>
<p><strong>Double check.</strong><br />
Seriously.</p>
<p><strong>”Enroll in the Apple Developer Programs”</strong><br />
Go to <a href="http://developer.apple.com/programs/start/standard/" target="_blank">http://developer.apple.com/programs/start/standard/</a>.</p>
<p>Click ”Continue”.</p>
<p><strong>“Are you new or a registered Apple developer?”</strong><br />
Under “New Apple Developer” select “I need to create a new account for an Apple Developer Program.”, click “Continue”.</p>
<p><strong>“Are you Enrolling as an Individual or Company?”</strong><br />
Click “Company”.</p>
<p><strong>“Complete your personal profile”</strong><br />
The email-address is NOT for the legal person, it’s the address that will be used a lot.</p>
<p>In the phone-number, you need to fill out area code. If your country doesn’t use them, pretend the first two digits are the area code. Remember country code.</p>
<p>Fill out the rest of the information (remember the special characters!) and click “Continue”.</p>
<p><strong>“Complete your professional profile”</strong><br />
Fill out the information and click “Continue”.</p>
<p><strong>“Registered Apple Developer Agreement”</strong><br />
Read the agreement (heh), check the checkbox, click “I Agree”.</p>
<p><strong>“Enter the verification code sent to your email”</strong><br />
You can wait for the mail to arrive, but that can take days. Here’s a trick: Press F5 now. If the browser asks if you are serious, you are. I got some badly formatted text that looks like it should have been in the mail. It includes the secret URL for verifying the email-address. Copy it to the clipboard, insert it in the address bar. Feel like a hacker.</p>
<p><strong>“Enter your company information”</strong><br />
Fill out the information, remember the special chars. Yes, you’ve already told Apple most of this, don’t ask why you need to do it again.</p>
<p>Except the phone-number. Apple probably want the companys main phonenumber. You decide if that makes sense. I put in the legal persons phonenumber.</p>
<p>Click “Continue”.</p>
<p><strong>“Provide the legal contact for your company”</strong><br />
Yes, you already did that. Just select “I am the legal contact for my company” and click “Continue”.</p>
<p><strong>“Select Your Program”</strong><br />
Check “iOS Developer Program” and click “Continue”.</p>
<p><strong>“Review your enrollment information and submit”</strong><br />
They are serious here. Review and submit. Do not expect to be able to correct anything.</p>
<p><strong>“Thank you for submitting your enrollment”</strong><br />
Now you wait.</p>
<h2 id="toc-confirming">Confirming</h2>
<p>Apple needs some time to consider your request. Sometimes they don&#8217;t feel confident that you are who you say you are, in which case they&#8217;ll want you to do something to confirm it.</p>
<p>About 50% of my customers was asked to fax documentation, specifically &#8220;the Certificate of registration from the Danish Commerce and Companies Agency of identity for your business based on your company form&#8221;. Faxing the wrong papers is not a huge setback, my customers was asked to just fax again with the right papers.</p>
<blockquote>
<h3 id="toc-heres-some-more-details-in-danish">Here&#8217;s some more details in danish:</h3>
<p>Registreringsbeviset fra Skat er ikke godt nok, det SKAL være registreringsbeviset fra Erhvervs- og Selskabsstyrelsen.</p>
<p><strong>UPDATE 2011-09-30</strong>: Jeg har efterhånden hørt om en del problemer om dette fra flere sider. Nogle får afvist registreringsbeviset, og nogle bliver bedt om at sende den ikke-eksisterende engelske version. Nogle firmaer har slet ikke et registreringsbevis, da Erhvervs- og Selskabsstyrelsen stoppede med at lave dem for adskillige år siden. Den eneste udvej jeg har fundet indtil videre er at købe et engelsk selskabscertifikat fra <a href="http://cvr.dk/Site/Forms/CMS/DisplayPage.aspx?pageid=44">cvr.dk</a>, det koster 500 kr.<br />
I øvrigt har jeg også hørt flere steder at selvstændige godt kan glemme det, de er nødt til at registrere sig som private.</p></blockquote>
<h2 id="toc-checking-status">Checking status</h2>
<p>Go to <a href="http://developer.apple.com/membercenter/" target="_blank">http://developer.apple.com/membercenter/</a>, and look in the top right. Examples, in chronological order:</p>
<ul>
<li>Get access to the wealth of technical resources and information to assist you in creating new and innovation applications for iOS OS and Mac OS X. Join Today</li>
<li>We have received your Program Enrollment and are in the process of reviewing the information you have submitted.</li>
<li>We have reviewed your Program Enrollment and ask that you contact us.</li>
<li>We are processing your Program Enrollment and have received the documentation you provided to verify your identity. We will contact you soon regarding next steps.</li>
<li>We are processing your Program Enrollment and are attempting to reach the legal contact you provided during the enrollment process.</li>
<li>You must review and accept the iOS Developer Program License Agreement in order to continue with your Program Enrollment.</li>
<li>Once you&#8217;ve completed your purchase, you will receive an Order Acknowledgement email from the Apple Online Store and an Activation email within 24 hours from Apple Developer Support. The email from Apple Developer Support will contain information on how to access the resources of your Program.</li>
</ul>
<p>If you see the second-last one, click &#8220;Agree now&#8221;.</p>
<p>If you see the last one and haven&#8217;t paid yet, click &#8221; Programs &amp; Add-ons&#8221; in the top menu, then &#8220;Continue Enrollment&#8221;. Then you will get to the next part.</p>
<p>If you see the last one and have paid, you may have received an activation code by email.</p>
<h2 id="toc-payment">Payment</h2>
<p>Apple will send an email about that &#8220;You can now continue the Apple Developer Program enrollment process by reviewing and agreeing to the Program License Agreement&#8221;. Either click the link in the mail, or click &#8220;Agree now&#8221; in the status in the Member Center.</p>
<p><strong>Program License Agreement<br />
</strong>Read the license, check the checkbox, click &#8220;I Agree&#8221;.</p>
<p><strong>Proceed to your country&#8217;s Apple Online Store to purchase.<br />
</strong>Click &#8220;Add to cart&#8221;.</p>
<p><strong>Apple Store / Basket &#8211; Items in Your Basket<br />
</strong>Click  &#8221;Check Out Now&#8221;</p>
<p><strong>Please Sign In<br />
</strong> Under &#8220;Guest Checkout&#8221; click &#8220;Continue&#8221;</p>
<p><strong>Apple Store / Secure Checkout - Shipping</strong><br />
Fill out shipping info. Nothing is physically shipped, so I entered the payment info. Except the phone-number, I entered my own. If they call anyone about shipment or payment, I&#8217;m the only one who knows what they are talking about. In the name fields, I entered the name of the card-holder. Click &#8220;Continue&#8221;.</p>
<p><strong>Apple Store / Secure Checkout &#8211; Payment</strong><br />
Click &#8220;Same as shipping information&#8221; above the text-fields.</p>
<p>Enter an email-address. This is where the activation code and invoice is sent. <em>Caution: If you buy on behalf of several companies, see &#8220;Activation&#8221; below before you enter the same name and email-address for more than one!</em></p>
<p>Enter VAT-number. <em>Caution: I was told it is very important to supply the VAT-number. I later found out that Apple doesn&#8217;t need it, but we need it to be on the invoice. Apple DOES NOT add the VAT-number on the invoice! Put it in the field &#8220;Additional Address Information&#8221;!</em></p>
<p>Enter creditcard information</p>
<p>Click &#8220;Continue&#8221;.</p>
<p><strong>Apple Store / Secure Checkout &#8211; Account<br />
</strong>I click &#8220;Continue as Guest&#8221;.</p>
<p><strong>Apple Store / Secure Checkout &#8211; Terms &amp; Conditions<br />
</strong>Check &#8220;I have read blah blah blah&#8221;</p>
<p>Click &#8220;Continue&#8221;</p>
<p><strong><strong>Apple Store / Secure Checkout &#8211; </strong>Order Details<br />
</strong>Click &#8220;Place Order Now&#8221;</p>
<p><strong> </strong></p>
<p><strong>App Store / Thank You</strong><br />
Use the print-function to print these order details. (I &#8220;print&#8221; to PDF.) You may need some info here, that isn&#8217;t on the invoice, plus the invoice may take days to arrive.</p>
<p>Now you wait again. Most companies accept credit card payment immediatly, Apple needs &#8220;up to 24 hours&#8221;.</p>
<h2 id="toc-activation">Activation</h2>
<p>I get an email like this:</p>
<blockquote><p>To:  &lt;Billing email address&gt;<br />
Subject: Apple Developer Program Activation Code</p>
<p><strong>Apple Developer Program Activation Code </strong></p>
<p><strong>Dear &lt;name I used for billing, not the user account or shipping&gt;,</strong><br />
To complete your purchase and access your Apple Developer Program benefits, please click on the activation code below.</p>
<table border="0">
<tbody>
<tr>
<td></td>
<td>Activation Code</td>
<td>Part Number</td>
</tr>
<tr>
<td>iOS Developer Program</td>
<td>&lt;clickable activation code&gt;</td>
<td>D4521G/A</td>
</tr>
</tbody>
</table>
<p>If you need further assistance, please contact us.<br />
Best regards,</p>
<p>Apple Developer Support</p></blockquote>
<p>If you paid several accounts within a few days, you may now have a problem. I used the same email-address and name for billing for all customers. Clicking the link doesn&#8217;t help, because that just takes you to a login screen.</p>
]]></content:encoded>
			<wfw:commentRss>http://myplace.dk/2011/03/25/how-to-subscribe-a-company-for-ios-development/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Apple hates developers</title>
		<link>http://myplace.dk/2011/02/17/apple-hates-developers/</link>
		<comments>http://myplace.dk/2011/02/17/apple-hates-developers/#comments</comments>
		<pubDate>Thu, 17 Feb 2011 16:03:51 +0000</pubDate>
		<dc:creator>Niels</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://myplace.dk/?p=404</guid>
		<description><![CDATA[<p>My employer will soon release a smartphone app (iPhone and Android), for the first time.  Actually we will release several apps for several customers.  These customers pay my employer to take care of all the technical stuff, so we release the apps in their names. And I got the task of registering developer accounts for [...]]]></description>
			<content:encoded><![CDATA[<p>My employer will soon release a smartphone app (iPhone and Android), for the first time.  Actually we will release several apps for several customers.  These customers pay my employer to take care of all the technical stuff, so we release the apps in their names. And I got the task of registering developer accounts for each customer. In stead of explaining how much work in is and how frustating that work is, I will give you an example of how Apple works.</p>
<p><span id="more-404"></span>I started registering over a week ago, and I just got my first rejection. I made a mistake in the registration. I spelled a named correctly, and now I am being punished for it. The contact at the customers company is called &#8220;Jens Elkjær&#8221;. Well actually he isn&#8217;t, but there is an &#8220;æ&#8221; in his name. I was previously adviced by a colleague that special characters are problematic, and I should avoid them. I just overlooked this one. Copying and pasting name, address email etc. for dozens of accounts numbs your brain, and I overlooked this single character. I also overlooked a couple in the addresses, but those could be changed later.</p>
<p>There was nothing to indicate any kind of error, until I reached a confirmation page. The name was displayed like this: &#8220;Jens Elk�r&#8221;. (The &#8220;æ&#8221; is replaced with the &#8220;<a href="http://en.wikipedia.org/wiki/Specials_(Unicode_block)#Replacement_character">replacement character</a>&#8220;.) It was too late. I could not go back and change the name. I could submit the application now or I could rage a while and then submit it.</p>
<p>Today I got this email (anonymized, emphasis is mine):</p>
<blockquote><p><strong>From:</strong> eurodev@apple.com<br />
<strong>Date:</strong> 17-02-2011 10:13<br />
<strong>To:</strong> <em>XXXXX</em>@<em>XXXXX</em>.dk<strong><br />
</strong> <strong>Subject:</strong> Re: iOS Developer Program</p>
<hr />Please include the line below in follow-up emails for this request.</p>
<p>Follow-up:  <em>XXXXX</em></p>
<p>Re: iOS Developer Program</p>
<p>Dear Sir/Madam,</p>
<p>We are in the process of reviewing your iOS Developer Program enrollment information.</p>
<p>In reviewing your Company Enrollment application <em>XXXXX</em>, I have found the following information:</p>
<p>Enrollment Reference Number: <em>XXXXX</em><br />
Program: Standard Program<br />
Enrollment Type: Company/Organization<br />
Applicant Name: <strong>Jens ElkjÃ¦r</strong><br />
Email: <em>XXXXX</em>@<em>XXXXX</em>.dk</p>
<p>Please know that the applicant&#8217;s name does not appear correctly. I have withdrawn your Enrollment <em>XXXXX</em> and you can submit a new Enrollment Request. I would advise you not to use foreign characters, as they are not recognizable from our system.</p>
<p>Should you wish to enroll again for the Standard Program, <strong>please submit a new enrollment using a different Apple ID and email address</strong> than the ones used for your original enrollment. Before submitting your NEW Enrollment, please clear your browser&#8217;s cookies, cache and history, ensure that it is configured to accept all cookies, quit and restart your browser.</p>
<p>Once you have completed the new enrollment, please then contact us back with the NEW Enrollment ID so that we review the NEW application.</p>
<p>We hope that this information is useful to you. Please let us know if you have any questions regarding this information.</p>
<p>Best regards,</p>
<p><em>XXXXX</em> <em>XXXXX</em><br />
Apple Developer Support</p></blockquote>
<p>My list of criticisms is not short.</p>
<p>1. The danish special letters are part of the character set &#8220;ISO 8859-1&#8243; also known as &#8220;latin 1&#8243;. This character set was published in 1985, registered as at internet standard in 1992, and is the default character set in HTTP since <a href="http://tools.ietf.org/html/rfc1945#section-3.6.1">version 1.0</a> published in 1996. However, if international characters is important (such as if you are collecting names from all over the world), you should use the more modern character set UTF, which is rapidly becoming a standard replacing 8859-1. In short, Apple really should just support the danish special letters. It&#8217;s not hard, practically everybody else does. It has been many years since last time I saw a system that didn&#8217;t support them by default.</p>
<p>2. If the danish special letters is not supported, the website could easily have informed me of this. The primitive solution would be a simple text: &#8220;In english letters only.&#8221; But the professional way would be to validate the input. This is very easy to do. Very.</p>
<p>3. The confirmation page didn&#8217;t allow me to go back and change it.</p>
<p>4. So they don&#8217;t support &#8220;æ&#8221; but they accepted it anyway. And then I can&#8217;t just go into profile settings and change it. I can change address, phone-numer, email-address, company name&#8230; Anything but the name. If a person actually changes name (this happens quite often, typically when getting married), it cannot be changed in the Apple profile. This reminds me of a phonecompany that got my name wrong in the phonebook and couldn&#8217;t change me. They said I had to change phonecompany to correct my name. Of course I did. I don&#8217;t do business with amateurs if I have a choice.</p>
<p>5. So there&#8217;s &#8220;Ã¦&#8221; in the name and I can&#8217;t do anything about it. Will Apple do it for me? No. (BTW: &#8220;æ&#8221; will look like that when it is saved or transmitted as UTF-8 and read as 8859-1.)</p>
<p>6. So there&#8217;s &#8220;Ã¦&#8221; in the name and it&#8217;s not going to change. Apple just have to accept it. They don&#8217;t. They reject the application.</p>
<p>7. It&#8217; no use just applying again. I have to make a new profile, and THEN apply again.</p>
<p>8. The new profile can&#8217;t have the same id as the old one. So I can&#8217;t use the same id for the iOS app as for the Android app. This complicates managing alle these accounts for my customers.</p>
<p>9. The new profile can&#8217;t have the same email-address as the old one. <a href="http://www.gomonews.com/apple-developer-support-can-be-pretty-unsupportive/">Others have tried</a>, unsuccessfully. But that&#8217;s the correct one. That is the one the customer has. Of course the customer has other addresses, but none of those are right one. They have to create a new address, and make it forward everything. I need to tell this to a colleague. He will contact our contact person. He will contact their IT department. They will find a technician to do it. According to my experience there is a good chance it won&#8217;t work, and I need to start the chain again.</p>
<p>This is not a list of trouble I&#8217;ve had during the process so far. This just one single example from a long list of unnecessary problems. I find it very hard to believe that Apple is so incompetent. Maybe they are indifferent about the quality of their work? Nah, I&#8217;ve been told so many times by Apple-fans that quality is what Apple is all about.</p>
<p>No, it&#8217;s very simple: Apple hates developers. And I hate Apple.</p>
]]></content:encoded>
			<wfw:commentRss>http://myplace.dk/2011/02/17/apple-hates-developers/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ubuntu Linux on ASRock Core 100HT</title>
		<link>http://myplace.dk/2010/12/27/linux-on-asrock-core-100ht/</link>
		<comments>http://myplace.dk/2010/12/27/linux-on-asrock-core-100ht/#comments</comments>
		<pubDate>Mon, 27 Dec 2010 18:10:26 +0000</pubDate>
		<dc:creator>Niels</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://myplace.dk/?p=364</guid>
		<description><![CDATA[<p>I installed Ubuntu 10.10 (Maverick Meerkat) 32 bit on my ASRock Core 100HT, which I use as an &#8220;HTPC&#8221; (Home Theater PC) or &#8220;mediacenter&#8221;. For now I also use it as a NAS and a few other odd jobs. Everything I&#8217;ve tried so far worked out of the box, except infrared. I had to install [...]]]></description>
			<content:encoded><![CDATA[<p>I installed Ubuntu 10.10 (Maverick Meerkat) 32 bit on my ASRock Core 100HT, which I use as an &#8220;HTPC&#8221; (Home Theater PC) or &#8220;mediacenter&#8221;. For now I also use it as a NAS and a few other odd jobs. Everything I&#8217;ve tried so far worked out of the box, except infrared. I had to install the infrared driver in an inconvenient way, but it works too. This blog-post will mostly be about the remote.</p>
<p><span id="more-364"></span></p>
<h1 id="toc-what-i-have-tested">What I have tested</h1>
<p>The HTPC is connected to my TV by HDMI. It automatically chose HDMI output, and the right resolution for my TV (1360&#215;768). I didn&#8217;t have any audio, so I clicked my way into audio settings and changed the output to &#8220;HDMI Stereo&#8221;, and then it worked like I wanted it. I haven&#8217;t tried VGA, optical audio out</p>
<p>It&#8217;s networked by WIFI (802.11b), no problems there. I haven&#8217;t tried 802.11n or wired network.</p>
<p>Reading DVD&#8217;s works. I haven&#8217;t tried CD or burning anything.</p>
<p>Infrared works with the supplied MCE remote. It probably works with almost any infrared remote, with a bit of work. I haven&#8217;t tried that yet.<br />
My <a href="http://logitech.com/harmony">Logitech Harmony</a> (programmable universal remote) works fine with the HTPC. I simply autodetected the MCE remote with the Harmony.</p>
<p>I can play 1080p h264 movies.</p>
<p>USB 2 works, haven&#8217;t tried USB 3 yet.</p>
<p>Oh, and I can turn the device on with the IR-remote.</p>
<h1 id="toc-installing-the-infrared-driver">Installing the infrared driver</h1>
<p>ASRock has two Linux-downloads for the Core 100HT: Infrared driver for Ubuntu 10.4, and infrared driver for Ubuntu 10.10. The latter has a great manual, but there&#8217;s a lot of steps. The style in the manual is &#8220;click this, click that, type this, type that&#8221; etc., which I think is what most people want. I prefer a more terse syntax, with commands I can copy/paste to the terminal. Like this:</p>
<pre>sudo apt-get update
sudo apt-get install lirc lirc-modules-source

        Remote control configuration: None
        IR transmitter, if present: None

unzip -d /tmp/ "IR(10.10)2.6.35-22.zip"

Install one of these, ignore errors:
32 bit: sudo dpkg -i /tmp/Ubuntu\ 10.10/lirc-nct677x-1.1.0-ubuntu10.10-kernel2.6.35.deb
64 bit: sudo dpkg -i /tmp/Ubuntu\ 10.10/lirc-nct677x-x64-1.1.0-ubuntu10.10-kernel2.6.35.deb

Again, ignore errors:
sudo dpkg -i /tmp/Ubuntu\ 10.10/lirc-nct677x-src-1.1.0-ubuntu10.10.deb 

cd /usr/src
sudo dkms remove -m lirc -v 0.8.7~pre3 --all
sudo dkms add -m lirc -v 0.8.7~pre3
sudo dkms build -m lirc -v 0.8.7~pre3
sudo dkms install -m lirc -v 0.8.7~pre3 --force
sudo dpkg-reconfigure lirc

        Remote control configuration: Nuvoton Transceivers/Remotes
        IR transmitter, if present: None</pre>
<pre>Test by running the command "irw", and push some buttons on the remote. It should output the name of the buttons you press.</pre>
<h1 id="toc-using-the-remote">Using the remote</h1>
<p>After installing the driver and confirming that it works, the remote still didn&#8217;t do anything. I haven&#8217;t studied how this is supposed to work, but after playing around a bit I&#8217;ve learning that it&#8217;s probably something like this: LIRC (Linux Infrared Remote Control) receives the infrared signal, recognizes which remote it is and which button it is, and then tells about it to anyone who wants to listen. In my case, nobody.</p>
<p>I started XBMC and made sure it knows I have a remote that doesn&#8217;t send keyboard signals, and then it worked.</p>
<p>For now, I only want one more feature: Starting XBMC with the remote.</p>
<p><em>Warning: I tried to configure LIRC with an easy GUI. I don&#8217;t remember the name, but it didn&#8217;t work and it destroyed what already worked. I removed the software and reinstalled the driver. Please comment or email me if you have anything to add here.</em></p>
<p>I created the file &#8220;~/.lircrc&#8221; with this content:</p>
<pre>begin
    prog = irexec
    button = Home
    config = ps -e | grep xbmc &gt;/dev/null || xbmc&amp;
    repeat = 0
end</pre>
<p>In english, if I understand correct: &#8220;If the program irexec wants to know that Home (big green button with the ) is pressed, give it the string from the &#8216;config&#8217;-line.&#8221;</p>
<p>irexec then executes the command, which is &#8220;if xbmc is not running, run it&#8221;.</p>
<p>The final step is to start irexec when the machine is booting, I simply did that with the Ubuntu &#8220;Startup Applications&#8221; function.</p>
<h1 id="toc-lirc-names-of-the-remote-buttons">LIRC names of the remote buttons</h1>
<p>&#8230;as defined by the driver from ASRocks website.</p>
<table border="0">
<tbody>
<tr>
<td>Aspect</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>Power</td>
</tr>
<tr>
<td>RecTV</td>
<td></td>
<td>Guide</td>
<td></td>
<td>LiveTV</td>
<td></td>
<td>DVD</td>
</tr>
<tr>
<td></td>
<td>Record</td>
<td></td>
<td></td>
<td></td>
<td>Stop</td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td>Play</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>Rewind</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>Forward</td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td>Pause</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td>Replay</td>
<td></td>
<td></td>
<td></td>
<td>Skip</td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td>Up</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td>Left</td>
<td></td>
<td>OK</td>
<td></td>
<td>Right</td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td>Down</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>VolUp</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>ChanUp</td>
</tr>
<tr>
<td>VolDown</td>
<td></td>
<td></td>
<td>Home</td>
<td></td>
<td></td>
<td>ChanDown</td>
</tr>
<tr>
<td>Back</td>
<td></td>
<td></td>
<td>Mute</td>
<td></td>
<td></td>
<td>More</td>
</tr>
<tr>
<td>One</td>
<td></td>
<td></td>
<td>Two</td>
<td></td>
<td></td>
<td>Three</td>
</tr>
<tr>
<td>Four</td>
<td></td>
<td></td>
<td>Five</td>
<td></td>
<td></td>
<td>Six</td>
</tr>
<tr>
<td>Seven</td>
<td></td>
<td></td>
<td>Eight</td>
<td></td>
<td></td>
<td>Nine</td>
</tr>
<tr>
<td>Star</td>
<td></td>
<td></td>
<td>Zero</td>
<td></td>
<td></td>
<td>Hash</td>
</tr>
<tr>
<td></td>
<td>Clear</td>
<td></td>
<td></td>
<td></td>
<td>Enter</td>
<td></td>
</tr>
<tr>
<td>Radio</td>
<td></td>
<td>Music</td>
<td></td>
<td>Pictures</td>
<td></td>
<td>Videos</td>
</tr>
<tr>
<td>Red</td>
<td></td>
<td>Green</td>
<td></td>
<td>Yellow</td>
<td></td>
<td>Blue</td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td>Teletext</td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<h1 id="toc-harmony-names-of-the-remote-buttons" style="font-size: 2em;">Harmony names of the remote buttons</h1>
<p>&#8230;in the configution it autodetected. You could make your own configuration with the LIRC-names or whatever you choose. There is a few duplicates and a few buttons not on the original remote.</p>
<table border="0">
<tbody>
<tr>
<td>Aspect</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>PowerToggle</td>
</tr>
<tr>
<td colspan="2">RecordedTV</td>
<td>Guide</td>
<td></td>
<td>LiveTV</td>
<td></td>
<td>DVDMenu</td>
</tr>
<tr>
<td></td>
<td colspan="2">Rec/Record</td>
<td></td>
<td></td>
<td>Stop</td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td>Play</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td colspan="2">Rew/Rewind</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>Fwd/FastForward</td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td>Pause</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td>Replay</td>
<td></td>
<td></td>
<td></td>
<td>Skip</td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td>Up</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td>Left</td>
<td></td>
<td colspan="2">OK/ChannelPrev</td>
<td>Right</td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td>Down</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>VolUp</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>ChannelUp</td>
</tr>
<tr>
<td colspan="2">VolDown</td>
<td></td>
<td colspan="3">Media/GreenButton</td>
<td>ChannelDown</td>
</tr>
<tr>
<td>Back</td>
<td></td>
<td></td>
<td>Mute</td>
<td></td>
<td></td>
<td>Info</td>
</tr>
<tr>
<td>1</td>
<td></td>
<td></td>
<td>2</td>
<td></td>
<td></td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td></td>
<td></td>
<td>5</td>
<td></td>
<td></td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td></td>
<td></td>
<td>8</td>
<td></td>
<td></td>
<td>9</td>
</tr>
<tr>
<td>*</td>
<td></td>
<td></td>
<td>0</td>
<td></td>
<td></td>
<td>#</td>
</tr>
<tr>
<td></td>
<td>Clear</td>
<td></td>
<td></td>
<td></td>
<td>Enter</td>
<td></td>
</tr>
<tr>
<td colspan="2">MyRadio</td>
<td colspan="2">MyMusic</td>
<td colspan="2">MyPictures</td>
<td>MyVideos</td>
</tr>
<tr>
<td>Red</td>
<td></td>
<td>Green</td>
<td></td>
<td colspan="2">Yellow</td>
<td>Blue</td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td colspan="2">Teletext</td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<p>Additional commands, not on the original remote:</p>
<table border="0">
<tbody>
<tr>
<th>Harmony</th>
<th>LIRC</th>
</tr>
<tr>
<td>Audio</td>
<td>BB3</td>
</tr>
<tr>
<td>MyTV</td>
<td>TV</td>
</tr>
<tr>
<td>Subtitle</td>
<td>Not detected</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://myplace.dk/2010/12/27/linux-on-asrock-core-100ht/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Kontrolcifre</title>
		<link>http://myplace.dk/2010/02/03/kontrolcifre/</link>
		<comments>http://myplace.dk/2010/02/03/kontrolcifre/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 19:16:29 +0000</pubDate>
		<dc:creator>Niels</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[dansk]]></category>
		<category><![CDATA[math]]></category>

		<guid isPermaLink="false">http://myplace.dk/?p=259</guid>
		<description><![CDATA[<p>Så er der igen opmærksomhed på forkerte kontonumre ved pengeoverførsler. Jeg fik lyst til at fortælle lidt om check-cifret, som (normalt) gør at fejlindtastninger fanges.</p>
<p>Kontrolcifre bruges mange steder. Kontonummer, kortnummer, CPR-nummer, girokort&#8230; Kontrolcifret er det sidste tal i rækken, og det beregnes ud fra de øvrige cifre med en formel. Når man fx. opretter et [...]]]></description>
			<content:encoded><![CDATA[<p>Så er der igen opmærksomhed på <a href="http://www.version2.dk/artikel/13742-175000-kr-paa-den-gale-konto-aendrer-ikke-praksis-hos-netbank">forkerte kontonumre</a> ved pengeoverførsler. Jeg fik lyst til at fortælle lidt om check-cifret, som (normalt) gør at fejlindtastninger fanges.</p>
<p>Kontrolcifre bruges mange steder. Kontonummer, kortnummer, CPR-nummer, girokort&#8230; Kontrolcifret er det sidste tal i rækken, og det beregnes ud fra de øvrige cifre med en formel. Når man fx. opretter et nyt CPR-nummer, så er de første 6 cifre datoen, de næste tre fastsættes ud fra en masse regler, og det sidste ciffer beregnes med en <em>modulus 11</em>-formel. Når man så indtaster et CPR-nummer på en computer, så kan den med en simpel formel se om det sidste ciffer passer. Og det gør det (næsten) aldrig, hvis man skriver forkert.<br />
<span id="more-259"></span><br />
Sådan et kontrolciffer er designet til at afsløre tastefejl. Hvis man indtaster et tilfældigt tal (med et passende antal cifre), er der altså kun 10% chance for at det kan være et CPR-nummer. Men hvis man prøver at indtaste et rigtigt CPR-nummer, men skriver forkert, er der nærmere 1-3% chance for at kontrolcifret passer. Og hvis man kun laver ét ciffer forkert, vil kontrolcifret helt sikkert afsløre det. Det er da smart.</p>
<p>Så når man indtaster kontonummeret forkert, er det altså sjældent at overførslen gennemføres. Og selv hvis kontrolcifferet tilfældigvis passer, så er det langt fra sikkert kontonummeret eksisterer.</p>
<h2 id="toc-modulus-10"><strong>Modulus 10</strong></h2>
<p>Modulus 10, også kendt som <em>Luhn algoritmen</em>, bruges fx. til det 16-cifrede betaler-id på indbetalingskort og Visakort-numre.</p>
<p>Sådan beregner du det manuelt: Læs cifrene fra højre mod venstre, og skriv dem ned på et stykke papir. Hverandet ciffer gange du med to. Skriv et plus mellem hvert <em>ciffer</em>, og beregn summen. Hvis kan divideres med 10 uden rest, er kontrol-cifret korrekt.</p>
<p>Eksempel (tal i parentes er resultatet af at gange med 2):</p>
<p>86413 =&gt; 3 + (2) + 4 + (1 + 2) + 8 = 20 =&gt; 20/10 = 2 med nul i rest.</p>
<p>Prøv selv med dit Visa/Dankort, hvis du har et.</p>
<h2 id="toc-modulus-11">Modulus 11</h2>
<p>Modulus 11-metoden bruges til CPR-numre, kontonumre mm. (Der er også andre algoritmer som kan kaldes &#8220;modulus 11&#8243;, men dette er vist den mest almindelige.)</p>
<p>Sådan beregner du det manuelt: Læs cifrene fra højre mod venstre. Første tal ganger du med 1 (det starter nemt) og skriver ned. Det næste tal ganger du med to, og skriver ned. Derefter 3, osv. Når du har ganget med 7, skal du ved næste ciffer gå tilbage til 2. Dvs. 1, 2, 3, 4, 5, 6, 7, 2, 3, 4, 5, 6, 7, 2, 3, 4&#8230; Skriv et plus mellem hvert tal, og beregn summen. Hvis tallet kan divideres med 11 uden rest, er kontrol-cifret korrekt.</p>
<p>Eksempel: 86428 =&gt; 8 + 4 + 12 + 24 + 40 = 88 =&gt; 88/11 = 8 med nul i rest.</p>
<p>Prøv selv med dit eget CPR-nummer.</p>
<p><strong>OBS</strong>: Ikke alle kontonumre bruger netop denne type kontrolciffer. Og siden oktober 2007 er det i øvrigt heller ikke alle CPR-numre som har korrekt kontrol-ciffer.</p>
<p><strong>Bonus</strong>: Du får ekstra point* hvis du selv kan regne ud, hvorfor ikke alle tal, kan få et modulus-11 kontrol-ciffer.</p>
<p><em>*) Point kan ikke indløses til kontanter, men hvis du er heldig kan de veksles til street-credit.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://myplace.dk/2010/02/03/kontrolcifre/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Layers pattern for security</title>
		<link>http://myplace.dk/2009/11/26/layers-pattern-for-security/</link>
		<comments>http://myplace.dk/2009/11/26/layers-pattern-for-security/#comments</comments>
		<pubDate>Thu, 26 Nov 2009 19:20:59 +0000</pubDate>
		<dc:creator>Niels</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[development tips]]></category>
		<category><![CDATA[english]]></category>

		<guid isPermaLink="false">http://myplace.dk/?p=222</guid>
		<description><![CDATA[<p>Pay attention, web developers! This is where too many of you screw up. Way too often a few characters behave strange and a quick fix is made, in stead of taking a step back to look at the real problem.</p>
<p>This is fine for the beginning amateur, but professionals should always get this right.</p>
What happens when [...]]]></description>
			<content:encoded><![CDATA[<p>Pay attention, web developers! This is where too many of you screw up. Way too often a few characters behave strange and a quick fix is made, in stead of taking a step back to look at the real problem.</p>
<p>This is fine for the beginning amateur, but professionals should <em>always</em> get this right.</p>
<h3 id="toc-what-happens-when-you-dont-do-this">What happens when you don&#8217;t do this</h3>
<p>If you are very lucky, you will have a lot of extra work and more complicated code. If you are less lucky strange things will happen on your website. Maybe &#8220;2&lt;3&#8243; is displayed as &#8220;23&#8243; or &#8220;don&#8217;t&#8221; is displayed as &#8220;don\&#8217;t&#8221;. Maybe it&#8217;s even saved like that in the database, which just makes it much harder to fix.</p>
<p>But worst case is a gaping security hole. Do one little thing wrong, and you can get serious security vulnerabilities like <a href="http://en.wikipedia.org/wiki/Cross-site_scripting">XSS</a> and <a href="http://en.wikipedia.org/wiki/Sql_injection">SQL injection</a>.<br />
<span id="more-222"></span></p>
<h3 id="toc-what-is-layers">What is layers</h3>
<p><img class="alignright size-full wp-image-244" src="http://myplace.dk/wordpress/wp-content/uploads/2009/11/layers.png" alt="" width="192" height="320" />Any non-static website has layers. It&#8217;s just a question of how many, and if you are using them correctly. To make a simple blog you need at least three:</p>
<ol>
<li>The presentation (HTML, CSS etc.)</li>
<li>The application (maybe written in PHP)</li>
<li>A database (like MySQL)</li>
</ol>
<p>A layer should only know about what is above it, and what is below it. In this extremely simple scenario, the HTML knows about the PHP (filenames for the links etc.), but should never know about the database (table names and certainly never ever login information). And SQL statements (or even snippets) should NEVER get more than one layer away from database layers.</p>
<p>Usually there is many more layers in the application part to simplify things. Maybe there is a layer for translating pretty urls to actual PHP filenames. And there should be a &#8220;database abstraction layer&#8221;, which makes database access look the same no matter which database you use.</p>
<p>En example of how even abstraction layers that hardly adds any features are useful: It adds flexibility. With a good database abstraction layer, you can change the entire database (maybe from MySQL to PostGreSQL) without changing your actual application. You just edit the abstraction layer, which sits between the application and the database. The advantages becomes clearer further down.</p>
<p>In this article I will only talk about a few layers, enough for most simple web-projects. But the idea is the same with any amount of layers. I will use:</p>
<ol>
<li>The presentation (HTML, CSS etc.)</li>
<li>The application (maybe written in PHP)</li>
<li>Database Abstraction Layer</li>
<li>A database (like MySQL)</li>
</ol>
<h3 id="toc-my-recommended-solution">My recommended solution</h3>
<p>When the user performs an action (like a search), data from the user (for example search terms) travels through the layers, probably all the way to the bottom, and then results (for example search results) travels all the way back up, possibly including the original data.</p>
<p>Here comes the important part:</p>
<blockquote><p><strong>When data moves from one layer to the other, make sure all necessary conversions are done correctly, and preferrably automatically.</strong></p></blockquote>
<p>When data moves from the browser to your application, you will <a href="http://php.net/manual/en/security.magicquotes.php">probably</a> get it as normal plaintext. So far so good.</p>
<p>Then you transfer the data to the database. The database interpretes certain characters specially, like percent, underscore and apostrophe. The amateur is tempted to fix this with search-and-replace, and will often do this the wrong place so that the fix ends up in places outside the database.</p>
<p>This is a task for the database abstraction layer. My favorite way is <a href="http://en.wikipedia.org/wiki/SQL_injection#Parameterized_statements">parameterized statements</a>. A simple example:</p>
<pre class="codeblock"><code>result = db.getAll("SELECT id, name FROM students WHERE name=?", name);</code></pre>
<p>The questionmarks gets replaced with the parameters after the query.</p>
<p>The variable db containts an object from the database abstraction layer. Which you may have made yourself, maybe one provided by the system you use (PHP has <a href="http://php.net/manual/en/refs.database.php">several</a>), or as I prefer &#8211; a simply one build on top of something good someone else has made.</p>
<p>The results from the database should be in plaintext. No special handling of any characters, special to SQL, HTML or any other technology. Any layer should only know about the layer above and below, and the HTML and browser is far above the dabase and database abstraction layer(s).</p>
<p>Now you have the input and the result from the database, and it&#8217;s time to display them. But data is sent to the browser in HTML format, not plaintext. So transferring data from the application to the presentation layer, means translating from plaintext to HTML.</p>
<p>There are tons of ways to do that, depending on the framwork you are using. Here&#8217;s a very primitive way of doing it in PHP:</p>
<pre class="codeblock"><code>&lt;p&gt;
Search terms: &lt;?=toHTML($terms)?&gt;&lt;br /&gt;
Results: &lt;?=$result_count?&gt;&lt;br /&gt;&lt;!-- No need to escape, this is numeric --&gt;
&lt;/p&gt; </code></pre>
<p>In this primitive example, you need to remember &#8220;toHTML()&#8221; every time you print out text, which is a weak spot. In some systems it takes extra code to NOT encode it in HTML.</p>
<p>The toHTML()-function will replace &lt; with &amp;lt; etc. Maybe it inserts &lt;br /&gt; at the end of lines, but then you should check that the search terms doesn&#8217;t have more than one line. Maybe you should check for that anyway. If it&#8217;s a comment for all users to see, maybe you want some extra checks here. like collapsing 500 newlines in a to two. Maybe like this: &lt;%=toHTML(sanitize($terms))%&gt;</p>
<p>But why not sanitize it while getting it from the browser, so we get sane data? Well, it is a good time to check for very bad input, like binary data. But I like to have the original input in the database. That is always a good thing, for example if you change something in how you display your data. Maybe you want to change how you handle newline characters. Maybe you have improved your sanitizing method.<br />
With this method you just change your code, and you&#8217;re done. If you change the data before you put it in your database, you will need to change your old data. This can be very complicated, sometimes impossible. (For example if a bug removes data.)</p>
<h3 id="toc-summary">Summary</h3>
<ul>
<li>Know that you have layers, and which ones</li>
<li>Insert abstraction layers when they add value</li>
<li>A layer can only know about the layer directly above or below</li>
<li>When data moves from one layer to another, convert it accordingly</li>
<li>Do the conversion in a common place so you only have the code once, and maybe even in a way so you don&#8217;t need to remember to do it every time</li>
</ul>
<p>Doing this the right way makes simple code, pretty results and solves most security issues.</p>
]]></content:encoded>
			<wfw:commentRss>http://myplace.dk/2009/11/26/layers-pattern-for-security/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.dk-domæner kan tages fra dig!</title>
		<link>http://myplace.dk/2009/11/21/dk-domaener-kan-tages-fra-dig/</link>
		<comments>http://myplace.dk/2009/11/21/dk-domaener-kan-tages-fra-dig/#comments</comments>
		<pubDate>Sat, 21 Nov 2009 20:32:05 +0000</pubDate>
		<dc:creator>Niels</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://myplace.dk/?p=141</guid>
		<description><![CDATA[

Den korte udgave
Sagen indtil nu
Mine kommentarer til afgørelsen
Hvad skal vi andre gøre?
Andre bemærkninger om Orango ApS
Relaterede links


Den korte udgave
<p>Peter Veileborg har haft domænet orango.dk i 9 år, og bruger det som sin online identitet, da han er kendt under navnet &#8220;Orango&#8221;. Det domæne bliver nu taget fra ham af domæneklagenævnet, fordi firmaet Orango ApS (stiftet [...]]]></description>
			<content:encoded><![CDATA[<div class="toc">
<ol>
<li><a href="http://myplace.dk/2009/11/21/dk-domaener-kan-tages-fra-dig/#toc-den-korte-udgave">Den korte udgave</a></li>
<li><a href="http://myplace.dk/2009/11/21/dk-domaener-kan-tages-fra-dig/#toc-sagen-indtil-nu">Sagen indtil nu</a></li>
<li><a href="http://myplace.dk/2009/11/21/dk-domaener-kan-tages-fra-dig/#toc-mine-kommentarer-til-afgrelsen">Mine kommentarer til afgørelsen</a></li>
<li><a href="http://myplace.dk/2009/11/21/dk-domaener-kan-tages-fra-dig/#toc-hvad-skal-vi-andre-gre">Hvad skal vi andre gøre?</a></li>
<li><a href="http://myplace.dk/2009/11/21/dk-domaener-kan-tages-fra-dig/#toc-andre-bemrkninger-om-orango-aps">Andre bemærkninger om Orango ApS</a></li>
<li><a href="http://myplace.dk/2009/11/21/dk-domaener-kan-tages-fra-dig/#toc-relaterede-links">Relaterede links</a></li>
</ol>
</div>
<h3 id="toc-den-korte-udgave">Den korte udgave</h3>
<p>Peter Veileborg har haft domænet orango.dk i 9 år, og bruger det som sin online identitet, da han er kendt under navnet &#8220;Orango&#8221;. Det domæne bliver nu taget fra ham af domæneklagenævnet, fordi firmaet Orango ApS (stiftet i januar i år) bedre kan lide det, end deres nuværende orango.nu. Hvordan pokker kan de få lov til det? Hvad skal vi andre gøre for ikke at blive udsat for det samme?</p>
<p><span id="more-141"></span></p>
<p>&#8230;og så den lange. ;-)</p>
<h3 id="toc-sagen-indtil-nu">Sagen indtil nu</h3>
<p><strong>Januar 2000</strong>: Peter Veileborg er kendt under navnet Orango, og vælger at registrere domænet <a href="http://orango.dk">orango.dk</a> til email. Et par år senere laver han også en simpel hjemmeside.</p>
<p><strong><img class="alignright size-full wp-image-166" title="Orango ApS logo" src="http://myplace.dk/wordpress/wp-content/uploads/2009/11/orango-logo.jpg" alt="Orango ApS logo" width="174" height="42" />Januar 2009</strong>: Firmaet Orango ApS stiftes, og de markedsfører sig på domænet <a href="http://orango.nu">orango.nu</a>.</p>
<p><strong>Lidt senere i 2009</strong>: Orango ApS synes det er problematisk, at kunder leder efter hjemmesiden på orango.dk i stedet for orango.nu.</p>
<p><strong>Marts 2009</strong>: Orango ApS forsøger at købe orango.dk af Peter Veileborg for 500 kr., men Peter siger at domænet ikke er til salg. Han gør dog opmærksom på at en større pris kan få ham til at genoverveje.</p>
<p><strong>Maj 2009</strong>: Orango ApS klager til <a href="http://www.domaeneklager.dk/">domæneklagenævnet</a>.</p>
<p><strong>November 2009</strong>: <em>Domænet orango.dk bliver frataget Peter Veileborg og overdraget til Orango ApS</em>, med effekt fra 4. december 2009.</p>
<h3 id="toc-mine-kommentarer-til-afgrelsen">Mine kommentarer til afgørelsen</h3>
<p>Helt overordnet synes jeg afgørelsen ikke bare er forkert, den er uretfærdig, en hån mod danske forbrugere og på dette punkt er jeg flov over at være dansker. Det styrker den tendens jeg oplever flere og flere brokke sig over: Firmaer er vigtigere i Danmark end borgerne.</p>
<p>Her er mine kommentarer til Orango ApS&#8217;s klagepunkter: (citater er fra <a href="http://www.domæneklager.dk/uploads/2009-0099orango.dk">afgørelsen</a> (PDF))</p>
<blockquote><p>Klageren har gjort gældende,</p>
<p>• at klageren benytter betegnelsen ”Orango” som selskabsnavn og varemærke,</p></blockquote>
<p>Her står de to parter lige, de har samme navn.</p>
<blockquote><p>• at klageren alene henvender sig til kunder på det danske marked,</p></blockquote>
<p>Her står de to parter lige, da Peter Veileborg er dansker, og har lige så stor tilknytning til &#8220;.dk&#8221;.</p>
<blockquote><p>• at klageren derfor har en væsentlig interesse i at kunne gøre brug af domænenavnet ”orango.dk”,</p></blockquote>
<p>Det har Peter Veileborg også. Efter 9 år er det en del af hans &#8220;online identitet&#8221; &#8211; folk er vant til at kontakte ham på den adresse, og han er formentlig registreret i mange systemer med den. Så stadig lige.</p>
<blockquote><p>• at der ikke tidligere var nogen hjemmeside på domænenavnet ”orango.dk”,</p></blockquote>
<p>Jeg kan ikke se hvordan det kan være et argument. Et domænenavn bruges til meget andet end hjemmesider. I dette tilfælde er der mindst tale om email, og at det er hans online identitet. I øvrigt har der teknisk set været en hjemmeside siden 2002, og dermed 7 år længere end Orango ApS har eksisteret. Hjemmesiden burde skubbe afgørelsen en anelse til Peter Veilborgs fordel.</p>
<blockquote><p>• at den hjemmeside, som indklagede efter klagerens henvendelse har etableret under domænenavnet ”orango.dk”, ikke har nogen særlig tilknytning hertil, og derfor kan flyttes til et hvilket som helst andet domænenavn,</p></blockquote>
<p>Det er korrekt, men hjemmesiden er jo heller ikke hans primære formål med domænet. Det primære formål er email, og kan være meget vanskeligt at skifte email-adresse.</p>
<blockquote><p>• at indklagede har tilkendegivet at ville sælge domænenavnet ”orango.dk” til klageren, hvis prisen var tilstrækkelig høj,</p></blockquote>
<p>Jeg har læst deres kommunikation igennem, og to ting er meget tydeligt for mig: For det første er domænet ikke til salg, og har aldrig været registreret for at sælge det igen. For det andet kender han er han klar over at han (som i stort set alle tilfælde) er klar til at sælge, hvis prisen er høj nok. Det betyder sandsynligvis at der skal kompenseres for ulemperne (hvilket i sig selv er noget mere end de 500 kr. de bød), plus et beløb som gør det interessant at indvolvere sig.</p>
<blockquote><p>• at domænenavnet ”orango.dk” derfor bør overføres til klageren.</p></blockquote>
<p>Jeg fik det til præcist nul gode grunde.</p>
<p>I afgørelsen har nævnet en række bemærkninger, dvs. begrundelser for afgørelsen. Der snakker de bla. om god skik. Jeg undrer mig over hvad Peter Veilborg kan have gjort, som er imod god domæneskik. Det er Orango ApS der har valgt at benytte et firmanavn, hvor .dk-domænet ikke var ledigt. Da de valgte at benytte domænet orango.nu kunne de have valgt at navngive firmaet Orango.nu ApS. I betragtning af at det er et internet-baseret firma er det overhovedet ikke en upraktisk løsning.</p>
<p>Derefter de at domænet benyttes til email, online identitet og hjemmesiden. Derefter snakker de om at hjemmesiden let kan flyttes, og ser bort fra de to andre punkter.</p>
<blockquote><p>På denne baggrund er det klagenævnets opfattelse, at det har en langt større interesse og værdi for klageren end for indklagede at kunne gøre brug af domænenavnet ”orango.dk”, og at indklagede, for hvem dette har været kendeligt, som følge heraf har optrådt i strid med god domænenavnsskik ved at nægte at afstå dette domænenavn til klageren på rimelige vilkår.</p></blockquote>
<p>Hvis Orango ApS har større interesse end Peter Veilborg, så er der udelukkende tale om entusiasme. På nuværende tidspunkt skulle det ikke overraske mig om en helt tredje har endnu større interesse i domænet, da det nu har været omtalt i rigtigt mange medier.</p>
<p>Hvis domænet har større værdi for Orango ApS end Peter Veilborg, er det udelukkende fordi Orango ApS har båret sig uheldigt ad. Jeg kan ikke se hvorfor Peter Veilborg skal bøde for dette.</p>
<p>Som jeg ser det har han nægtet at afstå domænenavnet på <em>urimelige</em> vilkår, hvilket er ganske forståeligt. Selvfølgelig skal have en ordentlig kompensation, hvis domænet skal overdrages. Jeg mener at han viste tydeligt nok, at det var et spørgsmål om en realistisk kompensation. Og jeg mener at Orango ApS viste tydeligt nok, at det var de ikke interesseret i at give. Og de var da slet ikke interesseret i at betale et beløb, som bare minder om den værdi, de tilsyneladende mener domænet har for dem. Jeg har en fornemmelse af at de 500 kr. handlede mere om at have et argument til klagen, end at de reelt var parate til at købe domænet.</p>
<p>Man kan argumentere for at Orango ApS blot har benyttet sin ret til at få sin sag afprøvet ved et nævn, og at det er nævnets ansvar at komme med en retfærdig afgørelse. Men på den anden side er det ikke alt man har ret til at gøre, som er moralsk i orden.</p>
<h3 id="toc-hvad-skal-vi-andre-gre">Hvad skal vi andre gøre?</h3>
<p><img class="alignright size-full wp-image-167" title="Joke-logo - hvem vil have mit domæne?" src="http://myplace.dk/wordpress/wp-content/uploads/2009/11/joke-logo.png" alt="joke-logo" width="203" height="46" />Ud over at det er synd for Peter Veileborg, så er jeg da også nervøs for mit eget domæne. Og mine venners domæner. Og stort set alle andre .dk-domæner, som bliver brugt privat. Tilsyneladende er .dk-domæner til privat brug noget man har, indtil et firma får lyst til at overtage. Det er da en særdeles bekymrende tanke.</p>
<p>Jeg identificerer mig vane-mæssigt ved at modtage en mail. Hvis jeg mister mit domæne, kan jeg ikke identificere mig over for et hav af tjenester. Det vil være et kæmpe problem for mig. Faktisk vil den nye domæne-ejer have overtaget meget af min identitet, en ting som normalt er ulovligt.</p>
<p>Tilsyndeladende er vi nødt til at skifte domæne nu, mens vi har muligheden for at gøre det i vores eget tempo.</p>
<h3 id="toc-andre-bemrkninger-om-orango-aps">Andre bemærkninger om Orango ApS</h3>
<p>Alle laver fejl, og selv grove fejl skal man være parate til at tilgive. Men inden du overvejer at handle med Orango ApS, bør du også vide følgende.</p>
<p>1) Deres logomand er ikke noget de selv har lavet. Hvor figuren oprindeligt stammer fra ved jeg ikke, men den kan bla. købes hos <a href="http://www.istockphoto.com/stock-photo-4374786-i-found-you-.php">iStockphoto</a>, og bliver brugt <a href="http://www.tineye.com/search/58a7a292e628c8f2994b70a4465d565769fa514a">mange andre steder</a>. I øvrigt virker deres tilpasninger (først og fremmest hovedet udskiftet med et logo) nu heller ikke helt professionelt. Det er tydeligvis ikke lavet i 3D, men med simpelt klippe/klistre i et Photoshop-agtigt program.<em><br />
Det er da flovt, at et firma som lever af at lave design, ikke kan lave sit eget uden at basere det på et købt standard-produkt.</em></p>
<p><img class="aligncenter size-full wp-image-168" title="Logo-mand i mange versioner" src="http://myplace.dk/wordpress/wp-content/uploads/2009/11/logo-mand.jpg" alt="Logo-mand i mange versioner" width="478" height="150" /></p>
<p>2) I skrivende stund har deres hjemmeside et åbenlyst og amatøragtigt <a href="http://www.orango.nu/search/?q=&lt;h1+style%3D&quot;border%3A+50px+solid+red%3B&quot;&gt;Her+kan+hvad+som+helst+indsættes&lt;%2Fh1&gt;">sikkerhedshul</a>, en såkaldt XSS (Cross-Site-Scripting)-fejl. Klik på linket (og bladr ned i bunden) for at teste om hullet stadig er uændret, eller se screenshot herunder.<br />
Konsekvensen er fx. at jeg kan lave et specielt link til orango.nu, som teknisk set giver dig en side fra deres server, men som jeg modificere helt som jeg har lyst. Hvis der fx. er login-mulighed, kan jeg ændre systemet så folks brugernavn og kodeord bliver rapporteret til mig, uden de selv kan se der sker noget usædvanligt.<em><br />
Dette er utroligt amatøragtigt, for et firma som ellers burde leve af at have styr på den slags.</em></p>
<div id="attachment_169" class="wp-caption aligncenter" style="width: 296px"><a href="http://myplace.dk/wordpress/wp-content/uploads/2009/11/XSS-screenshot.png"><img class="size-medium wp-image-169" title="Screenshot med sikkerhedshul" src="http://myplace.dk/wordpress/wp-content/uploads/2009/11/XSS-screenshot-286x300.png" alt="Screenshot med sikkerhedshul" width="286" height="300" /></a><p class="wp-caption-text">Klik for større billede</p></div>
<p>3) Jeg har kigget lidt på den første side jeg kunne finde, som de har lavet. Det er langt fra det værste jeg har set, men det bærer meget præg af at være baseret på kode de har fundet rundt omkring på nettet, i stedet for at lave tingene selv. Det er ikke uacceptabelt, men det er absolut heller ikke professionelt.</p>
<p>3a) Orango ApS har lavet en hjemmeside for <a href="http://www.warmdalblomster.dk/">Warmdal Blomster</a>. Butikken har fået en meget rosende anmeldelse flere steder (<a href="http://mitkbh.dk/warmdal-blomster"><span style="text-decoration: line-through;">MitKBH</span></a>, <a href="http://www.aok.dk/shopping/warmdal-blomster/?p=users">Alt om København</a>, <a href="http://thecopenhagenguide.com/2043/warmdal-blomster">the copenhagen guide</a> m. fl.) af &#8220;KasperFP&#8221;. På <a href="http://www.dbkcph.dk/2009/04/pasken-star-for-dren-og-blomster-i.html">sin egen blog</a> skriver KasperFP stolt om at han har lavet siden, at han er medejer af Orango ApS og at butikken tilhører hans svigerforældre. Der er ikke noget ulovligt i at rose et produkt uden at fortælle at man er dybt indvolveret i det, men det betragtes generelt som meget umoralsk og upopulært.</p>
<p>Og så selvfølgelig de åbenlyse ud fra denne sag:</p>
<p>4) De har ikke sans for håndtering af domænenavne</p>
<p><img class="alignright size-full wp-image-166" title="Orango.nu logo mockup" src="http://myplace.dk/wordpress/wp-content/uploads/2009/11/orangonu-logo.png" alt="Orango.nu logo mockup" width="251" height="42" />5) De har intet imod at trumle den lille mand ned, for at få sin vilje. Heller ikke selv om der er andre muligheder der er lige så gode, og som ikke går ud over andre.</p>
<p>Så kort sagt: De er amatøragtige, inkompetence og umoralske. Og det vil jeg egentlig fastholde, uanset hvad de har lavet af gode ting.</p>
<h3 id="toc-relaterede-links">Relaterede links</h3>
<ul>
<li>Om kampen: <a href="http://orangotilbage.dk/">Orango-Tilbage</a></li>
<li>Blogindlæg: <a href="http://new.czar.dk/?p=547">Danske TLD domæner er ikke længre sikre for privatpersoner.. Go EURid!</a></li>
<li>Blogindlæg: <a href="http://peter.binderup.dk/blog/2009/11/21/ejeren-af-domnet-orangodk-skal-overdrage-det-til-orangonu.html">Ejeren af domænet orango.dk skal overdrage det til orango.nu</a></li>
<li>Nyhedsartikel: <a href="http://www.comon.dk/nyheder/Domaene-ejer-mister-navnet-efter-ni-ar-1.247341.html">Domæne-ejer mister navnet efter ni år</a></li>
<li>Underskriftindsamling: <a href="http://domaene-retfaerdighed-tak.skrivunder.dk">Domænefriheden tilbage &#8211; tak!</a></li>
<li>Facebook gruppe: <a href="http://www.facebook.com/group.php?gid=326316250011">orango.dk skal forsat ejes af Peter Veileborg</a></li>
<li>Klip fra Dr Update: <a href="http://www.dr.dk/nettv/update/?video={cc7e58df-fbcb-41ee-85ed-ea674dd41e4f}">Smidt ud fra egen hjemmeside</a></li>
</ul>
<p><strong>UPDATE 2009-11-22</strong>: Tilføjet link til blogindlægget &#8220;<a href="http://peter.binderup.dk/blog/2009/11/21/ejeren-af-domnet-orangodk-skal-overdrage-det-til-orangonu.html">Ejeren af domænet orango.dk skal overdrage det til orango.nu</a>&#8221;<br />
<strong>UPDATE 2009-11-22</strong>: Tilføjet punkt 3a i listen over hvad Orango ApS ellers gør forkert.<br />
<strong>UPDATE 2009-11-22</strong>: Tilføjet diverse illustrationer. Jeg skulle mene at jeg overholder ophavsretsloven mm. under citater, parodier og illustration. (Det man i den amerikanske udgave kalder &#8220;fair use&#8221;.)<br />
<strong>UPDATE 2009-11-22</strong>: Overstreget link til MitKBH, da jeg opdagede at han der indrømmer sin relation. Ret skal være ret.<br />
<strong>UPDATE 2009-11-29</strong>: Tilføjet link til &#8220;Orango-Tilbage&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://myplace.dk/2009/11/21/dk-domaener-kan-tages-fra-dig/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>GratisDNS tip</title>
		<link>http://myplace.dk/2009/11/01/gratisdns-tip/</link>
		<comments>http://myplace.dk/2009/11/01/gratisdns-tip/#comments</comments>
		<pubDate>Sun, 01 Nov 2009 18:54:28 +0000</pubDate>
		<dc:creator>Niels</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[dansk]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://myplace.dk/?p=116</guid>
		<description><![CDATA[<p>En ting jeg godt kan lide ved GratisDNS er, at det er så nemt at scripte de fleste handlinger. Fx. at tilføje diverse records.
</p>

Log ind
Gå ind på den side som gør det, dit script skal gøre. Fx. for at tilføje en record, skal du gå ind på den side hvor du angiver detaljerne
Ret formens method [...]]]></description>
			<content:encoded><![CDATA[<p>En ting jeg godt kan lide ved <a href="http://gratisdns.dk">GratisDNS</a> er, at det er så nemt at scripte de fleste handlinger. Fx. at tilføje diverse records.<br />
<span id="more-116"></span></p>
<ol>
<li>Log ind</li>
<li>Gå ind på den side som gør det, dit script skal gøre. Fx. for at tilføje en record, skal du gå ind på den side hvor du angiver detaljerne</li>
<li>Ret formens method fra POST til GET. Det kan man ikke med en helt almindelig browser, men med <a href="http://getfirebug.com/">Firebug</a> er det nemt, med <a href="http://chrispederick.com/work/web-developer/">Web Developer</a> er det endnu nemmere. (De er begge plugins til Firefox.) Chrome kan vist gøre det uden plugins.</li>
<li>Udfyld og submit</li>
<li>Kopier urlen du nu er inde på</li>
<li>Dit script kan nu tilpasse data i urlen, og blot downloade den.</li>
</ol>
<h3 id="toc-eksempel-gmail">Eksempel &#8211; Gmail</h3>
<p>Hvis man vil bruge <a href="http://www.google.com/a/cpanel/domain/new">Gmail på dit eget domæne</a> skal du tilføje et hav af MX-records til dit domæne. Det skal man ikke gøre på ret mange domæner før det bliver kedeligt. (Jeg begyndte at kede mig inden jeg blev færdig med et første domæne.)</p>
<p>I Ubuntu Linux brugte jeg dette simple bash-script (kræver at curl er installeret):</p>
<pre class="codeblock"><code>#!/bin/bash
USER=myplacedk
PASSWD=god
DOMAIN=myplace.dk
HOST=$DOMAIN

function addMX() {
 pref=$1
 exchanger=$2
 curl --silent "https://ssl.gratisdns.dk/editdomains4.phtml?user=<strong>$USER</strong>&amp;password=<strong>$PASSWD</strong>&amp;user_domain=<strong>$DOMAIN</strong>&amp;action=addmxrecord&amp;host=<strong>$HOST</strong>&amp;exchanger=<strong>$exchanger</strong>&amp;preference=<strong>$pref</strong>&amp;button=Tilf%F8j+MX+recorden" &gt; /dev/null
}

addMX 10 aspmx.l.google.com &amp;&amp;
addMX 20 alt1.aspmx.l.google.com &amp;&amp;
addMX 20 alt2.aspmx.l.google.com &amp;&amp;
addMX 30 aspmx2.googlemail.com &amp;&amp;
addMX 30 aspmx3.googlemail.com &amp;&amp;
addMX 30 aspmx4.googlemail.com &amp;&amp;
addMX 30 aspmx5.googlemail.com</code></pre>
<p>Scriptet giver ingen statusmeddelelser, så kig selv om de er dukket op som de skal.</p>
<h3 id="toc-eksempel-2-google-chat">Eksempel 2 &#8211; Google Chat</h3>
<p>Hvis man vil bruge Google Chat på sit eget domæne, og chatte med folk på et andet domæne, skal der en masse SRV-records til. Dem tilføjer jeg sådan her:</p>
<pre class="codeblock"><code>
#!/bin/bash
USER=myplacedk
PASSWD=god
DOMAIN=myplace.dk
HOST=$DOMAIN

function addSRV() {
 host=$1
 pref=$2
 weight=$3
 port=$4
 exchanger=$5
 curl --silent "https://ssl.gratisdns.dk/editdomains4.phtml?user=$USER&amp;password=$PASSWD&amp;user_domain=$DOMAIN&amp;host=$host&amp;exchanger=$exchanger&amp;preference=$pref&amp;weight=$weight&amp;port=$port&amp;action=addsrvrecord&amp;button=Tilf%F8j+SRV+recorden" &gt; /dev/null
}

addSRV _xmpp-server._tcp.$HOST 5 0 5269 xmpp-server.l.google.com
addSRV _xmpp-server._tcp.$HOST 20 0 5269 xmpp-server1.l.google.com
addSRV _xmpp-server._tcp.$HOST 20 0 5269 xmpp-server2.l.google.com
addSRV _xmpp-server._tcp.$HOST 20 0 5269 xmpp-server3.l.google.com
addSRV _xmpp-server._tcp.$HOST 20 0 5269 xmpp-server4.l.google.com
addSRV _jabber._tcp.$HOST 5 0 5269 xmpp-server.l.google.com
addSRV _jabber._tcp.$HOST 20 0 5269 xmpp-server1.l.google.com
addSRV _jabber._tcp.$HOST 20 0 5269 xmpp-server2.l.google.com
addSRV _jabber._tcp.$HOST 20 0 5269 xmpp-server3.l.google.com
addSRV _jabber._tcp.$HOST 20 0 5269 xmpp-server4.l.google.com
</code></pre>
<p><strong>Update 2009-11-07:</strong> Tilføjet eksempel til Google Chat</p>
]]></content:encoded>
			<wfw:commentRss>http://myplace.dk/2009/11/01/gratisdns-tip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spiders on caffeine</title>
		<link>http://myplace.dk/2009/10/12/spiders-on-caffeine/</link>
		<comments>http://myplace.dk/2009/10/12/spiders-on-caffeine/#comments</comments>
		<pubDate>Mon, 12 Oct 2009 11:22:31 +0000</pubDate>
		<dc:creator>Niels</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[english]]></category>
		<category><![CDATA[fun facts]]></category>

		<guid isPermaLink="false">http://myplace.dk/?p=70</guid>
		<description><![CDATA[<p>You may have seen these images before, but I think they are much more interesting with a bit of explanation of the drugs.</p>




<p><p class="wp-caption-text">Normal</p>
This is a typical spider web. This is the goal, what you should compare the other images with.







<p><p class="wp-caption-text">Marijuana</p>
This spider was given marijuana (or &#8220;hash&#8221;) before making the web. Marijuana makes you [...]]]></description>
			<content:encoded><![CDATA[<p>You may have seen these images before, but I think they are much more interesting with a bit of explanation of the drugs.</p>
<table border="0">
<tbody>
<tr>
<td>
<p><div id="attachment_75" class="wp-caption alignleft" style="width: 126px"><img class="size-full wp-image-75 " title="normal" src="http://myplace.dk/wordpress/wp-content/uploads/2009/10/normal.jpg" alt="Normal" width="116" height="126" /><p class="wp-caption-text">Normal</p></div></td>
<td>This is a typical spider web. This is the goal, what you should compare the other images with.</td>
</tr>
</tbody>
</table>
<table border="0">
<tbody>
<tr>
<td>
<p><div id="attachment_74" class="wp-caption alignleft" style="width: 126px"><img class="size-full wp-image-74" title="marijuana" src="http://myplace.dk/wordpress/wp-content/uploads/2009/10/marijuana.jpg" alt="Marijuana" width="116" height="126" /><p class="wp-caption-text">Marijuana</p></div></td>
<td>This spider was given marijuana (or &#8220;hash&#8221;) before making the web. Marijuana makes you slow and makes it hard to concentrate. The spider started just fine, but then it got lazy.</td>
</tr>
</tbody>
</table>
<p><span id="more-70"></span></p>
<table border="0">
<tbody>
<tr>
<td>
<p><div id="attachment_71" class="wp-caption alignleft" style="width: 126px"><img class="size-full wp-image-71" title="benzedrine" src="http://myplace.dk/wordpress/wp-content/uploads/2009/10/benzedrine.jpg" alt="Benzedrine" width="116" height="126" /><p class="wp-caption-text">Benzedrine</p></div></td>
<td>Benzedrine made this spider active. So active, it forgot to plan anything.</td>
</tr>
</tbody>
</table>
<table border="0">
<tbody>
<tr>
<td>
<p><div id="attachment_73" class="wp-caption alignleft" style="width: 126px"><img class="size-full wp-image-73" title="chloral-hydrate" src="http://myplace.dk/wordpress/wp-content/uploads/2009/10/chloral-hydrate.jpg" alt="Chloral Hydrate" width="116" height="126" /><p class="wp-caption-text">Chloral Hydrate</p></div></td>
<td>Chloral hydrate is (among other things) a sedative. This poor spider started nicely, and probably fell asleep.</td>
</tr>
</tbody>
</table>
<table border="0">
<tbody>
<tr>
<td>
<p><div id="attachment_72" class="wp-caption alignleft" style="width: 126px"><img class="size-full wp-image-72" title="caffeine" src="http://myplace.dk/wordpress/wp-content/uploads/2009/10/caffeine.jpg" alt="Caffeine" width="116" height="126" /><p class="wp-caption-text">Caffeine</p></div></td>
<td>This is the interesting part. This is what happens when you get too much caffeine. No planning, no system, worthless. Like the sedated spider, it never got to the part with the spirals.</p>
<p>Now let me ask all you software developers like me out there: Do you really want to create software, with large amounts of caffeine in your body?</p>
<p>And everybody else: Do you want to use software created like this?</td>
</tr>
</tbody>
</table>
<p>This experiment was invented in 1948, but these images are from a similar experiment performed by NASA in 1995.</p>
<p>Source: <a href="http://en.wikipedia.org/wiki/Effect_of_psychoactive_drugs_on_animals">Wikipedia - Effect of psychoactive drugs on animals</a></p>
<p>And by the way:</p>
<blockquote><p>In large amounts, and especially over extended periods of time, caffeine can lead to a condition known as caffeinism. Caffeinism usually combines caffeine dependency with a wide range of unpleasant physical and mental conditions including <em>nervousness, irritability, anxiety, tremulousness, muscle twitching (hyperreflexia), insomnia, headaches, respiratory alkalosis, and heart palpitations</em>.</p>
<p style="text-align: right; "><a href="http://en.wikipedia.org/wiki/Caffeine#Overuse">Wikipedia &#8211; Caffeine</a></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://myplace.dk/2009/10/12/spiders-on-caffeine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Livet som ikke-pirat</title>
		<link>http://myplace.dk/2009/10/05/livet-som-ikke-pirat/</link>
		<comments>http://myplace.dk/2009/10/05/livet-som-ikke-pirat/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 09:33:56 +0000</pubDate>
		<dc:creator>Niels</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[dansk]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[piracy]]></category>

		<guid isPermaLink="false">http://myplace.dk/?p=65</guid>
		<description><![CDATA[<p>Min kæreste hørte et par sjove toner i TV, og ville gerne have MP3&#8242;en. Jeg fandt hurtigt ud af at det var &#8220;The Cure &#8211; Close To Me&#8221;. Så den ville jeg da købe til hende.
</p>
Amazon.com
<p>På amazon.com fandt jeg en original, en remastered, et remix mix og diverse snask. Jeg vælger at købe den remasterede [...]]]></description>
			<content:encoded><![CDATA[<p>Min kæreste hørte et par sjove toner i TV, og ville gerne have MP3&#8242;en. Jeg fandt hurtigt ud af at det var <em>&#8220;The Cure &#8211; Close To Me&#8221;</em>. Så den ville jeg da købe til hende.<br />
<span id="more-65"></span></p>
<h3 id="toc-amazon-com">Amazon.com</h3>
<p>På amazon.com fandt jeg en original, en remastered, et remix mix og diverse snask. Jeg vælger at købe den remasterede og remixet.</p>
<blockquote><p><strong>We are sorry&#8230;</strong></p>
<p>We could not process your order. The sale of MP3 Downloads is currently <em>available only to US customers</em> located in the 48 contiguous states, Alaska, Hawaii, and the District of Columbia.</p>
<p>We apologize for any inconvenience this may have caused you.</p></blockquote>
<h3 id="toc-amazon-co-uk">Amazon.co.uk</h3>
<p>Nå, men så prøver jeg den mere lokale amazon.co.uk, som jeg flere gange før er blevet henvist til fra .com-versionen. Der finder jeg det samme musik.</p>
<blockquote><p><strong>Important Message</strong><br />
We&#8217;re sorry. We could not process your order because of <em>geographical restrictions</em> on the product which you were attempting to purchase. Please refer to the terms of use for this product to determine the geographical restrictions. We apologize for the inconvenience.</p></blockquote>
<h3 id="toc-tdc-musik">TDC Musik</h3>
<p>Nå. Så prøver vi en dansk butik. Hos TDC Musik har de masser af numre med The Cure. De har også masser af numre der hedder Close To Me. Jeg kan ikke søge på begge dele på én gang, og en manuel søgning blandt The Cure&#8217;s numre gav intet. (Indrømmet, jeg er utålmodig nu, måske er de der et sted.)</p>
<h3 id="toc-bilka">Bilka</h3>
<p>Så prøver jeg Bilka&#8217;s musik-butik:</p>
<blockquote><p>Fundne: 8<br />
Close To Me 	The Cure 	3:41<br />
Close To Me 	The Cure 	3:58<br />
Close To Me 	The Cure 	5:46<br />
Close To Me 	The Cure 	3:23<br />
Close To Me 	The Cure 	3:23<br />
Close To Me 	The Cure 	4:02 	WMA 192 	DKK 	9.95<br />
Close To Me 	The Cure 	3:40<br />
Close To Me 	The Cure 	3:38</p></blockquote>
<p>Først mente jeg at det var problematisk, at jeg ikke kunne se hvilke versioner der var tale om. Men det viser sig at være det mindste problem. Den der står &#8220;WMA&#8221; ved, er DRM-beskyttet. Det betyder, at den ikke kan afspilles på andet end den PC vi aldrig hører musik på. De andre står der intet ved, for de er ikke til salg.</p>
<h3 id="toc-itunes-music-store">iTunes Music Store</h3>
<p>iTunes har den. DRM-fri. Jeg skal bare lige finde en computer med Windows eller OS X, og så skal jeg lige installere iTunes. Jeg har også prøvet iTunes. Det er et fint program for dem der kan lide det, men jeg kan ikke. Det er et stort program som giver meget lidt værdi. Jeg skal jo bare vælge et nummer, betale  og downloade. Jeg vil meget gerne handle i ITMS &#8211; med en browser. Ligesom alle de andre online-butikker,</p>
<h3 id="toc-amazon-com-igen">Amazon.com igen</h3>
<p>Jeg giver ikke op uden kamp, så jeg prøver Amazon.com igen. Da produktet downloades er leveringsadressen jo ikke så væsentlig. Jeg ændrer derfor leveringsadressen til en amerikansk adresse. Jeg indtaster adresesn til den danske ambassade i USA. Men nej, jeg får samme besked som før.</p>
<h3 id="toc-jeg-giver-op">Jeg giver op!</h3>
<p>Jeg fandt en kopi på nettet. Jeg vil gerne betale, hvis bare jeg kan få lov.</p>
]]></content:encoded>
			<wfw:commentRss>http://myplace.dk/2009/10/05/livet-som-ikke-pirat/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>0,999&#8230; = 1</title>
		<link>http://myplace.dk/2009/03/29/09991/</link>
		<comments>http://myplace.dk/2009/03/29/09991/#comments</comments>
		<pubDate>Sun, 29 Mar 2009 20:53:48 +0000</pubDate>
		<dc:creator>Niels</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[fun facts]]></category>
		<category><![CDATA[math]]></category>

		<guid isPermaLink="false">http://myplace.dk/?p=24</guid>
		<description><![CDATA[<p>De fleste har svært ved at tro på, at 0,999&#8230; er lig med én. Og det var et nul, et komma og uendeligt mange ni-taller. Hvis er er rigtigt mange ni-taller, så er det cirka én. Men hvis der er uendeligt mange ni-taller, giver det præcist én.

Her er beviset, som fik mig overbevist (brøk-beviset):</p>
<p>0,333&#8230; = [...]]]></description>
			<content:encoded><![CDATA[<p>De fleste har svært ved at tro på, at 0,999&#8230; er lig med én. Og det var et nul, et komma og uendeligt mange ni-taller. Hvis er er rigtigt mange ni-taller, så er det cirka én. Men hvis der er uendeligt mange ni-taller, giver det præcist én.<br />
<span id="more-24"></span><br />
Her er beviset, som fik mig overbevist (brøk-beviset):</p>
<blockquote><p>0,333&#8230; = 1/3</p>
<p>0,666&#8230; =  2/3</p>
<p>0,999&#8230; =  3/3 = 1</p></blockquote>
<p>Men dette bevis er baseret på, at nul-komma-uendelig-mange-tre-taller er lig med 1/3. Her er et forsøg mere (ciffer-manipulation-beviset):</p>
<blockquote><p>x = 0,999&#8230;</p>
<p>10x = 9,999&#8230;</p>
<p>10x &#8211; x = 9,999&#8230; &#8211; 0,999&#8230;</p>
<p>9x = 9</p>
<p>x = 1</p>
<p>0,999&#8230; = 1</p></blockquote>
<p>Hvis ikke du er overbevist, så prøv at finde fejlen i beviset. ;-)</p>
<p>Nå, men det korte af det lange er: Uanset om man tror på det, er det korrekt. De professionelle matematikere er enige, og der er i øvrigt<a href="http://en.wikipedia.org/wiki/0.999..."> mange flere beviser på Wikipedia</a>.</p>
<p>Det sjove for mig, er folks reaktioner på min påstand. Jeg har observeret 4 forskellige:</p>
<ul>
<li>Er enig</li>
<li>Giver mig ret, efter at have set et bevis eller to</li>
<li>Tror på mig uden at forstå det</li>
<li>Nægter at tro på det, trods beviser og at alle professionelle matematikere er enige om at det er sandt</li>
</ul>
<p>Hvilken type er du? ;-)</p>
]]></content:encoded>
			<wfw:commentRss>http://myplace.dk/2009/03/29/09991/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

