<?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>blog.haraldkraft.de &#187; General</title>
	<atom:link href="http://blog.haraldkraft.de/category/general/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.haraldkraft.de</link>
	<description>Blog Project of Harald Kraft</description>
	<lastBuildDate>Thu, 08 Jul 2010 20:32:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<item>
		<title>Enable / Disable EDGE on iPhone without jailbreak and toggles</title>
		<link>http://blog.haraldkraft.de/2010/07/enable-disable-edge-on-iphone-without-jailbreak-and-toggles/</link>
		<comments>http://blog.haraldkraft.de/2010/07/enable-disable-edge-on-iphone-without-jailbreak-and-toggles/#comments</comments>
		<pubDate>Mon, 05 Jul 2010 22:21:06 +0000</pubDate>
		<dc:creator>Harald Kraft</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[edge]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[jailbreak]]></category>

		<guid isPermaLink="false">http://blog.haraldkraft.de/?p=138</guid>
		<description><![CDATA[After a long history of incidents/accidents, I&#8217;ve been using my iPhone 3GS (new bootrom) with regular iOS4 for a couple of days. However, I had to do without any mobile internet &#8211; even though my contract was fine and it had been working just fine with 3.1.2. I&#8217;ve pretty much tried every instruction that&#8217;s out [...]]]></description>
			<content:encoded><![CDATA[<p>After a long history of incidents/accidents, I&#8217;ve been using my iPhone 3GS (new bootrom) with regular iOS4 for a couple of days. However, I had to do without any mobile internet &#8211; even though my contract was fine and it had been working just fine with 3.1.2.</p>
<p>I&#8217;ve pretty much tried every instruction that&#8217;s out there which has anything to do with enabling mobile internet. Removing SIM-card, resetting APN (even though my provider doesn&#8217;t even need any APN settings), completely resetting network settings &#8211; along with disabling+enabling mobile data connections and/+ 3G for a thousand times. The &#8220;E&#8221; or the &#8220;3G&#8221; was showing up fine (depending which one I enabled), nevertheless, no connection could be made from any app.</p>
<p><span id="more-138"></span><br />
Then I remembered something from previous days: I was using SBsettings along with toggles (one for EDGE, one for 3G), and I usually enabled or disabled both of them at the same time. Enabled them when I needed mobile internet, disabled them in order to save battery. So, depending on whether 3G was available, the bar was showing &#8220;3G&#8221; or just &#8220;E&#8221; &#8211; however, it was also still showing &#8220;E&#8221; even when I disabled both 3G and EDGE via toggles. I.e., an &#8220;E&#8221; was showing, but there was no connection &#8211; any app would confirm no connection. Furthermore, if I had EDGE disabled via toggle, I could enable 3G &#8211; and get a shiny &#8220;3G&#8221; &#8211; but still no connection possible.</p>
<p>So, the fact that if &#8211; in the current state with iOS4 &#8211; I disabled mobile data connections and there showing <strong>no</strong> &#8220;E&#8221; at all, made me presume that in earlier days my &#8220;mobile data connections&#8221; was always enabled and I was just switching EDGE and/+ 3G on and off. This could also mean &#8211; with remembrance of the &#8220;E&#8221; always showing in earlier days &#8211; that when I enabled mobile data connection now, I could enable 3G all I wanted, there would be no connection if EDGE was disabled (which I couldn&#8217;t enable, since I&#8217;m on iOS4 without toggles).</p>
<p>On order to prove or test this, I had to find a way to enable EDGE without the availability of a jailbreak and therefore with a lack of toggles. My dear friend <a href="http://blog.haraldkraft.de/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2VpbnNlbGYuY29t">Andre</a> (special thx again) had a diff run on his iTunes MobileSync backup &#8211; once with EDGE enabled and once with EDGE disabled via toggle. He came to the following result:</p>
<p>In the backup file <em>d67ab43d1c47dd60d7cf3a7a3939775f6938a8ef.mddata</em> (3.x) or <em>8218978e4ab0a48035bb92653145a6be872ea858</em> (4.0) you will find the following excerpt (note the &#8220;ip<strong>1</strong>&#8220;):</p>
<p><code>&lt;string&gt;com.apple.CommCenter (ip1)&lt;/string&gt;<br />
&lt;key&gt;com.apple.CommCenter&lt;/key&gt;<br />
&lt;dict&gt;<br />
&nbsp;&nbsp;&nbsp;	&lt;key&gt;AllowNetworkAccess&lt;/key&gt;<br />
&nbsp;&nbsp;&nbsp;	&lt;integer&gt;1&lt;/integer&gt;<br />
&nbsp;&nbsp;&nbsp;	&lt;key&gt;Available&lt;/key&gt;<br />
&nbsp;&nbsp;&nbsp;	&lt;integer&gt;1&lt;/integer&gt;</code><br />
The integer following the <em>Available</em>-node switches between 1 (EDGE toggle on) and 0 (EDGE toggle off). That basically meant, that for enabling EDGE without a toggle, I had to alter this value and get it back into my iPhone.</p>
<p>Simple way to do it:</p>
<ol>
<li>Backup/Sync iPhone</li>
<li>Restore iPhone</li>
<li>manually edit the above file (depending on your OS version) in the current backup folder</li>
<li>Recover iPhone with the backup you created and edited</li>
</ol>
<p>That&#8217;s it &#8211; it worked for me. EDGE seems to be enabled, and I can use the OS switches for data connection and 3G as I like, they work, as well, as expected+desired.</p>
<p>Hope this helps.</p>
 <img src="http://blog.haraldkraft.de/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=138" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.haraldkraft.de/2010/07/enable-disable-edge-on-iphone-without-jailbreak-and-toggles/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Computer gibberish in movie</title>
		<link>http://blog.haraldkraft.de/2010/06/computer-gibberish-in-movie/</link>
		<comments>http://blog.haraldkraft.de/2010/06/computer-gibberish-in-movie/#comments</comments>
		<pubDate>Mon, 21 Jun 2010 22:52:20 +0000</pubDate>
		<dc:creator>Harald Kraft</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Life and People]]></category>
		<category><![CDATA[gibberish]]></category>
		<category><![CDATA[high definition]]></category>
		<category><![CDATA[movie]]></category>

		<guid isPermaLink="false">http://blog.haraldkraft.de/?p=122</guid>
		<description><![CDATA[We all know those scenes from movies, where we see a computer screen while the NOC-list is being copied or when someone logs into a mainframe in order to disable the power of half a city (via SSH btw). Some are done well or very well (as the mentioned SSH one) others poorly researched or [...]]]></description>
			<content:encoded><![CDATA[<p>We all know those scenes from movies, where we see a computer screen while the NOC-list is being copied or when <em>someone</em> logs into a mainframe in order to disable the power of half a city (via SSH btw). Some are done well or very well (as the mentioned SSH one) others poorly researched or even plain lazy.<br />
While watching such scenes, we usually immediately recognize whether it&#8217;s authentic or just crap. Nowadays modern high resolution+definiton movie formats make it even possible to pause the movie and verify all the text that we see on computer screens in such scenes.</p>
<p>Recently, when I watched the (quite brutal) movie &#8220;Unthinkable&#8221; I saw a real killer:</p>
<p><span id="more-122"></span><br />
<a href="http://blog.haraldkraft.de/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL2Jsb2cuaGFyYWxka3JhZnQuZGUvd3AtY29udGVudC91cGxvYWRzLzIwMTAvMDYvdGhlLXVudGhpbmthYmxlX2NvbXB1dGVyLWdpYmJlcmlzaC5wbmc="><img src="http://blog.haraldkraft.de/wp-content/uploads/2010/06/the-unthinkable_computer-gibberish-300x162.png" alt="Computer screen with gibberish from &quot;The Unthinkable&quot;" title="the-unthinkable_computer-gibberish" width="300" height="162" class="aligncenter size-medium wp-image-121" /></a></p>
<p>We see some technician punching gibberish into a spreadsheet already filled with a lot more gibberish, haha.<br />
And it gets even better if you consider what the guy typing is actually doing. See the following spoiler to find out:</p>

<div class='easySpoilerWrapper'>

<table class='easySpoilerTable' border='0' style='text-align:center;' align='center' bgcolor='FFFFFF'>

<tr><th class='easySpoilerTitleA'  style='text-align:left;vertical-align:middle;font-size:120%'>Spoiler Inside</th>
<th class='easySpoilerTitleB'  style='text-align:right;vertical-align:middle;font-size:100%'><INPUT type='button' id='spoilerDiv49e78001_action' class='easySpoilerButton' value="Show" onclick='wpSpoilerToggle("spoilerDiv49e78001",true,"Show","Hide");' align='right'></th>
</tr>

<tr><td class='easySpoilerRow' colspan='2'><div><div id=spoilerDiv49e78001 class='easySpoilerSpoils' style='display:none; white-space:wrap; vertical-align:middle;'>
He is defusing a huge bomb with his hooked up laptop.
</div></div></td></tr>
</table>
<div class='easySpoilerConclude'><table class='easySpoilerTable' border='0' style='text-align:center;' frame='box' align='center' bgcolor='FFFFFF'><tr><th class='easySpoilerEnd' style='width:100%'></th><td class='easySpoilerEnd' style='white-space:nowrap;' colspan='2'></td></tr><tr><td class='easySpoilerEnd' colspan='2'></td></tr></table></div>
</div>

<p>Well &#8211; so much for today and a real funny idea for a computer screen.<br />
And as a side note: Carrie-Anne Moss also plays the main actress in The Unthinkable <img src='http://blog.haraldkraft.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
 <img src="http://blog.haraldkraft.de/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=122" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.haraldkraft.de/2010/06/computer-gibberish-in-movie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Opera and innerHTML vs. createTextNode()</title>
		<link>http://blog.haraldkraft.de/2010/01/opera-and-innerhtml-vs-createtextnode/</link>
		<comments>http://blog.haraldkraft.de/2010/01/opera-and-innerhtml-vs-createtextnode/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 00:18:26 +0000</pubDate>
		<dc:creator>Harald Kraft</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://blog.haraldkraft.de/?p=102</guid>
		<description><![CDATA[Recently I came across the situation where I created a webpage on which I wanted to include some raw XML data in a &#60;textarea&#62; so the user could see that XML data including all tags and stuff. What made the setup special was, that in this scenario I didn&#8217;t just put a predefined XML formatted [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I came across the situation where I created a webpage on which I wanted to include some raw XML data in a &lt;textarea&gt; so the user could see that XML data including all tags and stuff. What made the setup special was, that in this scenario I didn&#8217;t just put a predefined XML formatted data inside the textarea, but the XML data was supposed to be inserted into the webpage (into the textarea) on the client-side via Javascript.<br />
(In order to give you a little bit more information about the whole picture: the source XML data &#8211; to be inserted on the fly &#8211; might change and should be able to be updated without reloading the whole page)</p>
<p><span id="more-102"></span><br />
I thought easy peasy, I&#8217;ll just get the textarea element by its ID and set its innerHTML to the desired XML data:<br />
<code>xmltext = loadXMLText( xmldoc );<br />
document.getElementById(targetid).innerHTML = xmltext;<br />
</code></p>
<p>This did work in IE 7 as well as in FF 3.5, but Opera (10.10 at the time) displayed a strange behavior. It rendered to content of appearing nodes (from the XML data) but replaced the node tags with spaces:<br />
<code>&lt;object&gt;&lt;name&gt;Foobar&lt;/name&gt;<br />
&lt;/object&gt;<br />
</code></p>
<p>would be rendered as (mask to see spaces):<br />
<code>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Foobar&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
</code><br />
It took me a while (despite the use of Dragonfly, Opera&#8217;s debug tool) to figure out that the problem was not the &lt;textarea&gt;. Throughout my history with Opera and other browsers I gathered that if a website is viewed &#8220;incorrectly&#8221; in Opera, it usually meant that there was something wrong with the code.<br />
I then switched to the method of adding a new node to the DOM tree, which included the text from the XML data I wanted to be inserted:<br />
<code>xmltext = loadXMLText( xmldoc );<br />
textnode = document.createTextNode( xmltext );<br />
document.getElementById(targetid).appendChild( textnode );<br />
</code><br />
This now worked just fine in Opera. And so I assumed that creating a new DOM node via createTextNode() was the correct method if you wanted to insert any form of text (whether it&#8217;s source code shown as raw text or just text).</p>
<p>Since then I&#8217;ve googled and read a few things about innerHTML, createTextNode() and Opera. It seems that throughout its versions Opera went from supporting innerHTML (the same way other browsers did) to not supporting and to supporting again and so on.<br />
I am usually the kind of guy who thinks &#8220;if this code is wrong, show me so I can see it&#8217;s wrong, don&#8217;t try to guess what I meant&#8221; &#8211; even though guessing what web developers meant seems to be the specialty of most browsers. But in this case we can&#8217;t really say that using innerHTML is &#8220;wrong&#8221; even though it&#8217;s not the best thing to do. One of its advantages might be speed (especially if you&#8217;d have to create a lot of new nodes), but on the other hand it&#8217;s not a standard, so we can&#8217;t blame browsers if they don&#8217;t display it the way we want it to.</p>
<p>So as a final note, I&#8217;d like to say that I hope people having trouble with innerHTML and Opera find this blog post so they can fix their problem.<br />
And for those open to discussion about whether it&#8217;s bad/wrong/good/whatsoever to use innerHTML, I recommend <a href="http://blog.haraldkraft.de/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?url=aHR0cDovL3NsYXllcm9mZmljZS5jb20vYXJ0aWNsZXMvaW5uZXJIVE1MX2FsdGVybmF0aXZlcy8=">this article</a> which offers a nice list of ups and downs of innerHTML along with a whole bunch of scenarios and alternate ways to reach your goal without using a non-standard method <img src='http://blog.haraldkraft.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> .</p>
 <img src="http://blog.haraldkraft.de/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=102" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.haraldkraft.de/2010/01/opera-and-innerhtml-vs-createtextnode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
