<?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>Friendly Bit &#187; Other topics</title> <atom:link href="http://friendlybit.com/articles/other/feed/" rel="self" type="application/rss+xml" /><link>http://friendlybit.com</link> <description>You have found Friendly Bit, a web development blog. I focus on client side technologies like CSS, HTML and Javascript. You find my articles below and categories to the right.</description> <lastBuildDate>Fri, 05 Feb 2010 23:32:09 +0000</lastBuildDate> <generator>http://wordpress.org/?v=2.9.2</generator> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <item><title>Google support gone wrong</title><link>http://friendlybit.com/other/google-support-gone-wrong/</link> <comments>http://friendlybit.com/other/google-support-gone-wrong/#comments</comments> <pubDate>Sat, 24 Oct 2009 13:00:28 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=566</guid> <description><![CDATA[Google really produces great software. I use many of them: Web Search, Picasa, Reader,  Feedburner, Analytics, Images, Groups, Docs, Translate, Code, Chrome, Maps, Video, Blog Search, Youtube, AJAX API, Webmaster Central, and Site Search.
Just to name a few :)
Problem is, with many of the above, if something breaks you&#8217;re out of luck. Because it&#8217;s [...]]]></description> <content:encoded><![CDATA[<p>Google really produces great software. I use many of them: Web Search, Picasa, Reader,  Feedburner, Analytics, Images, Groups, Docs, Translate, Code, Chrome, Maps, Video, Blog Search, Youtube, AJAX API, Webmaster Central, and Site Search.</p><p>Just to name a few :)</p><p>Problem is, with many of the above, if something breaks you&#8217;re out of luck. Because it&#8217;s <strong>god damn impossible</strong> to get a hold of someone that you can talk to. Do you reach anyone at Google with your e-mails? Does anyone from Google read your forum posts? Highly unlikely.</p><p>Google is a great example of support gone wrong. I think the explanation is easy: Few of the programmers I know want to deal with support. They want to deal with coding! And since Google is a company of programmers, it doesn&#8217;t want to do support.</p><p>Let me tell two stories:</p><h2>Feedburner</h2><p>Feedburner once was a great company, with a simple but thought out service. They gave you subscriber statistics of your RSS feed. You just redirected your feed to them, and made all your subscribers sign up to their generated feed, and they did all the tricky calculations. Simple, efficient.</p><p>As a company Feedburner understood the value of being personal. Messages throughout the site stated &#8220;My feeds like a little namespace to call their own&#8221;, &#8220;Sometimes your feed just wants to look good. Spruce it up in the following ways&#8221;, &#8220;Oh dear, what kind of trouble?&#8221;. Nice personal touch :) Feedburner developers where easy to get in touch with, an e-mail and you had a friendly, knowledgeable person to talk to.</p><p>Then Google came along and bought the whole thing. Everything was rewritten to Google&#8217;s platform, domains where switched, and chaos ensued. Of course, during that time, Feedburner&#8217;s previous support people totally vanished, and everyone was directed to the Feedburner Status Blog, when you could confirm they where <strong>not </strong>working on your problem. Just great.</p><p>For three weeks now, my subscriber stats have jumped from 800 to 3000, back an forth, several times per week. Nice, isn&#8217;t it?</p><p><img
class="alignnone size-full wp-image-567" title="feedburner_stats" src="http://friendlybit.com/wp-content/uploads/2009/10/feedburner_stats.PNG" alt="feedburner_stats" width="519" height="165" /></p><p>Feedburner is apparently broken, and the simple service of delivering feed statistics doesn&#8217;t work.</p><p>So I <a
href="http://groups.google.com/group/feedburner-statistics/browse_thread/thread/3989f82b9efc3b26/e0990145155dca15?lnk=gst&amp;q=subscriber&amp;pli=1">post to their Google Group</a>, the place where you should ask questions about the service. Three months later, several other users have reported having the same problem, but no reply from a Feedburner developer.</p><p>Now I&#8217;m thinking of switching. Anyone have a good alternative ready?</p><h2>Google Wave</h2><p>Services that start at Google are even less likely, compared to acquired services like Feedburner, to have proper support. It&#8217;s just not a priority, and there&#8217;s far too many interesting programming challenges to deal with users.</p><p>So when Wave gives me an old picasa name as my username (&lt;company name&gt;.&lt;place of one of our conferences&gt;@googlewave.com), I know there&#8217;s very little chance that I&#8217;ll get help from anywhere. The official channel to ask for help is their support forum, but it doesn&#8217;t seem that they reply to issues there. <a
href="http://www.google.com/support/forum/p/wave/thread?tid=6cb8ca45d22453e5&amp;hl=en">My message there from two weeks ago</a> stands on it&#8217;s own, with no replies.</p><p>It&#8217;s the proposed revolution that will replace e-mail, and I can&#8217;t use it :(</p><h2>Bad trend</h2><p>This trend of Google not offering even basic support from dedicated people is a unfortunate development, that should be taken seriously by executives at Google, and dealt with at a very high level.</p><p>Launching new web services is easy, improving a services based on feedback is much harder. Google has not yet managed to crack that nut.</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/google-support-gone-wrong/feed/</wfw:commentRss> <slash:comments>8</slash:comments> </item> <item><title>Voddler &#8211; movie streaming for the masses?</title><link>http://friendlybit.com/other/voddler-movie-streaming-for-the-masses/</link> <comments>http://friendlybit.com/other/voddler-movie-streaming-for-the-masses/#comments</comments> <pubDate>Sun, 30 Aug 2009 22:12:46 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=549</guid> <description><![CDATA[I&#8217;ve recently managed to get a hold of a beta invite to Voddler, and thought I should tell you a little about my experience of it. But first, big thanks to Gunnar Bark (Tweets in Swedish, follow him!) who tipped me off about a Voddler invitation competition. It was run by Christian Rudolf at mjukvara.se [...]]]></description> <content:encoded><![CDATA[<p>I&#8217;ve recently managed to get a hold of a beta invite to <a
href="http://www.voddler.com/">Voddler</a>, and thought I should tell you a little about my experience of it. But first, big thanks to <a
href="http://twitter.com/GunnarBark">Gunnar Bark</a> (Tweets in Swedish, follow him!) who tipped me off about a Voddler invitation competition. It was run by Christian Rudolf at <a
href="http://www.mjukvara.se/blogg/">mjukvara.se</a> (In Swedish, but definitely something to add to your feeds) who had 15 invites to give away.</p><p>Anyway.</p><p>Two years ago, <a
href="http://friendlybit.com/other/spotify-is-a-lot-like/">I got to test Spotify</a>, a music streaming that will soon launch in the US and is heavily anticipated. It completely changed how I listened to music, I deleted all my mp3:s and is now streaming all my music. <a
href="http://www.voddler.com/">Voddler</a> is a similar streaming service, but for movies.</p><p>So, what do I think of it?</p><p>First of all, Voddler is in a very early phase of testing. It&#8217;s what I would call a &#8220;<strong>real beta</strong>&#8220;, where the client crashes frequently, subtitles sometimes lag behind, the interface is tricky to use, and several features just don&#8217;t work.</p><p>Thing is, I&#8217;m quite certain Voddler will <strong>revolutionize how I watch movies</strong>, anyway. Because at the core of Voddler is HD-quality streaming, that just works. Believe me, I normally don&#8217;t watch that many movies, but have seen <strong>four</strong>,<strong> </strong>in the last 48 hours. They are just a couple of clicks away, and start in 10 seconds (during which you&#8217;ll watch a commercial). Here&#8217;s some <a
href="http://pappmaskin.no/2009/07/voddler-screenshots-and-details/">screenshots</a>.</p><p>Now. I&#8217;m saying that the client is a beta, and that there are serious bugs left, what kind of bugs do I mean?</p><ul><li>About half of the <strong>menu options don&#8217;t work</strong>. &#8220;Tv series&#8221; lead nowhere, I can&#8217;t browse movies by actor, director, studio, and several genres are empty. In my opinion, they would gain a lot by just <strong>removing those options until they lead somewhere</strong>! This is a no-brainer.</li><li>The <strong>client freezes and crashes</strong> regularly, and I have never been able to watch two movies in a row without restarting in between. This of course requires squashing bugs that are left in the code, and <strong>improve the testing procedure</strong>, so that such bugs never reach production code. Using mozilla-style reporting that allow people to <strong>send in crash reports</strong> is probably a good idea at this stage. The code is based on <a
href="http://en.wikipedia.org/wiki/XBMC">XBMC</a>, and people say stuff like &#8220;how could they add that many bugs to a product that good?!&#8221;. Voddler, don&#8217;t make it that easy to dismiss your hard work!</li><li>Sometimes the <strong>subtitles skip some lines</strong>. I watched <a
href="http://www.imdb.com/title/tt0325005/">Antikiller</a>, a russian action movie, five times important lines were shown only half a second on the screen, making me miss important pieces of the story. I&#8217;m not sure if this had something to do with the subtitles for that exact movie, or lag because of Voddler, but I know that it was a crappy first impression of the client. It just has to be fixed.</li><li>The <strong>support forum is so slow it&#8217;s unusable</strong>. My guess is that it&#8217;s on the same network as the movie streaming service, and therefore goes down together with that one. Those two just <strong>have to </strong>be independent, as you need the forum most when the other is down.</li><li>The <strong>UI doesn&#8217;t work usability-wise</strong>. First of all, it&#8217;s built for television sets, which means that only the keyboard works (arrow keys, space and esc), no mouse support. Several of the menues cycle (when you&#8217;re on the end the first item appears again), so you&#8217;ll easily loose track of where you are. There are small errors all over the place, things that makes finding and starting movies difficult.</li></ul><p>So, in summary, the core of Voddler is good, but the interface needs quite a lot of work before it can be released to the public. No matter what, I&#8217;ll keep following the development of this product!</p><p>In general, it seems that when you Americans stop us from using your servies (ie. <a
href="http://www.voddler.com">Hulu</a>), we Swedes build our own services. First Spotify, now Voddler.</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/voddler-movie-streaming-for-the-masses/feed/</wfw:commentRss> <slash:comments>7</slash:comments> </item> <item><title>Usability isn&#8217;t a crime</title><link>http://friendlybit.com/other/usability-isnt-a-crime/</link> <comments>http://friendlybit.com/other/usability-isnt-a-crime/#comments</comments> <pubDate>Sun, 01 Mar 2009 19:00:27 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=460</guid> <description><![CDATA[The programmers behind The Pirate Bay are getting charged with making it easy to share files over the BitTorrent protocol. Note that it&#8217;s not because they&#8217;ve done it themselves, but because they have made it easier for others. Never before has usability been a crime.
&#8220;They have to get paid&#8221;
Copyright holders protest and say that they [...]]]></description> <content:encoded><![CDATA[<p>The programmers behind <a
href="http://thepiratebay.org/">The Pirate Bay</a> are getting charged with making it easy to share files over the BitTorrent protocol. Note that it&#8217;s not because they&#8217;ve done it themselves, but because they have made it easier for others. Never before has <strong>usability been a crime</strong>.</p><h2>&#8220;They have to get paid&#8221;</h2><p>Copyright holders protest and say that they &#8220;have to&#8221; get paid for what they produce. And that argument seems to work well with people, because hey, why shouldn&#8217;t they? (Real non-geeky people, not people like you).</p><p>At the same time, people seem to agree that there are exceptions. It is considered OK to play music to your friends. Or lending a CD to a friend over the weekend. Or letting a colleague listen to some music on your iPod. So sharing with friends is fine. The problem, and the major change that many have missed, is that <strong>people have more friends</strong> than ever before. All across to globe, all connected via the interwebs. And as the number of friends grow, people tend to shift over, and not consider it OK to share any longer. &#8220;Hey, you can&#8217;t share with 100 people! The artists have to get paid!&#8221;.</p><h2>Lets make some laws</h2><p>So lets say you want to make laws based on that kind of &#8220;reasonable sharing&#8221;. How would you do that? Do you <strong>lawfully define what a friend is</strong>? The number of friends a person is allowed to have? That you have to keep a count of how many times you let someone listen to your iPod? No, it just doesn&#8217;t work.</p><p>Perhaps if you put a ban on some types of technology. Technology that makes it easy to share to many? No, because technology moves several magnitudes faster then laws get made, so as soon as you manage to ban one technology, there are five new ones available that circumvent your law. <strong>Allow any form of sharing and technology will generalize it to be used for mass sharing</strong>. (See <a
href="http://oneswarm.cs.washington.edu/">OneSwarm</a> for an example).</p><p>What about using technology to block sharing? This is what&#8217;s called DRM, Digital Rights Management. Sorry, <a
href="http://www.craphound.com/msftdrm.txt">it just doesn&#8217;t work</a>. Every DRM system ever built, has been broken. The core problem is: it&#8217;s not possible to both block people from sharing music, and let people listen to it.</p><h2>&#8220;Hmm, then maybe allow no sharing?&#8221;</h2><p>So what about banning sharing altogether, strange as it may seem? Well, paying customers would hate it. A big part of music is sharing it with people, hoping that they will like what you like. We want to play music at our parties, without requiring everyone to pay a license fee to attend. A complete ban (and extensive citizen surveillance to go with it) would quickly lead to a separation between music that we can share, and music we can&#8217;t share.</p><p>This is exactly what has happened with computer programs. There&#8217;s now <strong>proprietary and open source</strong>, <strong>no-share and please-share</strong>. Open source is growing stronger every day, and lots of companies decide to join the tide, and release their code the same way. This is exactly what will happen to music. Let&#8217;s call it the <strong>Open Music</strong> movement, and lets see how many years the no-share music will last.</p><h2>Sharing is nothing strange</h2><p>To explain why allowing people to share isn&#8217;t so strange, compare a <strong>famous book author</strong> to a <strong>famous speaker</strong>. People tend to think that writers must get paid for what they write, once every time someone reads their text. If lots of people read what they write, they somehow &#8220;are entitled to&#8221; lots of money.</p><p>Speakers on the other hand, get paid each time they speak. Not each time someone listens to a recording of their speech, or someone else repeats what they say, but based on their own performance, once. They get paid for original performance, not copying. This also means that <strong>speakers want their stuff to be spread as much as possible</strong>. Because for each copy, there&#8217;s a potential new customer waiting to pay them to perform.</p><p>So why is it so strange to see the same model for writers? Writers that get paid for their performance when writing a book, not by the number of people that read it.</p><h2>Separate distribution and performance</h2><p>So we have to separate distribution from performance. Distribution is the reason that authors think they need the big companies. How else could they distribute their great performances to a large audience? Well, the internet. Yeye, but how can they distribute it and get paid? That&#8217;s where things get interesting, because now we&#8217;re talking about <strong>business models</strong>.</p><p>Media companies have had a distribution monopoly for a very long time. Now the internet threatens that monopoly, by making it easy for anyone to distribute anything, for free. This isn&#8217;t going to change, no matter what kinds of laws that get pushed through. So how do you tackle that?</p><p>And that&#8217;s the challenge that the record industry should put all their power towards. Think of speakers instead of writers, how do they get money? Think of how the <a
href="http://www.ted.com">TED conference</a> makes lots of money off speakers. Think of how you can build technology to compete with BitTorrent, how to get people to pay for performance, not distribution. Think of how you can<strong> improve usability</strong>, something that&#8217;s in a pretty bad state when it comes to BitTorrent.</p><h2>What model to use is not my problem</h2><p>Companies missing proper business models is not my problem. It isn&#8217;t, and has never been, a government problem either. There&#8217;s no reason to pass integrity limiting laws to help companies survive. There doesn&#8217;t need to be completed alternatives waiting. That&#8217;s their own problem to solve, and time will tell if they manage the switch before it&#8217;s too late or not. I don&#8217;t know.</p><p>Meanwhile the internet continues to evolve, while media companies try to fine the programmers behind The Pirate Bay&#8230;</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/usability-isnt-a-crime/feed/</wfw:commentRss> <slash:comments>14</slash:comments> </item> <item><title>Google is down</title><link>http://friendlybit.com/other/google-is-down/</link> <comments>http://friendlybit.com/other/google-is-down/#comments</comments> <pubDate>Sat, 31 Jan 2009 14:47:50 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=411</guid> <description><![CDATA[I&#8217;d never this that this day would come, but it actually seems that Google has decided to block all sites in their index. Try searching anything, it will be marked as spam. I see the same results in the swedish and english version, in Firefox and in Internet Explorer. &#8220;This site may harm your computer&#8221;, [...]]]></description> <content:encoded><![CDATA[<p>I&#8217;d never this that this day would come, but it actually seems that <strong>Google </strong>has decided to block all sites in their index. Try searching anything, it will be marked as spam. I see the same results in the swedish and english version, in Firefox and in Internet Explorer. &#8220;This site may harm your computer&#8221;, clicking that link does not seem to be possible, and I&#8217;m guessing it&#8217;s because it gets millions of hits right now.</p><p><strong>Gmail</strong> is also marking emails as spam, they are probably using the same system as Google search. The warning message is: This message may not be from whom it claims to be.</p><ul><li><a
href="http://www.techcrunch.com/2009/01/31/google-flags-whole-internet-as-malware/"><strong>Techcrunch</strong> found out</a> just a couple of minutes after this post.</li><li><strong>Twitter</strong> is buzzing with people <a
href="http://www.twitscoop.com/twits/search?q=google">trying to figure out</a> what&#8217;s going on.</li></ul><p><strong>~40 minutes later</strong>: Google is working just fine again, no need for panic. They have even written a <a
href="http://googleblog.blogspot.com/2009/01/this-site-may-harm-your-computer-on.html">blog post on the issue</a>, explaining what happened. Seems the URL &#8220;/&#8221; was mistakenly added as a &#8220;bad URL&#8221; in the spam filters. Human error obviously.</p><p>Heads will be rolling at the Google HQ (or at least someone just got a new nickname).</p><p><img
class="alignnone size-full wp-image-415" title="Even google is marked as spam" src="http://friendlybit.com/wp-content/uploads/2009/01/google_id_down.png" alt="Even google is marked as spam" width="955" height="841" /></p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/google-is-down/feed/</wfw:commentRss> <slash:comments>12</slash:comments> </item> <item><title>Downloading MySQL: How bad can it get?</title><link>http://friendlybit.com/other/downloading-mysql-how-bad-can-it-get/</link> <comments>http://friendlybit.com/other/downloading-mysql-how-bad-can-it-get/#comments</comments> <pubDate>Sun, 25 Jan 2009 01:31:10 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=394</guid> <description><![CDATA[MySQL is quite popular on the web these days. Lots of frameworks have support for it, and some frameworks only support MySQL. So lots of people must be downloading it right? So what do you do when you have a website where most people will be looking for completing one simple task?
Well, you make that [...]]]></description> <content:encoded><![CDATA[<p>MySQL is quite popular on the web these days. Lots of frameworks have support for it, and some frameworks <strong>only</strong> support MySQL. So lots of people must be downloading it right? So what do you do when you have a website where most people will be looking for completing one simple task?</p><p>Well, you make that task really, and I mean <strong>really</strong>, annoying to complete. No? Yes you do, just look at this:</p><ol><li><strong>Surf to <a
href="http://mysql.com">mysql.com</a></strong>. Note the two horizontal navigation menus, one vertical menu, followed by a seven step banner, and five more columns of links. Note how the top navigaton has the same style as the bottom column headers, and that one is clickable, and the other is not.</li><li><strong>Click &#8220;Downloads&#8221;</strong>, which is the second item, in the second horizontal menu, first tab. Watch how the menu changes to highlight that you&#8217;re now at the second tab. Watch how the left menu is a list of products, which was the first link in the menu you just clicked, and note that you didn&#8217;t click products. You&#8217;re given two choices now, denoted by lots and lots of text, instead of two descriptive headers at the bottom of the page: MySQL Community Server, and MySQL Enterprise.</li><li><strong>Decide that you want MySQL Community Server</strong>, ignore the &#8220;community downloads&#8221;-link that makes you have to choose again, and click the &#8220;Download&#8221;-button. You&#8217;re now on the same page as if you would have clicked &#8220;community downloads&#8221;, and now are given information about the product you didn&#8217;t choose, MySQL Enterprise.</li><li><strong>Note in the left menu</strong> that you have somehow chosen version 5.1 of the product, even though you didn&#8217;t make that choice, and that you get arguments against using MySQL 4.0 if you go to the  &#8220;Important Platform Support Updates&#8221; page. You also get a warning that some enterprise support feature won&#8217;t work with that version.</li><li>Ignore the &#8220;NOTE&#8221; about MySQL Cluster community edition, the 5.1 changelist, and the suggestion to use MD5 checksums to verify your download. <strong>Now choose your operating system, processor architecture, and packaging option</strong> combinations from a list of 33 options. If you&#8217;re on windows, and don&#8217;t know if your processor architecture is denoted &#8220;x86&#8243; or &#8220;x64&#8243;, you just have to guess now.</li><li>You&#8217;re now take further down the page, showing you both the option you chose and the next option, you didn&#8217;t chose. If you guessed the last time, now is a chance to change your mind. If you&#8217;re on windows, <strong>select if you want Windows Essentials, a Zip file/setup.exe combination, or a windows installer</strong>. Find that it isn&#8217;t Windows installer, but Without installer. Read your options again. Get really confused, since essentials and packaging options doesn&#8217;t seem to be mutually exclusive.</li><li>Guess that you want the first file, and note how that option isn&#8217;t clickable. Instead, review the version number and MD5 checksum, and <strong>click &#8220;Pick a mirror&#8221;</strong>. Not because you want to do that, but because there are no other options except a signature link that&#8217;s smaller.</li><li>You&#8217;re now given the filename of the file you are about to download, and are <strong>asked to register on the site</strong>. The menu shows you&#8217;re on the DevZone. Since you don&#8217;t have an account, click &#8220;New user&#8221;, and fill out the seven required fields, including which company you work for. Did you chose Enterprise after all?</li><li>At the end of the form, note the link &#8220;<strong>No thanks, just take me to the downloads!</strong>&#8221; and click it.</li><li>Again, you&#8217;re moved further down the page, to a <strong>list of 150 countries</strong>, denoted by their flag. Read the note that says that this is a list which is sorted by the countries closest to you, and note that it&#8217;s completely wrong, and ordered alphabetically.</li><li>Now <strong>select which protocol</strong> you want to download over, HTTP or FTP. Why on earth would you want to download via FTP from a web browser?! Anyway, select HTTP and you finally get to download the damn file.</li></ol><p>How can downloading a file be this hard? What did they think? Did they not learn anything from the <a
href="http://getfirefox.com/">firefox </a>website? One big green button is all you need, is that too hard for you MySQL devs?</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/downloading-mysql-how-bad-can-it-get/feed/</wfw:commentRss> <slash:comments>10</slash:comments> </item> <item><title>Spotify invite via Twitter or Jaiku</title><link>http://friendlybit.com/other/spotify-invite-via-twitter-or-jaiku/</link> <comments>http://friendlybit.com/other/spotify-invite-via-twitter-or-jaiku/#comments</comments> <pubDate>Mon, 08 Dec 2008 07:00:27 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=378</guid> <description><![CDATA[I&#8217;ve talked about Spotify before. It&#8217;s simply the reason I no longer have any music stored on my computer. You heard it right: No more music stored locally on my computer.
What Spotify did to convince me to take this step was to really start to compete with file sharing. Spotify does just that, but manages [...]]]></description> <content:encoded><![CDATA[<p>I&#8217;ve <a
href="/other/spotify-is-a-lot-like/">talked about Spotify</a> before. It&#8217;s simply the reason I no longer have any music stored on my computer. You heard it right: <strong>No more music stored locally on my computer</strong>.</p><p>What Spotify did to convince me to take this step was to really start to <strong>compete with file sharing</strong>. Spotify does just that, but manages to do it in a way that pays artists. This is how:</p><ol><li><strong>A massive collection of music</strong>: They understood that you need to be able to get everything you ever want. That strange song your mother sang to you when you were five? Although P2P networks might have forgot about it, Spotify has not.</li><li><strong>Speed</strong>: If you get a music urge you shouldn&#8217;t have to wait for it to download. It needs to start right away. In Spotify, you search for the song you want, and click it. The music starts to play instantly. Yep, it should be that easy.</li><li><strong>Pays artists</strong>: Everyone downloading copyrighted music from artists that they like, have felt that little sting of &#8220;<em>I should really have paid for this</em>&#8220;. Good artists, that make music I really like, should be paid, it&#8217;s as easy as that. Spotify does this.</li></ol><p>So, how do you get ahold of a Spotify account? Well, you get an invite from someone that has one. That one is me, and I have <del>20 invites</del> <del>8 invites</del> <strong>No invites left</strong> to share.</p><p><strong>Sorry people, I have no more invites left, thanks for playing!</strong></p><blockquote><p>If you want an invite, just <strong>post a message on <a
href="http://twitter.com">twitter</a> or <a
href="http://jaiku.com/">jaiku</a></strong>, and say you want one, and <strong>comment here with your e-mail and twitter/jaiku-link. </strong> I will give the first 20 an invite through the mail supplied in the comments. My nick is EmilStenstrom.</p></blockquote><p>Let the microblogging spotify madness begin!</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/spotify-invite-via-twitter-or-jaiku/feed/</wfw:commentRss> <slash:comments>69</slash:comments> </item> <item><title>Templated User Controls in ASP.NET</title><link>http://friendlybit.com/other/templated-user-controls-in-aspnet/</link> <comments>http://friendlybit.com/other/templated-user-controls-in-aspnet/#comments</comments> <pubDate>Mon, 17 Nov 2008 23:28:43 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[HTML]]></category> <category><![CDATA[Other topics]]></category> <category><![CDATA[Tutor]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=323</guid> <description><![CDATA[Good design repeats itself. It works hard to convey a whole, a feeling of consistency. Once you understand a part of such a design, you know your way around all of it. This is often done by repetition, using the same elements, colors, styles, positioning, and so on. This is a good thing.
Good code never [...]]]></description> <content:encoded><![CDATA[<p>Good design repeats itself. It works hard to convey a whole, a feeling of consistency. Once you understand a part of such a design, you know your way around all of it. This is often done by repetition, using the same elements, colors, styles, positioning, and so on. This is a good thing.</p><p>Good code <a
href="http://en.wikipedia.org/wiki/Don%27t_repeat_yourself">never repeats itself</a>. The number of techniques to avoid it are numerous, and all new languages compete in trying to remove as much repetition as possible (Especially the dynamic ones).</p><p><strong>Good design repeats itself, good code does not. </strong></p><p>With interface development, you <strong>face the conflict</strong> above over and over again. You get a design that (rightly) reuses the same concepts over and over, and you need to implement them in code that makes you write the same logic only once. This same time both when writing the code and later when fixing bugs in it, and deep inside, all programmers know that it&#8217;s the correct way to do things.</p><p>I&#8217;m currently working in a .NET project (EPiServer CMS 5), and is faced with a design that uses the same kind of boxes all over the site. The boxes only differ by color and content, so things like shadows and rounded corners are clear repetition that I want to do only once. I&#8217;ll do the shadows and corners with CSS, but for that I need a couple of wrapper divs. Divs that I only want to specify once, and then reuse.</p><p>The prequisites are:</p><ol><li>I want a <strong>flexible </strong>solution, so I&#8217;m not tied to a specific HTML structure (number of divs, or even if I use the div tag or not).</li><li><strong>No HTML in properties</strong> that get sent to user-controls</li><li><strong>No HTML in code-behind</strong> (a common way in .NET to split logic (code-behind) and templates (ASP.NET and HTML))</li></ol><p>What I came up with was <a
href="http://msdn.microsoft.com/en-us/library/36574bf6.aspx">templated user controls</a>. They provide a way to write controls that wrap any other controls you may have, and add content around them. And it&#8217;s easy to write and user. This is how the one I wrote is used:</p><pre><code >&lt;MyProject:Box runat="server"&gt;
    &lt;Contents&gt;
        &lt;h2&gt;Random header...&lt;/h2&gt;
        &lt;asp:Repeater runat="server"&gt;...&lt;/asp:Repeater&gt;
        ...
    &lt;/Contents&gt;
&lt;/MyProject:Box&gt;</code></pre><p>It simply wraps anything inside it (in this case a heading tag and a asp repeater), and lets me do whatever I want with them. In my case, I wanted to add some generic HTML around lots of different content, but you could do anything you wanted.</p><p>This is how the above was implemented. First the code-behind:</p><pre><code >using System.Web.UI;

namespace MyProject.templates.units
{
    [ParseChildren(true)]
    public partial class Box : System.Web.UI.UserControl
    {
        private ITemplate contents = null;

        [TemplateContainer(typeof(TemplateControl))]
        [PersistenceMode(PersistenceMode.InnerProperty)]
        [TemplateInstance(TemplateInstance.Single)]
        public ITemplate Contents
        {
            get
            {
                return contents;
            }
            set
            {
                contents = value;
            }
        }

        void Page_Init()
        {
            if (contents != null)
                contents.InstantiateIn(PlaceHolder1);
        }
    }
}</code></pre><p>&#8230; and then the &#8220;code-front&#8221;:</p><pre><code >&lt;%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Box.ascx.cs" Inherits="MyProject.templates.units.Box" %&gt;
&lt;div class="box"&gt;
    &lt;div class="boxwrapper"&gt;
        &lt;asp:Placeholder runat="server" ID="PlaceHolder1" /&gt;
    &lt;/div&gt;
&lt;/div&gt;</code></pre><p>I think this is a <strong>really useful</strong> way to write user controls, especially for those of you that work as interface developers in a .NET world. Asking the people around me I found that quite a few didn&#8217;t know how templated user controls worked, so I hope I will be of use to some of you out there. Happy coding!</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/templated-user-controls-in-aspnet/feed/</wfw:commentRss> <slash:comments>8</slash:comments> </item> <item><title>Django &#8211; the fun framework (presentation)</title><link>http://friendlybit.com/other/django-the-fun-framework-presentation/</link> <comments>http://friendlybit.com/other/django-the-fun-framework-presentation/#comments</comments> <pubDate>Fri, 26 Sep 2008 15:07:14 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Django]]></category> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=265</guid> <description><![CDATA[Yesterday I attended the excellent Geek Meet hosted by Robert Nyman at the Creuna office. I held a presentation about the Django web framework, and took some time today to add some comments in english and make a PDF-file of the presentation. Would you like to know why Django is more fun than what you&#8217;re [...]]]></description> <content:encoded><![CDATA[<p>Yesterday I attended the excellent <a
href="http://robertnyman.com/geekmeet/">Geek Meet</a> hosted by Robert Nyman at the Creuna office. I held a presentation about the Django web framework, and took some time today to add some comments in english and make a PDF-file of the presentation. Would you like to know why Django is more fun than what you&#8217;re using right now?</p><p>So go ahead and have a look at the presentation: <strong><a
href="/files/Django - the fun framework.pdf">Django &#8211; the fun framework</a></strong> (11 Mb, PDF with english comments)</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/django-the-fun-framework-presentation/feed/</wfw:commentRss> <slash:comments>8</slash:comments> </item> <item><title>Ten commandments of update services</title><link>http://friendlybit.com/other/ten-commandments-of-update-services/</link> <comments>http://friendlybit.com/other/ten-commandments-of-update-services/#comments</comments> <pubDate>Sun, 21 Sep 2008 21:10:25 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category> <category><![CDATA[Tutor]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=239</guid> <description><![CDATA[I&#8217;m getting increasingly annoyed with update services shipped with popular applications. It&#8217;s looks like it&#8217;s getting worse and worse, and I think someone should stand up and say enough is enough.Adobe Update
Google Update
Microsoft Update
Ten Commandments of Update ServicesLet me start by showing when updates go wrong:
Adobe Update
I start Adobe Fireworks because I want to resize [...]]]></description> <content:encoded><![CDATA[<p>I&#8217;m getting increasingly annoyed with update services shipped with popular applications. It&#8217;s looks like it&#8217;s getting worse and worse, and I think someone should stand up and say <strong>enough is enough</strong>.</p><ul><li><a
href="#adobe">Adobe Update</a></li><li><a
href="#google">Google Update</a></li><li><a
href="#microsoft">Microsoft Update</a></li><li><a
href="#ten">Ten Commandments of Update Services</a></li></ul><p>Let me start by showing when updates go wrong:</p><h2 id="adobe">Adobe Update</h2><p><img
class="secondary" src="http://friendlybit.com/wp-content/uploads/2008/09/adobe_logo.jpg" alt="">I start Adobe Fireworks because I want to resize an image I have. After it has started and the image has loaded the update service prompts me that there are new updates available. For what? It doesn&#8217;t say, so I click more info and get a list of things. Strange: <strong>None of them seem related to Fireworks</strong>.</p><p>The update starts, and tells me I <strong>have to close Fireworks</strong> to complete it. Bah, I just started it! I&#8217;m trying to resize an image here, remember? But Ok, this time. Next it tells me to close Firefox. What?! All my precious tabs I&#8217;ve saved for later reading! Bitches.</p><p>The download begins, and the <strong>progress window takes focus</strong> over the other stuff I&#8217;m doing while not looking at the progress bar. *Repeated clicking to hide the window*. Then when it&#8217;s done it takes focus again, and asks me to click the only button available. GAH?!</p><p>Ok, done. Why was I starting Fireworks again? And hey, what&#8217;s those <strong>new PDF icons</strong> doing in my Links toolbar in Internet Explorer?</p><h2 id="google">Google Update</h2><p><img
class="secondary" src="http://friendlybit.com/wp-content/uploads/2008/09/google-logo.jpg" alt="">Oh, a new web browser: Google Chrome, I surely want to try it out. *Couple of hours of fiddling*. Nah, I still like Firefox more, I&#8217;ll go back to using that one. <strong>Wait, what&#8217;s that GoogleUpdate.exe process doing there</strong>? I&#8217;ll try closing Chrome. Nope, still there. Ok, I&#8217;ll force it to close. Hmm, it restarts after a while. Ok, must be some kind of process that starts with Windows. Ah, registry setting, lets remove that one. *Reboot*. Still there?! Ah, they also installed it as a service. Lets remove that too. Finally!</p><p>What&#8217;s that? A new version of Google Gears! *Installing*. Hmm&#8230; What&#8217;s that GoogleUpdate.exe process doing there? GAH! What were you thinking Google?!</p><h2 id="microsoft">Microsoft update</h2><p><img
class="secondary" src="http://friendlybit.com/wp-content/uploads/2008/09/logo_microsoft_small.gif" alt="">I really should make sure my OS is up to date. Lets go to the windowsupdate website. What? I need to run IE5 or later? Ah, no Firefox support, damn it. Lets switch browser. Ok. Install validation thingie? Ehm&#8230; I guess I have no choice. *Waiting*. Ok, now let&#8217;s see if there&#8217;s some updates, Express or Custom? Custom, of course. *Waiting quite a long time*. Why are you making me look at a progress bar? Ok, no <abbr
title="Operating System">OS</abbr> upgrades, but there&#8217;s some update to Windows Media player. Yeye, I guess it couldn&#8217;t do any harm (not that I use that one). Trust ActiveX thingie? Yeye, I know what I&#8217;m doing. *Waiting some more, with focus stealing*. &#8220;Please restart your computer to complete the installation&#8221;. Sigh.</p><p>So why don&#8217;t I just use Windows Update program instead? Well, there&#8217;s a window that pops up every 5 minutes that remind you that you have to restart the computer. Do you know how annoying that one is? No, it&#8217;s MORE annoying than that.</p><h2 id="ten">Ten Commandments of Update Services</h2><p>So I hope that&#8217;s enough evidence that big companies have no idea how do conduct a decent update of their own program. So let me offer some (free of charge) advise:</p><ol><li>If your update is web based, <strong>let me use any modern browser I want</strong>. Don&#8217;t start by getting me annoyed.</li><li>Check for updates <strong>right before the program starts</strong>. I know that you want me to close the app while it&#8217;s being updated, but why on earth do you let me start it then? Lets keep it simple, update before the program starts, and resume starting the app when you&#8217;re done.</li><li><strong>Don&#8217;t leave processes running in the background</strong> when I close the program. When I close your program, I don&#8217;t care about you, or any updates to your program.</li><li><strong>Only update the current program</strong>, not bundled ones. I know you want me to have the latest versions of all your programs, but odds are I don&#8217;t even use them. Update those programs when I start them, not now.</li><li><strong>Show me what gets updated</strong>, and if possible link to a change log. If you want me to download 70 Mb you need to first talk me into why I need it. You may want to hide detailed info for inexperienced users, but could you please then remember that I&#8217;m not one of those?</li><li>If it&#8217;s a tiny update (less than 1 Mb), you can just <strong>go ahead and install right away</strong>. You don&#8217;t even have to prompt me.</li><li><strong>Download and install in the background</strong>, without stealing my focus. If you&#8217;re shipping a big pile of fixes (ie. the version I bought was not done), you have to let me do other stuff while you update. Like surfing the web. It&#8217;s not Ok it require that I close unrelated programs, sorry.</li><li><strong>Never ever touch my browser bookmarks</strong>. Never add things to the quicklaunch bar. Never make things start automatically unless I&#8217;ve told you that&#8217;s what I want (why do most people have a Quicktime icon in their systray?). The only way of getting into my bookmarks or my quicklaunch bar is writing a really good application. You can&#8217;t force me to like you. The opposite works well though.</li><li><strong>Never require me to restart the computer</strong>. There&#8217;s only one exception for when you may: when I&#8217;m updating the operating system. No excuses.</li><li><strong>When you&#8217;re done</strong>, just start the program. I don&#8217;t want to confirm anything, I want to get to work using your app.</li></ol><p>(Bonus point from <a
href="#comment-31047">James Socol</a> in the comments: 11. <strong>Use incremental downloads</strong>, so I don&#8217;t have to download stuff I already have installed.)</p><p>If you are a software company, and can&#8217;t manage the above, just do it the old fashion way: let me manually download a file from your website. That will annoy me much less than a bad automatic process. Or if you want things to be really convenient: <strong>write a web application instead</strong>.</p><p>Now get to work. I&#8217;ve had it.</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/ten-commandments-of-update-services/feed/</wfw:commentRss> <slash:comments>20</slash:comments> </item> <item><title>7 silliest W3C specs ever published</title><link>http://friendlybit.com/other/7-silliest-w3c-specs-ever-published/</link> <comments>http://friendlybit.com/other/7-silliest-w3c-specs-ever-published/#comments</comments> <pubDate>Wed, 13 Aug 2008 20:20:52 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=208</guid> <description><![CDATA[W3C is producing lots and lots of good specifications and we seriously have their joined effort to thank for a lot of today&#8217;s web. But everything released by them isn&#8217;t all nice. I&#8217;ve digged deep into obscure search results to find, that&#8217;s right, the silliest specifications ever. *Drumroll*.
HTML+TIME: Why not add timers to HTML? Didn&#8217;t [...]]]></description> <content:encoded><![CDATA[<p>W3C is producing lots and lots of good specifications and we seriously have their joined effort to thank for a lot of today&#8217;s web. But everything released by them isn&#8217;t all nice. I&#8217;ve digged deep into obscure search results to find, that&#8217;s right, the <strong>silliest specifications ever</strong>. *Drumroll*.</p><p><a
href="http://www.w3.org/TR/NOTE-HTMLplusTIME">HTML+TIME</a>: Why not add timers to HTML? Didn&#8217;t you always want to only display that div only the first 4 seconds after load. Could this be combined with the blink tag somehow?</p><p><a
href="http://www.w3.org/TR/WD-wwwicn.html">Predefined icon entities</a>: No more images needed! Instead, let browsers implement whatever icons they want and just use them by typing &amp;calculator;, &amp;fax; or &amp;www;. I love the example icon for &amp;gopher;, is that an orc?</p><p><a
href="http://www.w3.org/TR/curie/">CURIE Syntax</a>: There are also huge specifications for nothing. What about a 2000+ word specifcation for the syntax: &#8220;charcters:characters&#8221;? This is what happens when you put too many &#8220;scientists&#8221; in one room.</p><p><a
href="http://www.w3.org/TR/1999/WD-Micropayment-Markup-19990825/">Micropayments in HTML</a>: If you&#8217;re going to make micropayments on the web, first build your payment system, then add lots of attributes you don&#8217;t need. Then make sure you pick a short code for your payment system, and get that one in the spec. Ehmm. No.</p><p><a
href="http://www.w3.org/TR/WD-jepi-uppflow-970106">Selecting Payment Over HTTP</a>: If you are into paying, but don&#8217;t really like interfaces, this one is for you. You can&#8217;t pay through it though, just select how to pay. Makes sense, doesn&#8217;t it?</p><p><a
href="http://www.w3.org/TR/2008/WD-css3-marquee-20080801/">CSS Marquee Module Level 3</a>: Remember the <code >marquee</code> element? What if you could implement that on any element, using only CSS3? Isn&#8217;t marquee behavior? I guess not. &#8220;The deadline for comments is 1 September 2008&#8243;.</p><p><a
href="http://www.w3.org/TR/2008/WD-wai-age-literature-20080514/">Accessibility for old people</a>: Very strange. This isn&#8217;t a specification but a literature review. Could this be the first step for W3C to go into book recommendations? I love the chapter of how to define an old person.</p><p>That&#8217;s all I can find. Now I leave it open to you to fill in with the comments about how useful they could be, and how SOAP should be in the list. Over to you, dear audience.</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/7-silliest-w3c-specs-ever-published/feed/</wfw:commentRss> <slash:comments>9</slash:comments> </item> <item><title>Google Reader subscriptions on a Wordpress Page</title><link>http://friendlybit.com/other/google-reader-subscriptions-on-a-wordpress-page/</link> <comments>http://friendlybit.com/other/google-reader-subscriptions-on-a-wordpress-page/#comments</comments> <pubDate>Sat, 09 Aug 2008 15:09:43 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=194</guid> <description><![CDATA[Instead of posting new lists of blogs I follow over and over again I thought I&#8217;d make a permanent place for them. So I just exported all of the blogs I follow from Google Reader (Settings -> Import/Export) and imported them to Wordpress (Write -> Links -> Import Links (in the sidebar)). OPML is a [...]]]></description> <content:encoded><![CDATA[<p>Instead of posting new lists of blogs I follow over and over again I thought I&#8217;d make a permanent place for them. So I just <strong>exported all of the blogs I follow</strong> from Google Reader (Settings -> Import/Export) and <strong>imported them to Wordpress</strong> (Write -> Links -> Import Links (in the sidebar)). <a
href="http://en.wikipedia.org/wiki/OPML">OPML</a> is a great format!</p><p>Then I created a <a
href="http://codex.wordpress.org/Pages#Page_Templates">Wordpress Page template</a> that simply printed the content of that page <strong>followed by all my imported links</strong>. This following is the code needed (as a file called links.php in your template directory):</p><pre><code >&lt;?php
// Template Name: Links
?&gt;
&lt;?php get_header(); ?&gt;
&lt;div id="content"&gt;
   &lt;?php while (have_posts()) : the_post(); ?&gt;
      &lt;div class="post" id="post-&lt;?php the_ID(); ?&gt;"&gt;
         &lt;h1&gt;&lt;?php the_title(); ?&gt;&lt;/h1&gt;
         &lt;div class="entry"&gt;
            &lt;?php the_content(); ?&gt;
            &lt;?php wp_list_bookmarks(); ?&gt;
         &lt;/div&gt;
      &lt;/div&gt;
   &lt;?php endwhile; ?&gt;
&lt;/div&gt;
&lt;?php get_sidebar(); ?&gt;
&lt;?php get_footer(); ?&gt;</code></pre><p>Now just create a new page, and select the Page Template &#8220;Links&#8221; at the bottom. Fill out a page title and an introduction text and press Save. Voilá!</p><p>The final touches was adding two new categories, &#8220;Blogs I follow&#8221; in English and Swedish, moving all links to one of those, and removing everything not related to web development or media. Some bastards also both have great blogs and are my friends, so I removed some duplicates too.</p><p>So, here it is, a permanent page of my Google Reader subscriptions, converted into a Wordpress page. I&#8217;m hoping you&#8217;ll find something interesting in the <a
href="/friends/">list of excellent blogs</a>!</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/google-reader-subscriptions-on-a-wordpress-page/feed/</wfw:commentRss> <slash:comments>6</slash:comments> </item> <item><title>Avlyssna befolkningen (Swedish)</title><link>http://friendlybit.com/other/avlyssna-befolkningen-swedish/</link> <comments>http://friendlybit.com/other/avlyssna-befolkningen-swedish/#comments</comments> <pubDate>Fri, 13 Jun 2008 10:51:29 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=164</guid> <description><![CDATA[(Eng: Sorry for writing this in swedish. Sweden is about to pass a law allowing the government to wiretap its citizens and I need to add a few things to the debate. The rest is in Swedish)
Sverige kommer på onsdag högst troligen rösta igenom ett lagändring om att FRA ska få avlyssna internet, istället för [...]]]></description> <content:encoded><![CDATA[<p>(Eng: Sorry for writing this in swedish. Sweden is about to pass a law allowing the government to wiretap its citizens and I need to add a few things to the debate. The rest is in Swedish)</p><p>Sverige kommer på onsdag högst troligen rösta igenom ett lagändring om att FRA ska få avlyssna internet, istället för som tidigare skett radio och satellit. Det verkar vara mycket förvirring och prestige inblandad och jag tänkte göra ett försök att vidga debatten något.</p><p>Många som är för FRA-lagen påpekar att detta &#8220;egentligen inte är något nytt&#8221;. Dom bara byter medium från radio till kabel. Är inte det fullständigt vettigt att även FRA ska få hänga med i teknikutvecklingen? Nej, för det finns en viktig skillnad: Vanligt folk använde inte radiovågor för att kommunicera tidigare, men dom använder internet för att kommunicera nu. Detta gör att FRA kommer att för möjlighet att avlyssna <strong>FLERA</strong> än tidigare, inte lika många. Gå inte på det argumentet, detta är inte bara en teknikuppdatering, det är en <strong>utökning av avlyssningen</strong>.</p><p>Politiker som är för lagen tänker också på FRA som en enhet istället för en grupp av enskilda människor. Skulle inte även du &#8220;bara prova&#8221; några sökningar och du satt där med en sökfält framför dig? Det är <strong>enskilda människor</strong> detta handlar om, inte en hel enhet som behöver göra fel, för att alla skyddsmekanismer som satts upp ska flyga åt fanders. Enskilda är det största hotet, men även FRA som enhet har gjort bort sig grundligt genom att <a
href="http://rickfalkvinge.se/2008/05/31/anders-wik-overdirektor-for-fra-berattar/">medvetet bryta mot lagen</a> tidigare. <strong>Systemet kommer med all säkerhet att missbrukas</strong>.</p><p>Många pratar också om den personliga integriteten, och det med all rätt, personlig integritet är viktigt. Vad väldigt få pratar om är <strong>företagskommunikation</strong>. Jag jobbar själv på ett internationellt konsultbolag som jobbar mycket mot svenska myndigheter. Vi skulle mycket väl kunna ha vår mailserver i Frankrike, där huvudkontoret ligger, vilket skulle göra att all vår kommunikation avlyssnas. Kommunikation som t.ex. skulle kunna handla om precis den myndighet som avlyssnar oss. Det håller inte.</p><p>FRA-lagen är en otroligt dum idé, som utökar möjligheterna för avlyssning av medborgarna, som bygger på att enskildas nyfikenhet inte blir för stor, och som inte bara påverkar den personliga integriteten utan också kan läcka personlig information om svenska företag.</p><p>Hjälp till, gör allt du kan för att <a
href="http://www.stoppafralagen.nu/">övertyga dina politiker att rösta nej</a>. <a
href="http://knuff.se/">Knuffs framsida</a> gör det väldigt tydligt vad bloggsfären tycker, vad tycker du?</p><p><strong>Uppdaterat</strong>: Lagen gick igenom. Från årsskiftet kommer all datatrafik att avlyssnas, och en del även sparas. Vilket totalt misslyckande. Jag är grymt besviken.</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/avlyssna-befolkningen-swedish/feed/</wfw:commentRss> <slash:comments>8</slash:comments> </item> <item><title>MSN blocks YouTube links</title><link>http://friendlybit.com/other/msn-blocks-youtube-links/</link> <comments>http://friendlybit.com/other/msn-blocks-youtube-links/#comments</comments> <pubDate>Sat, 10 May 2008 19:38:47 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=160</guid> <description><![CDATA[I&#8217;m not sure if there&#8217;s some kind of big power struggle going on right now, but obviously MSN is blocking strings containing &#8220;www.youtube.com&#8221;.
It started by me finding a funny youtube video (who didn&#8217;t?), and tried sending it to a friend. Message back was that &#8220;Message could not be sent because of a network error&#8221;. [...]]]></description> <content:encoded><![CDATA[<p>I&#8217;m not sure if there&#8217;s some kind of big power struggle going on right now, but obviously MSN is blocking strings containing &#8220;www.youtube.com&#8221;.</p><p>It started by me finding a funny youtube video (who didn&#8217;t?), and tried sending it to a friend. Message back was that &#8220;Message could not be sent because of a network error&#8221;. Some Googling brought up <a
href="http://www.istartedsomething.com/20080510/windows-live-messenger-blocks-wwwyoutubecom/">other people with the same problem</a>.</p><p>Is this the first of a series of power struggles on the big Web 2.0 sites? Will Facebook block out LinkedIn links. Will Google (the owners of youtube) not link to Microsoft content? Interesting times we live in, indeed.</p><p><strong>Update:</strong> Seems it works again, where they trying to block some virus? Is blocking a major site the best way to do that? Was there really a virus or where they merely displaying their power? Will we get to know more? Not likely.</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/msn-blocks-youtube-links/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Top 3 articles of friendlybit.com (according to me)</title><link>http://friendlybit.com/other/top-3-articles-of-friendlybitcom-according-to-me/</link> <comments>http://friendlybit.com/other/top-3-articles-of-friendlybitcom-according-to-me/#comments</comments> <pubDate>Fri, 11 Apr 2008 19:29:14 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/?p=156</guid> <description><![CDATA[Robert taunted me cause my blog was to inactive, so I thought I&#8217;d write something. As you might imagine, pushing me terribly to be creative like that isn&#8217;t a good way to get good posts up, so I thought I&#8217;d just point to some existing articles instead. The selection is not based on popularity, ratings, [...]]]></description> <content:encoded><![CDATA[<p><a
href="http://www.robertnyman.com/">Robert</a> taunted me cause my blog was to inactive, so I thought I&#8217;d write something. As you might imagine, pushing me terribly to be creative like that isn&#8217;t a good way to get good posts up, so I thought I&#8217;d just point to some existing articles instead. The selection is not based on popularity, ratings, number of visitors, comments, or anything like that. It&#8217;s based on me. :)</p><p>Just as a reference, you can find all <a
href="http://friendlybit.com/all-articles/">my articles</a> by clicking here. No wait, before the click here.</p><p>Now. First up is <strong>my post on <a
href="http://friendlybit.com/css/dear-justin-timberlake/">Justin Timberlake</a></strong>. Surprised? There&#8217;s lots of good things to say about that one. It was very fun to write, I love writing letters to totally unlikely people, and that was what I did. Secondly, there&#8217;s a couple of great comments on that post from people that seriously thought there was a chance that Justin would read it. Isn&#8217;t that like, desperate? Damn right it is. Thirdly, a couple of weeks after that post <a
href="http://www.robertnyman.com/">Robert</a> pulled me aside for a chat: &#8220;Don&#8217;t get upset by this, cause I just want to ask something&#8221;. &#8220;Yes?&#8221;, I replied, seeing he was somewhat uncomfortable. &#8220;Well&#8230; Are you gay? I mean that post about Justin some time ago&#8230;&#8221;. What?! Can&#8217;t you declare your love to a man nowadays without being called gay?! My god! :) (Update: Girlfriend is telling me to point people to the disclaimer below that post. Yeye.)</p><p>Number two of my favorite posts is <strong>my little <a
href="http://friendlybit.com/html/web-standards-hero-episode-1/">webstandards hero</a> thingie</strong>. I just got bored of the regular blog format and decided I should try something else. A comic book sounded like a good plan and I just started writing, making up little twists along the way. I like the end result, but I didn&#8217;t get that many readers (according to stats). Perhaps the webdev world wasn&#8217;t ready for plastic figures yet. Sad&#8230;</p><p>Third, and last, on this toplist is <strong>of course <a
href="http://friendlybit.com/css/real-hackers-dont-use-css/">Real hackers don&#8217;t use CSS</a></strong>. Again, I&#8217;m experimenting with style, and that one actually worked :) It still gets lots of visitors, and hopefully some nice laughs from people. My faviourite response was people from reddit, that were <strong>really</strong> upset that I used the term hackers like I did. How could I abuse it like that? How could I smear the fine shimmer of gold that emits from someone that can write Perl really well? Because I&#8217;m a mean evil person. Of course.</p><p>What can I learn from my own favorite posts? That I should experiment with style more. You&#8217;ll see more of that, I can assure you!</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/top-3-articles-of-friendlybitcom-according-to-me/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Fixing Sharepoint 2007</title><link>http://friendlybit.com/other/fixing-sharepoint-2007/</link> <comments>http://friendlybit.com/other/fixing-sharepoint-2007/#comments</comments> <pubDate>Thu, 27 Mar 2008 22:22:53 +0000</pubDate> <dc:creator>Emil Stenström</dc:creator> <category><![CDATA[Other topics]]></category><guid
isPermaLink="false">http://friendlybit.com/other/fixing-sharepoint-2007/</guid> <description><![CDATA[I&#8217;m sorry for all the Sharepoint 2007 posts lately, if you&#8217;re not interested, just skip to the next post :). Anyway. The Sharepoint team recently announced further support of an addon called Accessibility Kit for SharePoint (abbreviated AKS) in a blog post about the future of Sharepoint on their official blog.
I thought I&#8217;d comment on [...]]]></description> <content:encoded><![CDATA[<p>I&#8217;m sorry for all the Sharepoint 2007 posts lately, if you&#8217;re not interested, just skip to the next post :). Anyway. The Sharepoint team recently announced further support of an addon called <a
href="http://aks.hisoftware.com/index.html">Accessibility Kit for SharePoint</a> (abbreviated AKS) in a <a
href="http://blogs.msdn.com/sharepoint/archive/2008/03/12/announcing-accessibility-kit-for-sharepoint-1-1-and-future-roadmap.aspx">blog post about the future of Sharepoint</a> on their official blog.</p><p>I thought I&#8217;d comment on the future plans, and get a bit more constructive and point to things that are rather easy to fix. Perhaps I can affect what gets focus in the next version? With a release cycle of 30-34 months (!), any changes won&#8217;t get implemented anytime soon, but I guess getting on the right track is a first step.</p><h2>Shift focus from accessibility to customization</h2><p>First of all, I&#8217;ve only briefly touched accessibility on my two posts about Sharepoint (<a
href="/html/default-html-in-sharepoint-2007/">Default HTML in Sharepoint 2007</a> and <a
href="/css/sharepoint-2007-from-an-interface-developers-view">Sharepoint 2007 from an interface developer’s view</a>. But to me, accessibility is the second step, being able to customize things, is the first. Let me repeat that <strong>I care more about being able to customize the Sharepoint interface, than the default interface being accessible</strong>. Right now, large parts of the interface are locked down, deep inside of the Sharepoint core. If I could customize things, I could correct the accessibility issues myself. I really think the focus should be customization first, and accessibility second.</p><h2>But it&#8217;s possible to customize some parts!</h2><p>Lots of people have commented on my previous posts saying that it in fact <em>is possible</em> to get Sharepoint to produce valid HTML. It&#8217;s possible to some extent, by rewriting all masterpages and many default controls that come with Sharepoint. Of course you can build a good interface if you only use Sharepoint for storage, and build the interface from scratch. But that&#8217;s skipping a lot of the things you bought Sharepoint for, all the existing components!</p><p>And you still can&#8217;t change the collaborative parts. And as soon as you want to add content to the site or change settings, you&#8217;re back in lock-in, no control, Sharepoint interface land.</p><h2>Deliver as a service pack, not an addon</h2><p>So, back to the announcement. I think it&#8217;s a shame that AKS is delivered as an add-on, and not as a service pack to Sharepoint. Accessibility is a user concern (they are the ones that need stuff done), not one that developers desperately need. So the focus should be to push this one to as many users as possible, and make it very easy to enable it for developers. A service pack would accomplish that much more effectively than an addon does. Most developers won&#8217;t even know the addon exists!</p><h2>Control adapters are not the best solution</h2><p>In the announcement is something called Smart adapters, from what I understand a way to automate replacing .NET controls with your own controls. So when Sharepoint calls that breadcrumb control, you redirect it to call your own breadcrumb instead. The problem here is that I have to rebuild the whole control from scratch, instead of just changing how it&#8217;s output.</p><p>Instead, if Sharepoint could expose a .NET List (the breadcrumb links) to me, I could decide the rendering myself. That&#8217;s customization!</p><h2>Don&#8217;t repeat yourself, use master pages</h2><p>More suggestions of changes: One of the biggest annoyances in Sharepoint is the bad implementation of master pages. Sharepoint only allows each site to have one Master page set, so you really can&#8217;t use your master pages for controlling things like number of columns. Putting that in the masterpage would means you would need to use that number of columns on all your pages. In Sharepoint, you instead have to wash out the bare essentials that all your pages have (a html and body element?), and set that in the masterpage. If two of your pages are similar, copy/paste the code between them. Terrible! What I want to be able to do, is to set several masterpages per site, and use inheritance between those masterpages. That&#8217;s fundamental master page concepts, that Sharepoint is lacking.</p><h2>Organization of CSS and Javascript</h2><p>When you ship code to your customers (Sharepoint is a framework, so Microsoft is essentially selling code to developers), you need to make sure that code is readable, and understandable. That does not only apply to C# code, it applies to the full interface as well. That&#8217;s simply not the case with Sharepoint. There&#8217;s two humongous files, core.css and core.js, where most CSS and Javascript have been poured into, with no consideration of organization or namespaces. There&#8217;s no indication how certain C# components interact with the CSS and Javascript and very very little documentation (often added after the fact, by annoyed developers like me). This just <strong>have to change</strong>, we need organization, modules, separation. We need an interface that we can understand without reverse engineering!</p><p>Another thing, releasing controls that are thought to be reused, really mean that they need to work in <a
href="http://www.quirksmode.org/css/quirksmode.html">standards mode</a>. All controls, even webparts. It isn&#8217;t reasonable to have to <a
href="http://blogs.msdn.com/feldman/archive/2007/11/18/sharepoint-doctype-and-master-pages.aspx">patch things inside your Javascript chaos</a> to make basic things work! It isn&#8217;t reasonable to have to <a
href="http://www.heathersolomon.com/blog/archive/2007/02/21/6213.aspx">patch CSS for standards mode</a> either. It shouldn&#8217;t have relied on quirks mode in the first place!</p><h2>Examples are good, but&#8230;</h2><p>The announcement also mentions examples. Releasing examples of how to make Sharepoint validate, conform to WCAG 2.0 AA (really?), or any other standard, can of course be of help. A lot more help than no documentation. But it&#8217;s also pushing over the problem to the customers. &#8220;We couldn&#8217;t make our product validate, but you can fix that, but doing this, this, then this, and that&#8221;. A default site shouldn&#8217;t have 200 errors out of the box, you can do better than that.</p><h2>WYSIWYG editor and Firefox</h2><p>The Accessibility Kit also mentions a new WYSIWYG editor, &#8220;aRTE&#8221;, that can be used instead of the default editor. It&#8217;s of course well needed, the default editor doesn&#8217;t work at all outside of Internet Explorer, and I really doubt that it&#8217;s accessible. So why is this released as an addon? You&#8217;ve built a better content editor, give it to people!</p><p>Also, the new editor takes you another step closer to supporting Firefox. You&#8217;re pretty near, but not being able to edit content in a CMS with Firefox really is bad. That should be the baseline. Really, I could understand if the ActiveX über-COM Silverlight Vista integration didn&#8217;t work, but editing content, or maybe interacting with webparts? To cling to Internet Explorer in this day and age is not going to work.</p><h2>In summary</h2><p>I hope that some of the improvement areas mentioned in this post will be taken into consideration in the development of the next version of Sharepoint. My tone is harsh, but that&#8217;s because I&#8217;ve really been slowed down my Sharepoint in my daily work. Customers complain because tiny interface changes takes days to complete. I hope you can see past my frustration, and see that there are big areas where you really can improve how Sharepoint work. I&#8217;m willing to help pointing in (what I think is) the right direction.</p> ]]></content:encoded> <wfw:commentRss>http://friendlybit.com/other/fixing-sharepoint-2007/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> </channel> </rss>
<!-- This site's performance optimized by W3 Total Cache. Dramatically improve the speed and reliability of your blog!

Learn more about our WordPress Plugins: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (user agent is rejected)
Database Caching 5/10 queries in 0.015 seconds using disk

Served from: c8.67.364a.static.theplanet.com @ 2010-03-14 02:26:39 -->