<?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>bassistance.de</title>
	<atom:link href="http://bassistance.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://bassistance.de</link>
	<description>Jörn Zaefferer on Bass, Geeks and Rock'n'Roll</description>
	<lastBuildDate>Tue, 25 Oct 2011 17:14:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>HTML5 E-Mail Validation</title>
		<link>http://bassistance.de/2011/10/25/html5-e-mail-validation/</link>
		<comments>http://bassistance.de/2011/10/25/html5-e-mail-validation/#comments</comments>
		<pubDate>Tue, 25 Oct 2011 17:14:52 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=882</guid>
		<description><![CDATA[Validating email addresses is a very unthankful business. Whatever you do, you&#8217;re doing it wrong. If you follow the spec, users complain about false positives, if you don&#8217;t, they&#8217;ll complain about false negatives. And you can&#8217;t even blame them &#8211; in most contexts, &#8220;foo@bar&#8221; is not a valid address, according to the standard it is [...]]]></description>
			<content:encoded><![CDATA[<p>Validating email addresses is a very unthankful business. Whatever you do, you&#8217;re doing it wrong. If you follow the spec, users complain about false positives, if you don&#8217;t, they&#8217;ll complain about false negatives. And you can&#8217;t even blame them &#8211; in most contexts, &#8220;foo@bar&#8221; is not a valid address, according to the standard it is (consider &#8220;foo@localhost&#8221;).</p>
<p>As usual, being pragmatic and having a good testsuite helps. As part of the jQuery Validation plugin, a <a href="https://github.com/jzaefferer/jquery-validation/blob/master/test/methods.js#L66">somewhat comprehensive testsuite</a> came together. The <a href="https://github.com/jzaefferer/jquery-validation/blob/master/jquery.validate.js#L1025">implementation for that is here</a>. That expression wasn&#8217;t written by hand, but compiled. <a href="https://github.com/scottgonzalez/regex-builder/blob/master/regexbuilder.email.js">Scott González has the tools for that</a>.</p>
<p>With that in mind, what are the html5 email validations doing? While I don&#8217;t know what they&#8217;re testing against, <a href="https://plus.google.com/104229157698862547431/posts/7X6ReGLCXKD">Schalk Neethling looked up</a> the implementations for <a href="http://www.google.com/codesearch#OAMlx_jo-ck/src/third_party/WebKit/Source/WebCore/html/EmailInputType.cpp&amp;exact_package=chromium&amp;q=%20email%20input%20validation&amp;type=cs&amp;l=36  ">Chrome</a> and <a href="https://gist.github.com/1210320">Firefox</a>. It would be interesting to run those implementations against the testsuite above, and see if there are problems. Anyone interested in helping with that?</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/10/25/html5-e-mail-validation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fighting Brook&#8217;s Law</title>
		<link>http://bassistance.de/2011/10/20/fighting-brooks-law/</link>
		<comments>http://bassistance.de/2011/10/20/fighting-brooks-law/#comments</comments>
		<pubDate>Thu, 20 Oct 2011 15:13:53 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=879</guid>
		<description><![CDATA[You prolly heard of Brook&#8217;s Law before: adding manpower to a late software project makes it later While that is, in Brook&#8217;s words, an &#8220;outrageous oversimplification&#8221;, it captures a lot value. And as with most things, taking a step back by generalzing it, yields some interesting results. Consider the recommendation (see for example slide 46 [...]]]></description>
			<content:encoded><![CDATA[<p>You prolly heard of <a href="http://en.wikipedia.org/wiki/Brooks's_law">Brook&#8217;s Law</a> before:</p>
<blockquote><p>adding manpower to a late software project makes it later</p></blockquote>
<p>While that is, in Brook&#8217;s words, an &#8220;outrageous oversimplification&#8221;, it captures a lot value. And as with most things, taking a step back by generalzing it, yields some interesting results.</p>
<p>Consider the recommendation (<a href="http://www.slideshare.net/joestump/starting-your-startup">see for example slide 46 here</a>) that anyone with experience with venture capital funding will give you: Only take funding when you don&#8217;t need it. In this context, you should use funding to grow a company that already works. If you need money just to keep it running, you might as well stop.</p>
<p>Kind of similar to Brook&#8217;s Law, isn&#8217;t it? But still, its kind of unintuitive. Let&#8217;s try another example:</p>
<p>Consider that you live in a time where you need children to take care of you eventually, when you can&#8217;t take care of yourself anymore. Was the reality not that long ago. In that context, would you start making children the moment you actually need them? Nope, <del>its just Chuck Testa</del> you&#8217;d start two or three decades before that.</p>
<p>Luckily for us, in software projects we don&#8217;t have to plan decades ahead. But the lesson should be clear: to fight Brook&#8217;s Law, add people to your project when you can, not when you need to.</p>
<p><small><a href="https://gist.github.com/1301386">Here&#8217;s the post as a gist, you&#8217;re welcome to improve it.</a></small></p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/10/20/fighting-brooks-law/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Git fu: Bash addons</title>
		<link>http://bassistance.de/2011/10/14/git-fu-bash-addons/</link>
		<comments>http://bassistance.de/2011/10/14/git-fu-bash-addons/#comments</comments>
		<pubDate>Fri, 14 Oct 2011 14:21:27 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Git]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=864</guid>
		<description><![CDATA[My .bash_profile, sourcing git-completion.bash to get autocomplete for git itself and git-flow-completion.bash to get autocomplete for git-flow, along with two single character shortcuts for the most common shortcuts (s for `git status`, d for `git diff`). And my .gitconfig, among regular config and customizing colored output also defining a bunch of aliases: (If you&#8217;re reading [...]]]></description>
			<content:encoded><![CDATA[<p>My .bash_profile, sourcing <a href="https://github.com/git/git/blob/master/contrib/completion/git-completion.bash">git-completion.bash</a> to get autocomplete for git itself and <a href="https://github.com/bobthecow/git-flow-completion/blob/master/git-flow-completion.bash">git-flow-completion.bash</a> to get autocomplete for <a href="http://github.com/nvie/gitflow">git-flow</a>, along with two single character shortcuts for the most common shortcuts (s for `git status`, d for `git diff`). And my .gitconfig, among regular config and customizing colored output also defining a bunch of aliases:</p>
<p><script src="http://gist.github.com/1287185.js"></script><br />
(<a href="https://gist.github.com/1287185">If you&#8217;re reading the feed, check this gist</a>).</p>
<p>The export line configures bash to show the current directory (full path!), and, if in a repository, the repository type and current branch, looking something like this: ~/dev/qunit [git:master] $<br />
For that to work, `<a href="http://vc.gerg.ca/hg/vcprompt/">vcprompt</a>` needs to be installed. If you&#8217;re using homebrew:</p>
<p>`brew install vcprompt`</p>
<p>The last line in the .bash_profile overrides the `git` command to point at <a href="https://github.com/defunkt/hub">hub, which wraps `git` to provide a few additional commands that make it easier to work with GitHub projects</a>. Among others, it infers projects based on the current git repository and its remotes, powering the git-fork alias, which I use whenever I test and merge pull requests. Say someone named `beefheart` sends a pull request for jquery/qunit. All I do to get his remote is this:</p>
<p>`~/dev/qunit [git:master] $ git fork beefheart`</p>
<p>So much easier then trying to put together the correct .git URL for his fork, then wrapping that with the right invocation of `git remote add -f`.</p>
<p>Other aliases I use all day:</p>
<ul>
<li>`git cm &#8220;Message 123&#8243;` to commit all updated files without having to launch an editor</li>
<li>`git br` and `git co` to create, switch and delete branches</li>
<li>`git lp` to see commits with diffs</li>
<li>`git lg` to see a kind-of tree view of commits &#8211; will show the commits a merge commit added directly after that merge commit, instead of the usual chronological order of `git log`. Very useful to review a banch of merges.</li>
<li>`git undo` to revert bad merges</li>
<li>`git co .` to revert all changed files</li>
</ul>
<p>Some more git related tools are provided by <a href="https://github.com/visionmedia/git-extras">git-extras</a>, where I now use git-changelog to create the release notes for QUnit.</p>
<p>I use <a href="https://github.com/scottgonzalez/pretty-diff">iTerm 2</a> on OSX, if nothing else, for the ability to easily display multiple terminals side by side.</p>
<p>If you use ZSH, apparently you can get a lot of this <a href="https://github.com/robbyrussell/oh-my-zsh">bundled via oh-my-zsh</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/10/14/git-fu-bash-addons/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Release: Validation Plugin 1.9.0</title>
		<link>http://bassistance.de/2011/10/07/release-validation-plugin-1-9-0/</link>
		<comments>http://bassistance.de/2011/10/07/release-validation-plugin-1-9-0/#comments</comments>
		<pubDate>Fri, 07 Oct 2011 10:34:51 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=858</guid>
		<description><![CDATA[An update for the jQuery validation plugin is available. Most notable is heavily improved compability with HTML5 controls: You can apply validation rules to input types like number, email or url, it&#8217;ll get picked up by the plugin if the type matches a rule, and a required attribute (with the argument) also works with both jQuery 1.6+ [...]]]></description>
			<content:encoded><![CDATA[<p>An update for the <a href="http://bassistance.de/jquery-plugins/jquery-plugin-validation/">jQuery validation plugin</a> is available. Most notable is heavily improved compability with HTML5 controls: You can apply validation rules to input types like number, email or url, it&#8217;ll get picked up by the plugin if the type matches a rule, and a required attribute (with the argument) also works with both jQuery 1.6+ (prop) and previous versions (attr).</p>
<p>Another change should make the setup of forms with hidden elements easier, these are now ignored by default (option &#8220;ignore&#8221; has &#8220;:hidden&#8221; now as default). In theory, this could break an existing setup. In the unlikely case that it actually does, you can fix it by setting the ignore-option to &#8220;[]&#8221; (square brackets without the quotes).</p>
<p>A few improvements and bug fixes for validation methods landed:</p>
<ul>
<li>Creditcard now accepts spaces between the other valid characters</li>
<li>Email doesn&#8217;t accept a dot character at the end anymore.</li>
<li>The time method (in additionalMethods.js) is now more thorough.</li>
<li>A time12h method got added (also in additionalMethods.js), to validate 12-hour times, while the existing time method does 24-hour times.</li>
</ul>
<p>There also two new localizations, resulting in a total number of 38 localizations. Existing localizations saw various improvements &#8211; thanks to everyone who contributed those! Its the only feature where I&#8217;m relying completely on contributions, as I can&#8217;t verify the correctness of any of the localizations (other then English and German).</p>
<p>Backwards compatibility is still going strong: The plugin should work with anything from jQuery 1.3.x to 1.6.x.</p>
<p><strong><a href="http://jquery.bassistance.de/validate/jquery-validation-1.9.0.zip">Download this release.</a></strong></p>
<p>The full changelog:</p>
<ul>
<li>Added Basque (EU) localization</li>
<li>Added Slovenian (SL) localization</li>
<li>Fixed issue #127 &#8211; Finnish translations has one : instead of ;</li>
<li>Fixed Russian localization, minor syntax issue</li>
<li>Added in support for HTML5 input types, fixes #97</li>
<li>Improved HTML5 support by setting novalidate attribute on the form, and reading the type attribute.</li>
<li>Fixed showLabel() removing all classes from error element. Remove only settings.validClass. Fixes #151.</li>
<li>Added &#8216;pattern&#8217; to additional-methods to validate against arbitraty regular expressions.</li>
<li>Improved email method to not allow the dot at the end (valid by RFC, but unwanted here). Fixes #143</li>
<li>Fixed swedish and norwedian translations, min/max messages got switched. Fixes #181</li>
<li>Fixed #184 &#8211; resetForm: should unset lastElement</li>
<li>Fixed #71 &#8211; improve existing time method and add time12h method for 12h am/pm time format</li>
<li>Fixed #177 &#8211; Fix validation of a single radio or checkbox input</li>
<li>Fixed #189 &#8211; :hidden elements are now ignored by default</li>
<li>Fixed #194 &#8211; Required as attribute fails if jQuery&gt;=1.6 &#8211; Use .prop instead of .attr</li>
<li>Fixed #47, #39, #32 &#8211; Allowed credit card numbers to contain spaces as well as dashes (spaces are commonly input by users).</li>
</ul>
<div>As usual:</div>
<ul>
<li>Please post questions to the <a href="http://forum.jquery.com/using-jquery-plugins">official Using jQuery Plugins Forum</a>, tagging your question with (at least) &#8220;validate&#8221;. Keep your question short and succinct and provide code when possible; a testpage makes it much more likely that you get an useful answer in no time.</li>
<li>Please post bug reports and other contributions (enhancements, features, eg. new validation methods) to the <a href="https://github.com/jzaefferer/jquery-validation/issues">GitHub issue tracker</a></li>
</ul>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/10/07/release-validation-plugin-1-9-0/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Links related to software patents</title>
		<link>http://bassistance.de/2011/08/06/links-related-to-software-patents/</link>
		<comments>http://bassistance.de/2011/08/06/links-related-to-software-patents/#comments</comments>
		<pubDate>Sat, 06 Aug 2011 11:46:05 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Worth Reading]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=849</guid>
		<description><![CDATA[This post is meant to gather articles or other links on the topic of software patents. If you have something to add, let me know! To start with, Dilbert takes the opportunity to make fun of &#8216;em today. Next up, Martin Fowler on software patents, but starting of with some background on where patents originally [...]]]></description>
			<content:encoded><![CDATA[<p>This post is meant to gather articles or other links on the topic of software patents. If you have something to add, <a href="mailto:joern.zaefferer@googlemail.com">let me know</a>!</p>
<ul>
<li>To start with, <a href="http://dilbert.com/strips/comic/2011-08-06/">Dilbert takes the opportunity to make fun of &#8216;em today</a>.</li>
<li>Next up, <a href="http://martinfowler.com/bliki/SoftwarePatent.html">Martin Fowler on software patents</a>, but starting of with some background on where patents originally came from and how they likely helped enabling much of the industrial revolution, laying the ground for the world of regular change we live in today. He also outlines how certain core principles got disposed, making especially software patents reverse the effect they were originally intended for.</li>
<li>The term &#8220;patent troll&#8221; refers to a company that holds certain software patent, yet has no product on its own, allowing them to sue other, usually bigger, companies for infringing their patents. Unlike one big company with a patent portfolio sueing another big company, which can then count-sue them, the patent troll has no product, therefore nothing to infringe with. A prime example of such a patent troll is Eolas &#8211; their one or two patents are about basic browser technologies. Microsoft spent more then a decade with them until finally giving in, and in 2009 they sued a bunch of other big companies. <a href="http://en.wikipedia.org/wiki/Eolas">The Wikipedia article has a full list and more details</a>.</li>
<li>The item above claims that big companies don&#8217;t sue each other due to both sides holding enough patents. Of course the reality isn&#8217;t as simple as that. Just this week <a href="http://googleblog.blogspot.com/2011/08/when-patents-attack-android.html">Google posted a non-subtle piece</a> on how they are getting sued by Microsoft and Apple, apparently with the goal of killing Android, with Apple (iPhone) and Microsoft (Windows Mobile) having an interest in getting rid of that.</li>
<li>
<ul>
<li>As everything, that Google piece should be taken a grain of salt. Which, for example, <a href="http://blogs.forbes.com/timothylee/2011/08/03/google-should-publicly-oppose-software-patents/">this Forbes article doesn&#8217;t seem to do</a>. It quotes parts of the Google post, then adds how they should go further on lobbying to get rid of patents completly: &#8220;So if abolition is the right reform (and I think it is), then companies that say so early are going to look prescient&#8221;. There&#8217;s no attempt in looking at the other side of the coin.</li>
<li><a href="http://blog.yafla.com/A_Curse_of_One_Thousand_Intellectual_Ventures/">A much more reflecting post is, pure coincidence I guess, by Dennis Forbes</a>, a software architect from Toronto. He starts out calling the Google post what it really is: &#8220;Google has started an assault by posting some hypocritical and self-serving missives. I would expect absolutely nothing less in such a situation. When you&#8217;re in a position of weaknesses you attack the things that make you weak. It is predictable and consistent with every corporation since the dawn of time&#8221;. And then goes into detail on the relationships between Google and IBM (covering each others back right now), Oracle, Apple and Microsoft. In the end he concludes: &#8220;Patents by their definition are anti-competition on the premise that they&#8217;re pro-innovation. In current practice they are anti-innovation.&#8221;</li>
<li>Yet another article goes a bit further in in not-fanboying Google, but <a href="http://brianshall.com/content/google-are-pussies">instead calling them out as pussies</a>. He does so a bit too often, but its still well worth a read. Basically he goes into detail how Google is making billions from the search and ads monopoly, then using that money to buy or destroy other businesses, without any innovation anywhere. There&#8217;s obviously a lot of bullshit in this article as well, but when put together with the other pieces, presents a much more interesting picture of the overall situation.</li>
<li>Another post, <a href="http://www.groklaw.net/article.php?story=20110805154137803">Groklaw on &#8220;A Brief Explanation of Microsoft&#8217;s Anti-Google Patent FUD&#8221;</a>, more on the &#8220;Google isn&#8217;t whining&#8221; side, takes the Google post a apart, and unlike the other articles above, provides a lot of links and references, including tweets from Microsoft employeers and emails related to patent bids. The article also links to another post on the site, about &#8220;<a href="http://www.groklaw.net/article.php?story=20110614184205441">What to Do If You Receive a Lodsys Letter</a>&#8220;. This one goes into detail on another patent troll, Lodsys, targeting small companies developing for iOS.</li>
</ul>
</li>
</ul>
<p>Finally one more link to a subgroup of a special-interest commission of the german government, the <a href="https://standards.enquetebeteiligung.de/instance/standards">&#8220;Projektgruppe Interoperabilität, Standards, Open Source&#8221;</a>. If I don&#8217;t happen to find someone to help out with that, someone with more experience in this area, I&#8217;m planning to post a proposal there covering software patents, with the general idea of making sure that, while software patents are granting in Germany, won&#8217;t ever get to a point where they can get enforced in court. Right now I need more information on the actual situation here. The resources I&#8217;m gathering here should help providing references for that proposal.</p>
<p>In regards to german legislation, there&#8217;s a <a href="http://stopsoftwarepatents.eu/DE/211000297544/">petition against software patents</a>, sponsored by the absurdly german named <a href="http://www.ffii.de/">&#8220;Förderverein für eine Freie Informationelle Infrastruktur e.V.&#8221; (FFII)</a>. Online petitions are kind of silly, but at least here the petition site seems to be gathering some useful references.</p>
<p>For resources as they come in:</p>
<ul>
<li><a href="http://blogmaverick.com/2011/08/07/my-suggestion-on-patent-law/">A blog post suggesting to get rid of both software and process patents</a>, outlining some of the issues and potential gains. Its somewhat one-sided. The comments actually look somewhat reasonable, not something I generally expect for comments on the internet&#8230;</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/08/06/links-related-to-software-patents/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Release: Validation Plugin 1.8.1</title>
		<link>http://bassistance.de/2011/05/14/release-validation-plugin-1-8-1/</link>
		<comments>http://bassistance.de/2011/05/14/release-validation-plugin-1-8-1/#comments</comments>
		<pubDate>Sat, 14 May 2011 16:42:12 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=837</guid>
		<description><![CDATA[An update for the jQuery validation plugin is available. This brings compability with jQuery 1.6.1, while staying backwards compatible with 1.3.2, 1.4.2, 1.4.4 and 1.5.2. The bug was related to the plugin&#8217;s usage of the form.elements property, which jQuery 1.6 doesn&#8217;t support anymore. Other then that, there is a bug fix for adding and removing [...]]]></description>
			<content:encoded><![CDATA[<p>An update for the <a href="http://bassistance.de/jquery-plugins/jquery-plugin-validation/">jQuery validation plugin</a> is available. This brings compability with jQuery 1.6.1, while <a href="http://jquery.bassistance.de/validate/test/">staying backwards compatible with 1.3.2, 1.4.2, 1.4.4 and 1.5.2</a>.</p>
<p>The bug was related to the plugin&#8217;s usage of the form.elements property, which jQuery 1.6 doesn&#8217;t support anymore. Other then that, there is a bug fix for adding and removing the error and valid classes on radio and checkbox elements (thanks to Phil Haack for the contribution), as well as two new localizations: Thai and Vietnamese. That brings the plugin to a total of 37 supported locales.</p>
<p>If you&#8217;ve been testing 1.8.0 release with jQuery 1.6 and couldn&#8217;t get it to work, despite the note saying that its working, please update to 1.8.1. The form.elements fix was in place before 1.6 final got released, and I only tested against latest code on GitHub, while 1.8.0 was indeed broken.</p>
<p><strong><a href="http://jquery.bassistance.de/validate/jquery-validation-1.8.1.zip">Download this release.</a></strong></p>
<p>The full changelog:</p>
<ul>
<li>Added Thai (TH) localization, fixes #85</li>
<li>Added Vietnamese (VI) localization, thanks Ngoc</li>
<li>Fixed issue #78. Error/Valid styling applies to all radio buttons of same group for required validation.</li>
<li>Don&#8217;t use form.elements as that isn&#8217;t supported in jQuery 1.6 anymore. Its buggy as hell anyway (IE6-8: form.elements === form).</li>
</ul>
<ul>
<li>Please post questions to the <a href="http://forum.jquery.com/using-jquery-plugins">official Using jQuery Plugins Forum</a>, tagging your question with (at least) &#8220;validate&#8221;. Keep your question short and succinct and provide code when possible; a testpage makes it much more likely that you get an useful answer in no time.</li>
<li>Please post bug reports and other contributions (enhancements, features, eg. new validation methods) to the <a href="https://github.com/jzaefferer/jquery-validation/issues">GitHub issue tracker</a></li>
</ul>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/05/14/release-validation-plugin-1-8-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Release: Validation Plugin 1.8</title>
		<link>http://bassistance.de/2011/03/25/release-validation-plugin-1-8/</link>
		<comments>http://bassistance.de/2011/03/25/release-validation-plugin-1-8/#comments</comments>
		<pubDate>Fri, 25 Mar 2011 13:43:38 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=830</guid>
		<description><![CDATA[An update for the jQuery validation plugin is available. This brings compability with jQuery 1.5.1, while staying backwards compatible with 1.3.2, 1.4.2, 1.4.4 and 1.5.0. A bug related to remove validation with client-side formatted messages was fixed, along with improvements to localizations and four new ones, resulting in a total of 34 localizations. This release [...]]]></description>
			<content:encoded><![CDATA[<p>An update for the <a href="http://bassistance.de/jquery-plugins/jquery-plugin-validation/">jQuery validation plugin</a> is available. This brings compability with jQuery 1.5.1, while <a href="http://jquery.bassistance.de/validate/test/">staying backwards compatible with 1.3.2, 1.4.2, 1.4.4 and 1.5.0</a>.</p>
<p>A bug related to remove validation with client-side formatted messages was fixed, along with improvements to localizations and four new ones, resulting in a total of 34 localizations.</p>
<p>This release is the first to use Google Closure Compiler for minifying files. Like other projects, I&#8217;ve dropped the .pack.js files in favor of minifying and gzipping.</p>
<p><strong><a href="http://jquery.bassistance.de/validate/jquery-validation-1.8.0.zip">Download this release.</a></strong></p>
<p>The full changelog:</p>
<ul>
<li><a href="http://plugins.jquery.com/node/14120">Improved NL localization</a></li>
<li>Added Georgian (GE) localization, thanks Avtandil Kikabidze</li>
<li>Added Serbian (SR) localization, thanks Aleksandar Milovac</li>
<li>Added ipv4 and ipv6 to additional methods, thanks Natal Ngétal</li>
<li>Added Japanese (JA) localization, thanks Bryan Meyerovich</li>
<li>Added Catalan (CA) localization, thanks Xavier de Pedro</li>
<li>Fixed missing var statements within for-in loops</li>
<li><a href="https://github.com/jzaefferer/jquery-validation/issues/11">Fix for remote validation, where a formatted message got messed up</a></li>
<li>Bugfixes for compability with jQuery 1.5.1, while maintaining backwards-compability</li>
</ul>
<p>The migration to GitHub is mostly complete, issues are now tracked there:</p>
<ul>
<li>Please post questions to the <a href="http://forum.jquery.com/using-jquery-plugins">official Using jQuery Plugins Forum</a>, tagging your question with (at least) &#8220;validate&#8221;. Keep your question short and succinct and provide code when possible; a testpage makes it much more likely that you get an useful answer in no time.</li>
<li>Please post bug reports and other contributions (enhancements, features, eg. new validation methods) to the <a href="https://github.com/jzaefferer/jquery-validation/issues">GitHub issue tracker</a></li>
</ul>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/03/25/release-validation-plugin-1-8/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Why are smartphones so dumb?</title>
		<link>http://bassistance.de/2010/11/30/why-are-smartphones-so-dumb/</link>
		<comments>http://bassistance.de/2010/11/30/why-are-smartphones-so-dumb/#comments</comments>
		<pubDate>Tue, 30 Nov 2010 08:11:37 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=781</guid>
		<description><![CDATA[If you think about hard- and software in terms of wasted potential, instead of just bad design, you can start seeing a lot of potential everywhere. I had that moment today when thinking about my so called smartphone and what it does in terms of phonecalls. Its really not that much. There&#8217;s a list of [...]]]></description>
			<content:encoded><![CDATA[<p>If you think about hard- and software in terms of wasted potential, instead of just bad design, you can start seeing a lot of potential everywhere.</p>
<p>I had that moment today when thinking about my so called smartphone and what it does in terms of phonecalls. Its really not that much. There&#8217;s a list of contacts, each with some optional data like email address and phone numbers. I can mark a number of each contact as a favorite to get a smaller list on a separate page, that I can reorder. If I call someone or get a call, a new entry is added to the list of Recents. If I have a number without a contact, I can use the keypad to call the number directly.</p>
<p>So far, so good. Its very barely beyond what my old Siemens mobile phone did nine years ago. Let&#8217;s see what innovation could&#8217;ve happened in this space.</p>
<ul>
<li>The list of contacts isn&#8217;t in sync with my Google Contacts, that is, my GMail address book. Eventually I have to put in the effort to merge these two, as the one has more phone numbers, the other more email addresses. But why is that such a hassle? There&#8217;s so much room for improvement on contacts management alone.</li>
<li>Instead of having to manually manage favorites, why doesn&#8217;t the software keep track of some statistics? Easy to track data like most often called, most often calling, longest phone calls, shortest phone calls. Or time of day when calling. And then automatically built a list of favorites, based on the current time, or even location. Ask me once if its okay to enable GPS every now and then to record the location, only for helping you choose the contact to call a bit faster.</li>
<li>Skype replaced the phone for a lot of calls for me. Why? I can see if a contact is online, and if so, if he is available or actually busy. If he&#8217;s busy, I can send a text message directly in the same application, and I can get a reply back in the same application. On the phone, I know nothing about the current status of the person I want to call. I could send text messages, but I wouldn&#8217;t know if the other person will read them in the next minutes or even today. Even if the phone is set to meeting and the phone has the current meeting on its calendar and would be able to let me know that the person in the meeting could call me back in 30 minutes, I still have no idea whats going on.</li>
<li>Voicemail sucks. Why do I have to interact with a computer voice and the keypad, when this should be an application running on my phone, with a list of missed calls, a text transcript of the message they left, if any, and a button to play back the message, and another to call them back. Or when I set my phone to &#8220;I&#8217;m busy&#8221;, why does it have to ring for a few time before letting the caller now that I&#8217;m busy? Why not just have a very short recording of myself, so that they know they called the right number, which basically says &#8220;I can&#8217;t answer right now, but I&#8217;ll call you back! If you want, leave a message, *beep*&#8221;. That would set the right expectation &#8211; their call wasn&#8217;t in vein, nope, I&#8217;ll call you back!<br />
Google Voice may actually address several of these issues and features &#8211; but of course its &#8220;not available in your country&#8221;, so not helping.</li>
<li>There&#8217;s barely any integration between phone calls, Skype, text and instant messaging, Twitter or any other social network.  There&#8217;s so much potential for grouping my phone&#8217;s contact based on the actual social network they are in, like actual friends, colleagues, family, clients and so on. Obviously this could be integrated with Twitter and other so-called social networks. If you think about that, Twitter actually does a horrible job as a social network, as it doesn&#8217;t help you at all with grouping contacts. Manually managed lists are a joke compared to the potential that some automatic and exposed data mining would have on your network. <a href="http://blog.koehntopp.de/archives/2978-Die-unertraegliche-Lameness-des-Web-2.0.html#en">Kristian Köhntopp has more on that</a>, if you&#8217;re interested. He&#8217;s got both German and English versions of his article, and the English one lacks one of the key phrases of the German one: &#8220;Können wir stattdessen mal Kommunikation designen?&#8221; &#8211; roughly translated as &#8220;Could we instead start designing communication?&#8221;</li>
</ul>
<p>There&#8217;s probably more than that &#8211; I&#8217;ll update the post when more ideas shows up. If you&#8217;ve got one, <a href="mailto:joern.zaefferer@gmail.com">let me know</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2010/11/30/why-are-smartphones-so-dumb/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>The Attention Span Myth</title>
		<link>http://bassistance.de/2010/11/29/the-attention-span-myth/</link>
		<comments>http://bassistance.de/2010/11/29/the-attention-span-myth/#comments</comments>
		<pubDate>Mon, 29 Nov 2010 11:58:07 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=768</guid>
		<description><![CDATA[There&#8217;s this modern myth about our attention span being really short, damaged by mobile phones and the internet. Usually these arguments are based on anecdotal-evidence, without any attempt at refuting them. So when I found this nugget in Donald A. Norman&#8217;s book Emotional Design, I had to share it: Today it is customary to argue [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s this modern myth about our attention span being really short, damaged by mobile phones and the internet. Usually these arguments are based on anecdotal-evidence, without any attempt at refuting them. So when I found this nugget in Donald A. Norman&#8217;s book Emotional Design, I had to share it:</p>
<blockquote><p>Today it is customary to argue that short attention spans are caused by advertisements, video games, music videos, and so on. <strong>But, in fact, the ready distractibility of attention is a biological necessity, developed through millions of years of evolution as a protective mechanism against unexpected danger</strong>: this is the primary function of the visceral level. This is probably why one byproduct of the negative affect and anxiety that results from perceived danger is a narrowing and focusing of attention. In danger, attention must not become distracted. But in the absence of anxiety, people are easily distracted, continually shifting attention. <strong>William James, the famous philosopher/psychologist, once said that his attention span was approximately ten seconds, and this in the late 1800s, far before the advent of modern distractions.</strong></p></blockquote>
<p>Parts of this make more sense when read in the context of the book, but the two sentences that I higlighted really work on their own. In other words: Short attention spans isn&#8217;t a new problem at all and definitely not caused by the internet or mobile phones or any other modern media.</p>
<p>PS: <a href="http://www.nytimes.com/2010/11/21/magazine/21FOB-medium-t.html?_r=1&#038;ref=technology">Good article in the New York Times</a> with, for some reason, the same title as this article. I hadn&#8217;t read itbefore posting this.</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2010/11/29/the-attention-span-myth/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>OSX Software</title>
		<link>http://bassistance.de/2010/11/28/osx-software/</link>
		<comments>http://bassistance.de/2010/11/28/osx-software/#comments</comments>
		<pubDate>Sun, 28 Nov 2010 18:09:46 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=764</guid>
		<description><![CDATA[This is a list of OSX software I gathered mostly via Twitter, asking for &#8220;must-have software&#8221;. Thanks to everyone who provided suggestions and recommendations! I haven&#8217;t yet tested any of these myself, so consider all recommendations here as &#8220;supposed to be great, your mileage may vary&#8221;. To start, a loose collection without a specific category [...]]]></description>
			<content:encoded><![CDATA[<p>This is a list of OSX software I gathered mostly via Twitter, asking for &#8220;must-have software&#8221;. Thanks to everyone who provided suggestions and recommendations!<br />
I haven&#8217;t yet tested any of these myself, so consider all recommendations here as &#8220;supposed to be great, your mileage may vary&#8221;.</p>
<p><strong>To start, a loose collection without a specific category</strong></p>
<ul>
<li>There are two options for replacing the Linux-tool apt-get on OSX: <a href="http://www.macports.org/">Macports</a> and <a href="http://mxcl.github.com/homebrew/">Homebrew</a>. Homebrew apparently being the better choice, as long as it has the module in question available. To keep both (and some other tools) up-to-date, <a href="https://github.com/plentz/update_cadabra">this script</a> is supposed to be useful.</li>
<li>For running web apps as native apps in a site specific browser, <a href="http://fluidapp.com/">Fluid is the right tool</a>.</li>
<li>For presentations and other cases where you want to prevent your MacBook from dimming the screen, <a href="http://lightheadsw.com/caffeine/">Caffeine can help</a>.</li>
<li>For multiple copy and paste buffers: <a rel="nofollow" href="http://conceitedsoftware.com/products/clips">Clips</a> &#8211; said to be a memory hog sometimes, but worth it</li>
</ul>
<p><strong>Window Management</strong></p>
<ul>
<li><a href="http://cordlessdog.com/stay/">Stay (commercial)</a> for saving and restoring window position, aware of variable multi-monitor setups, useful for a laptop that is not always connected to an external monitor</li>
<li><a href="http://www.irradiatedsoftware.com/sizeup/">SizeUp (commercial)</a> for positioning windows, eg. in fullscreen, something OSX avoids by default</li>
<li><a href="http://www.irradiatedsoftware.com/cinch/">Cinch (commercial)</a> also for postioning or resizing windows</li>
<li><a href="http://hyperdock.bahoom.de/">HyperDock</a> also manages windows, but adds eg. application previews</li>
<li><a href="http://manytricks.com/witch/">Witch</a> for switching between applications with multiple windows, where Command+Tab falls short</li>
<li><a href="http://www.mizage.com/divvy/">Divvy (commercial)</a> also manages windows.</li>
</ul>
<p><strong>Maintenance und File System</strong></p>
<ul>
<li><a href="http://www.cocoatech.com/">PathFinder (commercial)</a> to replace the built-in Finder, with dual pane file browser and integrated terminal</li>
<li><a href="http://totalfinder.binaryage.com/">TotalFinder (commercial)</a> also extends the built-in finder with tabs, dual pane, folders-before-files ordering and more</li>
<li><a href="http://www.apple.com/downloads/macosx/system_disk_utilities/onyx.html">Onyx</a> is for system maintenance, for when the builtin disk utility isn&#8217;t enough.</li>
<li><a href="http://wakaba.c3.cx/s/apps/unarchiver.html">The Unarchiver</a> unzips your files</li>
<li><a href="http://www.zipeg.com/">Zipeg</a> for browzing inside zip-archives</li>
<li>FTP: <a href="http://cyberduck.ch/">Cyberduck</a> vs <a href="http://filezilla-project.org/">FileZilla</a> vs <a href="http://www.panic.com/transmit/">Transmit (commercial)</a></li>
<li><a href="http://totalfinder.binaryage.com/">Total Finder</a> enhances your native Finder app with tabs and other potentially useful features</li>
<li><a href="https://www.dropbox.com/referrals/NTM2MzMzMzk?src=global">Dropbox</a> &#8211; if you don&#8217;t use it, now&#8217;s a good time to get started. Even on Windows.</li>
<li><a href="http://www.utorrent.com/intl/de/">uTorrent</a> is probably the fasted and smallest BitTorrent client. Also great on Windows. Alternative: <a href="http://www.transmissionbt.com/">Transmission</a></li>
<li><a href="http://www.expandrive.com/mac">ExpanDrive</a> is also sort-of a FTP client (and other protocolls) but acts like a USB drive</li>
<li><a href="http://www.appzapper.com/">AppZapper</a> vs <a href="http://www.freemacsoft.net/AppCleaner/">AppCleaner</a> for proper uninstall</li>
<li><a href="http://www.deltopia.com/compare-merge-sync/macosx/">DeltaWalker (commercial)</a> provides folder and file synchronization</li>
<li><a href="http://grandperspectiv.sourceforge.net/">GrandPerspective</a> visualizes file system usage with tree maps</li>
<li><a href="http://www.getcloudapp.com/">CloudApp</a> for fast file sharing</li>
<li><a href="http://www.macupdate.com/info.php/id/13006/whatsize">WhatSize</a> to find big useless files that waste space you need elsewhere</li>
</ul>
<p><strong>Messaging</strong></p>
<ul>
<li><a href="http://www.skype.com">Skype</a> brings you text, voice and video chat, free and of much better quality than your phone</li>
<li><a href="http://adium.im/">Adium</a> seems to be pretty much the only choice for instant messaging (parallel to Skype)</li>
<li>For Twitter <a href="http://www.tweetdeck.com/">Tweetdeck</a> is an option (as on Windows, also needs <a href="http://get.adobe.com/air/">Adobe Air</a>) as is <a href="http://nambu.com/">Nambu</a>, which claims to have a more native style. Or <a href="http://www.atebits.com/tweetie-mac/">Tweetie</a>.</li>
<li><a href="http://colloquy.info/">Colloquy</a> for IRC</li>
<li><a href="http://www.teamviewer.com/index.aspx">TeamViewer</a> for screen sharing (where Skype isn&#8217;t good enough)</li>
</ul>
<p><strong>Application Launchers</strong><br />
Plenty of choices for launching applications while maybe also search something. I use Launchy on Windows, which certainly has room for improvements. If you think you don&#8217;t need a launcher, give at least one of these a try.</p>
<ul>
<li><a href="http://www.alfredapp.com/">Alfred</a></li>
<li><a href="http://amarsagoo.info/namely/">Namely</a></li>
<li><a href="https://github.com/tiennou/blacktree-alchemy/">Quicksilver</a> (GitHub repo, use Download button to get a beta)</li>
<li><a href="http://www.launchy.net/">Launchy</a></li>
<li><a href="http://code.google.com/p/qsb-mac/">Google QSB</a></li>
<li><a href="http://www.obdev.at/products/launchbar/index.html">LaunchBar</a> (commercial)</li>
</ul>
<p><strong>Audio &amp; Video</strong></p>
<ul>
<li><a href="http://www.apple.com/downloads/macosx/audio/vox.html">Vox</a> for playing audio</li>
<li><a href="http://www.videolan.org/vlc/">VLC</a> plays anything</li>
<li>If VLC is still too ugly, <a href="http://www.perian.org/">Perian</a> could be useful to add codec support for all sorts of other formats</li>
<li><a href="http://www.telestream.net/screen-flow/overview.htm">ScreenFlow</a> vs <a href="http://store.shinywhitebox.com/home/home.html">iShowU</a> for recording screencasts</li>
<li><a href="http://www.techsmith.com/jing/">Jing</a> for making and sharing short videos quickly</li>
<li><a href="http://audacity.sourceforge.net/">Audacity</a> for audio editing</li>
<li><a href="http://www.rogueamoeba.com/audiohijackpro/">Audio Hijack Pro</a> to record from Skype or other applications</li>
<li><a href="http://cycling74.com/products/soundflower/">Soundflower</a> for software-based audio interfaces (may overlap with Audio Hijack Pro)</li>
<li><a href="http://www.apple.com/downloads/macosx/video/stomp.html">Stomp</a> for video compression</li>
<li><a href="http://paintbrush.sourceforge.net/">Paintbrush</a> for simple image editing/painting</li>
<li><a href="http://skitch.com/">Skitch</a> for simple image editing with sharing built-in</li>
<li><a href="http://wakaba.c3.cx/s/apps/xee">Xee</a> for an alternative for the built-in image previewing</li>
</ul>
<p><strong>Security</strong></p>
<ul>
<li><a href="http://www.obdev.at/products/littlesnitch/index.html">Little Snitch (commercial)</a> enhances the built-in firewall with network traffic monitoring and control</li>
<li><a href="http://agilewebsolutions.com/onepassword">1Password (commercial)</a> was probably mentioned most often. Also available on Windows, for managing passwords.</li>
<li><a href="http://code.google.com/p/tunnelblick/">Tunnelblick</a> for a OpenVPN GUI</li>
</ul>
<p><strong>Development</strong></p>
<ul>
<li>Essential for web development: <a href="http://www.mozilla.com/de/firefox/all-beta.html">Firefox 4 (beta)</a> and <a href="http://www.google.com/chrome">Chrome</a></li>
<li><a href="http://www.virtualbox.org/">VirtualBox</a> vs <a href="http://www.vmware.com/products/fusion/">VMware Fusion</a> vs <a href="http://www.parallels.com/products/desktop/">Parallels</a> for virtualizing, eg. to test on Windows</li>
<li><a href="http://eclipse.org/">Eclipse</a> for Java development, and anything else if you like it</li>
<li><a href="http://git-scm.com/">Git</a> or <a href="http://www.syntevo.com/smartgit/index.html">SmartGit</a> or <a href="http://www.git-tower.com/">Git Tower</a>, for repository browsing <a href="http://gitx.frim.nl/">GitX</a></li>
<li><a href="http://versionsapp.com/">Versions</a> for Subversion</li>
<li><a href="http://www.sourcegear.com/diffmerge/">DiffMerge</a> for standalone GUI diff</li>
<li><a href="http://code.google.com/p/macvim/">MacVim</a> vs <a href="http://aquamacs.org/">Aquamacs</a> vs <a href="http://www.panic.com/coda/">Coda</a> vs <a href="http://macromates.com/">TextMate (commercial)</a> for text editing where Eclipse is too much and too bad at actual text editing</li>
<li><a href="http://www.atmos.org/cinderella/">Cinderella</a> is a command line bundle that installs a complete, sort-of sandboxed development enviroment</li>
<li><a href="http://www.omnigroup.com/products/omnigraffle/">OmniGraffle (commercial)</a> for drawing diagrams, charts, eg. for visualizing information architecture</li>
<li><a href="http://www.sequelpro.com/">Sequel Pro</a> for MySQL mangement</li>
<li><a href="http://reggyapp.com/">Reggy</a> for quick verification of regular expressions</li>
<li><a href="http://www.iterm2.com/#/section/home">iTerm2</a> as a much better alternative to the built-in Terminal.app. Try split views.</li>
</ul>
<p>If you have more suggestions, <a href="mailto:joern.zaefferer@gmail.com">let me know</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2010/11/28/osx-software/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
