<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Let’s form proactive synergy restructuring teams.</description><title>Will it script?</title><generator>Tumblr (3.0; @willitscript)</generator><link>http://willitscript.com/</link><item><title>PHP: a fractal of bad design</title><description>&lt;a href="http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/"&gt;PHP: a fractal of bad design&lt;/a&gt;: &lt;blockquote&gt;
  &lt;p&gt;I can’t even say what’s wrong with PHP, because— okay. Imagine you have uh, a toolbox. A set of tools. Looks okay, standard stuff in there.&lt;/p&gt;
  
  &lt;p&gt;You pull out a screwdriver, and you see it’s one of those weird tri-headed things. Okay, well, that’s not very useful to you, but you guess it comes in handy sometimes.&lt;/p&gt;
  
  &lt;p&gt;You pull out the hammer, but to your dismay, it has the claw part on both sides. Still serviceable though, I mean, you can hit nails with the middle of the head holding it sideways.&lt;/p&gt;
  
  &lt;p&gt;You pull out the pliers, but they don’t have those serrated surfaces; it’s flat and smooth. That’s less useful, but it still turns bolts well enough, so whatever.&lt;/p&gt;
  
  &lt;p&gt;And on you go. Everything in the box is kind of weird and quirky, but maybe not enough to make it completely worthless. And there’s no clear problem with the set as a whole; it still has all the tools.&lt;/p&gt;
  
  &lt;p&gt;Now imagine you meet millions of carpenters using this toolbox who tell you “well hey what’s the problem with these tools? They’re all I’ve ever used and they work fine!” And the carpenters show you the houses they’ve built, where every room is a pentagon and the roof is upside-down. And you knock on the front door and it just collapses inwards and they all yell at you for breaking their door.&lt;/p&gt;
  
  &lt;p&gt;That’s what’s wrong with PHP.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This pretty much sums up how I feel every time I get involved in a project where the code is written in PHP. Whatever you do it just feels wrong, and if you read the entire linked blog post you get a pretty good idea why.&lt;/p&gt;

&lt;p&gt;Also, all open source projects written in PHP I’ve come across have had the following in common:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;poorly structured&lt;/li&gt;
&lt;li&gt;hard to read&lt;/li&gt;
&lt;li&gt;difficult to debug&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;As I see it PHP promotes bad design, which isn’t a good trait for a programming language. The question is who’s to blame: the language for teaching developers bad habits, or the developers for accepting the language for what it is?&lt;/p&gt;</description><link>http://willitscript.com/post/21314400012</link><guid>http://willitscript.com/post/21314400012</guid><pubDate>Wed, 18 Apr 2012 08:03:48 +0200</pubDate><category>php</category><category>programming</category></item><item><title>Sparrow for iPhone</title><description>&lt;p&gt;Sparrow is the best mail client for OSX, hands down. It gets a lot of details right. Facebook integration for avatars. Excellent threading for conversations. The way attachments are handled through cloud services is simply brilliant. &lt;sup id="fnref:p21268416378-1"&gt;&lt;a href="#fn:p21268416378-1" rel="footnote"&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;So, obviously it is a big deal when Sparrow for iPhone hits the app store. Some of the features have made the transition from OSX, such as the Facebook integration.  Some didn&amp;#8217;t, such as the way OS X handles attachments. I&amp;#8217;ve spent the last days on Sparrow for iPhone, and it is a great client. As expected, it&amp;#8217;s miles ahead of Mail.app. But all is not perfect either.&lt;/p&gt;

&lt;p&gt;The lack of push notifications is not a problem, but it is annoying. This really is a problem with how Apples App Store guidelines. Today there simply isn&amp;#8217;t a way to let an app like Sparrow have client side push. The alternative is to give your credentials to a server run by the Sparrow team, which in turn logs in, checks your mail and notifies you. Problem is, by doing that you&amp;#8217;ve handed over your credentials to the most sensitive service you use; the one where all your passwords can be requested to.&lt;/p&gt;

&lt;p&gt;In my setup I work around the problem  by leaving my home computer running at all times, and have it check my mail. If I get new mail, I forward the notification with &lt;a href="http://www.prowlapp.com/"&gt;Prowl&lt;/a&gt;, which then has a redirect set up to open the main view in Sparrow. Not perfect, but it works. If my home connection goes down, I stop getting notifications. That in the other hand IS a problem.&lt;/p&gt;

&lt;p&gt;If Apple opens up the possibility of using background processes in a way similar to thise used by VOIP apps, Sparrow can use local push notifications. This would be a much better solution.&lt;/p&gt;

&lt;p&gt;For now it remains a good e-mail app for those able to run a 2 component setup like myself. For the rest, the appeal is a bit more limited.&lt;/p&gt;

&lt;div class="footnotes"&gt;
&lt;hr&gt;&lt;ol&gt;&lt;li id="fn:p21268416378-1"&gt;
&lt;p&gt;Attachments have long had a problematic relationship with e-mail. Sending files through services such as Dropbox or Cloud is faster and keeps the email itself leaner. &lt;a href="#fnref:p21268416378-1" rev="footnote"&gt;↩&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;

&lt;/ol&gt;&lt;/div&gt;</description><link>http://willitscript.com/post/21268416378</link><guid>http://willitscript.com/post/21268416378</guid><pubDate>Tue, 17 Apr 2012 16:36:05 +0200</pubDate><category>sparrow</category><category>ios</category><category>apps</category></item><item><title>Continous Retaliation</title><description>&lt;p&gt;Our development team recently got inspired by &lt;a href="https://github.com/codedance/Retaliation"&gt;this project&lt;/a&gt;, and decided to get our own Thunder Missile launcher to launch missiles on developers pushing non working code for review. &lt;a href="http://d.pr/npdm"&gt;This beauty&lt;/a&gt; now sits on a workstation waiting for someone to break the build. We currently use Hudson as our Continuos Integration server, which in turn triggers the build on Gerrit events. So, each time someone submits for review, they are a potential target.&lt;/p&gt;

&lt;p&gt;The missile launcher itself is controllable through a web server on the machine it is connected to. It is possible to control its behavior, as well as have it fire upon people be simple passing commands to the web server (but don’t tell anyone). To keep everyone focused it randomly patrols the room as well (random movement pattern on random intervals).&lt;/p&gt;

&lt;p&gt;Things like these are not just fun and gimmicky. It also tells you something about the workplace itself. Being able to work someplace where setting up a something like this without management having any objections is a privilege.  It builds team spirit, and keeps motivation up.&lt;/p&gt;

&lt;p&gt;Needless to say, everyone on the team loves it.&lt;/p&gt;</description><link>http://willitscript.com/post/18947387444</link><guid>http://willitscript.com/post/18947387444</guid><pubDate>Thu, 08 Mar 2012 15:01:55 +0100</pubDate><category>continous integration</category><category>missile</category><category>gerrit</category><category>hudson</category></item><item><title>Building a lifestream using Tumblr and ifttt</title><description>&lt;p&gt;Life streams are an interesting concept. They reflect your entire life on the Internet, gathered in a single chronological flow. I used to have one as my personal blog, powered by &lt;a href="http://storytlr.com/"&gt;Storytlr&lt;/a&gt;. A couple of years ago they stopped hosting and instead open sourced their code instead (which can be found &lt;a href="https://github.com/storytlr/core"&gt;here&lt;/a&gt;). For a while I tried using this, customizing it to get the look and feel I wanted, running on my personal server. Needless to say, after some time it became tedious to keep up with security updates.&lt;/p&gt;

&lt;p&gt;So, I decided to try something else. &lt;a href="http://www.tumblr.com"&gt;Tumblr&lt;/a&gt;, which hosts this site amongst many others, has much to offer when it comes to customizability. This, paired with the excellent service &lt;a href="http://ifttt.com"&gt;ifttt&lt;/a&gt; seemed like a perfect match. The idea was to let Tumblr serve the content and manage back end updates, and let ifttt populate the stream with its content.&lt;/p&gt;

&lt;p&gt;Prerequisites:&lt;/p&gt;

&lt;p&gt;A. A Tumblr account
B. A ifttt account&lt;/p&gt;

&lt;p&gt;Theming Tumblr is easy. If you don&amp;#8217;t have the time to make your own there are a bunch of great themes avaliable in their &lt;a href="http://www.tumblr.com/themes/"&gt;theme garden&lt;/a&gt; (which I used). Setting up ifttt is easy as well; quite quickly I got my first channels up and running, and Twitter, Readability, Instagram and last.fm started populating my feed. Problems started when I wanted to add certain services like Instapaper or Delicious. These channels require that you enter you username and password, something I don&amp;#8217;t feel confident with.&lt;/p&gt;

&lt;p&gt;So, for now it is a decent solution, if you don&amp;#8217;t plan on using all channels (or don&amp;#8217;t care about giving out your password). I on the other hand will keep searching for a better solution.&lt;/p&gt;</description><link>http://willitscript.com/post/16303073941</link><guid>http://willitscript.com/post/16303073941</guid><pubDate>Sun, 22 Jan 2012 20:36:34 +0100</pubDate><category>tumblr</category><category>ifttt</category><category>life stream</category></item><item><title>Android's Back Button</title><description>&lt;p&gt;Speaking of the developer guidelines for Android: the inconsistent behavior of the back button is the single most common irritation I&amp;#8217;ve read when it comes to Android. If developers adhere to the new guidelines for &lt;a href="http://developer.android.com/design/patterns/navigation.html"&gt;Navigation with Back and Up&lt;/a&gt; this should mostly not be a problem any longer. A bit puzzling though why the guidelines is consistent in all cases but one: System-to-app navigation. I quote:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;If the your app was reached via the system mechanisms of notifications or home screen widgets, Up behaves as described for app-to-app navigation, above.&lt;/p&gt;
  
  &lt;p&gt;For the Back key, you should make navigation more predictably by inserting into the task&amp;#8217;s back stack the complete upward navigation path to the app&amp;#8217;s topmost screen. This way, a user who has forgotten how they entered your app can safely navigate to the app&amp;#8217;s topmost screen before exiting it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Can&amp;#8217;t really see why you would want to ruin a consistent behavior like this with special cases. And how would a user be any less confused by ending up at the topmost screen of the app? Other than that, solid recommendations.&lt;/p&gt;</description><link>http://willitscript.com/post/16106938521</link><guid>http://willitscript.com/post/16106938521</guid><pubDate>Thu, 19 Jan 2012 08:00:05 +0100</pubDate><category>android</category><category>usability</category><category>user interaction</category></item><item><title>Android Developer Guidelines</title><description>&lt;a href="http://developer.android.com/design/index.html"&gt;Android Developer Guidelines&lt;/a&gt;: &lt;p&gt;Guidelines for how to design apps for Android while maintaining a consistent look and feel, and a predictable behavior. One of the things that are great about iOS is the &lt;a href="http://developer.apple.com/library/ios/ipad/#documentation/UserExperience/Conceptual/MobileHIG/Introduction/Introduction.html"&gt;Human Interface Guidelines&lt;/a&gt;, so this is definitely a good step in the right direction for Android.&lt;/p&gt;</description><link>http://willitscript.com/post/16102903698</link><guid>http://willitscript.com/post/16102903698</guid><pubDate>Thu, 19 Jan 2012 06:03:47 +0100</pubDate><category>android</category><category>user interface</category><category>user interaction</category></item><item><title>Sublime Text Replacement Icon</title><description>&lt;a href="http://www.designkode.com/blog/sublime-text-icon"&gt;Sublime Text Replacement Icon&lt;/a&gt;: &lt;p&gt;Stunning replacement icon for &lt;a href="http://www.sublimetext.com/blog/articles/sublime-text-2-beta"&gt;Sublime Text 2&lt;/a&gt;, the stunning and powerful text editor (available on Windows, Mac and Linux).&lt;/p&gt;</description><link>http://willitscript.com/post/16053610822</link><guid>http://willitscript.com/post/16053610822</guid><pubDate>Wed, 18 Jan 2012 08:00:05 +0100</pubDate><category>sublime text</category><category>replacement icon</category></item><item><title>Scriptogr.am</title><description>&lt;p&gt;&lt;a href="http://scriptogr.am/"&gt;Scriptogram&lt;/a&gt;, a new site with an interesting concept. It connects with your &lt;a href="http://db.tt/mOuMdXt"&gt;Dropbox&lt;/a&gt; account and converts Markdown documents found in a specific folder into blog posts. A few details:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;Markdown documents found in &lt;dropbox folder&gt;/Apps/scriptogram/posts are synchronized and converted into blog posts.&lt;/dropbox&gt;&lt;/li&gt;
&lt;li&gt;Only the scriptogram folder is accessible to scriptogr.am&lt;/li&gt;
&lt;li&gt;Custom domains can be used for your blog&lt;/li&gt;
&lt;li&gt;Custom CSS can be used to personalize the appearance.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;I other words: you don’t get any fancy JavaScript or advanced CSS class structure. What you do get is a basic, fast loading, easy to use and easily setup blog.&lt;/p&gt;</description><link>http://willitscript.com/post/15968158984</link><guid>http://willitscript.com/post/15968158984</guid><pubDate>Mon, 16 Jan 2012 22:40:18 +0100</pubDate><category>scriptogram</category><category>blogging</category><category>Dropbox</category></item><item><title>User experience versus Developer Experience</title><description>&lt;a href="http://mynameismwd.org/index.php?id=867"&gt;User experience versus Developer Experience&lt;/a&gt;: &lt;blockquote&gt;
  &lt;p&gt;When I use an app on my phone expect it to work whether I’m online or offline. Look at the standard apps on your phone – email client, text messages, notes apps. They all work when you have no mobile or wifi signal. Sure, you can’t send or recieve new mail, but you can read your old mail – which is a hugely useful feature, and in fact I’d say a vital feature. Say you’re trying to find where you agreed to meet someone when you’re out, and have no mobile signal. No problem, your phone still has that email or text message with the venue stored somewhere.&lt;/p&gt;
  
  &lt;p&gt;Now try use the Facebook app offline – it’ll just display a sad smiley and say it couldn’t reach the Internet, and we should try again. I hope your hypothetical friend that you arranged to meet via Facebook likes waiting.&lt;/p&gt;
  
  &lt;p&gt;[…]&lt;/p&gt;
  
  &lt;p&gt;Last time I checked, all the principle mobile platforms had this crazy thing we like to call “storage” where you can, get this, store things so they’re available later. It’s not hard – we’re been storing data for quite a while now. But in the rush to make their app more flexible when they want to change how Facebook works, this means all the content is formatted on their servers and sent down each time you want to display it. So when I’m in the middle of nowhere, and want to check where it was my friend said we were going to meet, it’s like being back in the dark ages. I can’t get access to information I already accessed once on this device.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I totally agree with Michael Winston Dales. There has been a regression in user experience for some time. Facebook and Google+ are serious offenders in this regard, something I’ve covered earlier (&lt;a href="http://willitscript.com/post/15680255392/whats-wrong-with-this-social-network-facebook"&gt;Facebook here&lt;/a&gt; and &lt;a href="http://willitscript.com/post/15668704522/whats-wrong-with-this-social-network-google"&gt;Google+ here&lt;/a&gt;). You provide a good user experience by providing a good native app, which looks and behaves like other apps on the platform. User experience is about how something feels to use, not the amount of features it delivers.&lt;/p&gt;

&lt;p&gt;Then there is the minor detail of not being able to access content offline, which is just ridiculous.&lt;/p&gt;</description><link>http://willitscript.com/post/15962690132</link><guid>http://willitscript.com/post/15962690132</guid><pubDate>Mon, 16 Jan 2012 21:11:57 +0100</pubDate><category>user experience</category><category>software development</category><category>ux</category><category>ui</category><category>android</category><category>ios</category><category>facebook</category><category>google+</category></item><item><title>What’s wrong with this Social Network - Facebook</title><description>&lt;p&gt;Facebook is in theory a great way of keeping in touch with old friends and relatives. You can, with a low amount of work, find people that you&amp;#8217;ve since long lost contact with and get up to date with what they have been doing. And there are things that work really well:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;Finding friends&lt;/li&gt;
&lt;li&gt;Messages&lt;/li&gt;
&lt;li&gt;Events&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Messages works great as a compliment for email. People change their phone number and email from time to time, but the idea of Facebook is that their profile stays the same, so it’s easy to communicate as long as you remember their names.&lt;/p&gt;

&lt;p&gt;Events are an efficient way of organizing get-togethers with a group of people. They also &lt;a href="http://www.wikihow.com/Sync-Facebook-Events-to-iCal"&gt;synchronize with Caldav compatible calendars&lt;/a&gt;, which can be immensely useful.&lt;/p&gt;

&lt;p&gt;Note that the primary way of experiencing Facebook, the News feed, was not present on that list. Instead, it is at the very center of what is wrong with Facebook. And that’s not all:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;The main part of it has no real purpose, or ..&lt;/li&gt;
&lt;li&gt;.. it solves a problem that doesn&amp;#8217;t exist.&lt;/li&gt;
&lt;li&gt;Settings everywhere, but what do they do?&lt;/li&gt;
&lt;li&gt;Privacy issues now and historically; in other words trust.&lt;/li&gt;
&lt;li&gt;Likes have no meaning&lt;/li&gt;
&lt;li&gt;The iOS app is barely usable&lt;/li&gt;
&lt;li&gt;Tedious controlling who sees what&lt;/li&gt;

&lt;/ul&gt;&lt;p&gt;What is the purpose of Facebook? What is it Facebook is trying to solve? One of the problems with Facebook is that tries too hard to do too many things. I recall when all statuses where prefixed with &amp;#8220;is&amp;#8221;. It forced people to think about what they wrote. A status update was supposed to be just that: an update of your current status. You would get updated on relationship changes, if someone found a new friend etc. Nowadays the News Feed is pretty much a shoutbox for everything. The News feed of Facebook is like the timeline of Twitter, but with more noise. You get a served a various mix of spontaneous things people feel an urge to share mixed with Youtube videos, webpage links etcetera. &amp;#8220;But you can customize what you see&amp;#8221; some will say. Sure, you can, but the updates still lack a purpose, they don&amp;#8217;t solve any problem I had. This also brings me to the second thing that is wrong with Facebook: settings.&lt;/p&gt;

&lt;p&gt;It is damn near impossible to actually get a grip on all settings. They aren&amp;#8217;t easy to find, and they are even harder to understand. To make things worse, settings seem to move around a lot. What could be found in one place one day requires a bit of searching to locate the next day. As an example, I went to try to filter my News Feed; first of, it required me to set what I wanted to see for every single contact in among my friends. This took a while, and even though I patiently did this I still have no idea what effect it has. Terms like &amp;#8220;Most updates&amp;#8221; or &amp;#8220;Only Important&amp;#8221; mean very little to me. Important to whom? What updated do I not get to see? If I like something, does it get more important to others? Imagine the following scenario: If someone posts a link to an article on how a father killed his children, should I like that update in order for it to be counted as important for others?&lt;/p&gt;

&lt;p&gt;Which brings us to the next issue in the list. Likes: they have no meaning. In the beginning, when Status Updates where Status Updates and relationship changes where a big part of the content of Facebook the meaning of the Like button was clear.&lt;/p&gt;



&lt;p&gt;
&lt;span style="font-style:italic;"&gt;&amp;#8220;Xx Yy is planning a trip to Kenya&amp;#8221;.&lt;/span&gt;&lt;br/&gt;&lt;span style="font-style:italic;"&gt;&amp;#8220;Oh, Kenya. That sounds like a great trip, I&amp;#8217;ll like it.&amp;#8221; &lt;/span&gt;&lt;/p&gt;

&lt;p&gt;Along with the noise that followed during design changes, the meaning of Likes vanished and they are in many cases pointless today.&lt;/p&gt;

&lt;p&gt;Just like Google, Facebook choose to not to make a native app for iOS. Instead they opted for a native wrapper for a web app, which likely is to blame for its flaws. The latest version is blessed with an irrational behavior which drives me insane. Most of the times when I tap something I end up somewhere else than intended. Say for example that I try to look at the comments for a status. Most of the times I end up at the list of my friends, but I have ended up at completely different posts as well. This combined with a sluggish performance makes the app annoying to use, something you really don’t want.&lt;/p&gt;

&lt;p&gt;Like Google+, Facebook forces the user to remember where he/she left off. Instead of returning to the last post you read you are presented with the most current posts, sorted in descending order (presuming you don’t prefer getting highlighted stories first, which is even worse in this aspect). It puts the responsibility of remembering the posts read on the user. Compare this with most Twitter clients, who positions you on the tweet you read last (this can also be synchronized cross clients by using the service &lt;a href="http://tweetmarker.net/"&gt;Tweetmarker&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Finally, Facebook has the same problem as Google+: organizing your contacts takes time and energy. Facebook has a slight advantage with its smart lists; the problem with those is that they force information into your friends profiles if you try to add someone to a list. If you don’t use them you’re left to creating your own lists, which leaves you with the same problem as Google+ and their circles: how do you decide who goes where? And above all, it isn’t fun sitting for hours organizing people.&lt;/p&gt;</description><link>http://willitscript.com/post/15680255392</link><guid>http://willitscript.com/post/15680255392</guid><pubDate>Wed, 11 Jan 2012 20:33:00 +0100</pubDate><category>social networking</category><category>Facebook</category></item><item><title>What's wrong with this Social Network - Google+</title><description>&lt;p&gt;Google+ is a young social network from Google. It has the possibility of becoming something good, but in its current state it just isn’t. The first, and most severe, problem with &lt;a href="https://plus.google.com"&gt;Google+&lt;/a&gt; is that it lacks personality and it is hard to define its purpose. Sure, it’s got a few things going for it:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;A clean interface&lt;/li&gt;
&lt;li&gt;An easy way of deciding what to share with what circle&lt;/li&gt;
&lt;li&gt;Messenger&lt;/li&gt;
&lt;li&gt;Hangouts&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Google+ is easy on the eye, no question about it. Also the possibility of choosing what circles to share each post with is pretty nifty, and its easy to use works. There is another problem with the circles though, which I&amp;#8217;ll come back to. Messenger is great, we had a thread at work where everyone talked about pretty much everything (15 people or so in the thread). I hear a lot of great things about Hangouts as well, since they seem to enable communication in a fun way. But then there are the downsides:&lt;/p&gt;




&lt;ul&gt;&lt;li&gt;A not so good iOS app&lt;/li&gt;
&lt;li&gt;No way to integrate with the service&lt;/li&gt;
&lt;li&gt;No integrations with other services&lt;/li&gt;
&lt;li&gt;Who goes in what circle?&lt;/li&gt;
&lt;li&gt;Near impossible to pick up where you left off&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;The iOS app in itself is incredibly annoying. Google insists on not making native iOS apps. Instead they bundle a web app inside what looks like a native app, which has several annoying behaviors. For instance you get logged out every time there is an update to the app. This is especially annoying if you use 2 factor authentication, since you have to get your second token ready as well. A real native app would have been able to use an application specific password, or even O-Auth for authentication. To make matters worse, the iOS app resets all stream settings every update, so if you&amp;#8217;re used to looking at different circles than Circles, Incoming and Nearby, prepare to be annoyed.&lt;/p&gt;




&lt;p&gt;Lets say you&amp;#8217;re using an app (for example Instapaper) and reading something you want to share. There is no way to do this from within that app. Twitter or Facebook has this functionality at its core, and it is easy to share content on these sites. Google+ on the other hand seems to imply that you should only use Google products (such as Google reader). &lt;/p&gt;




&lt;p&gt;Likewise, if you find something interesting on Google+ while not using the web interface it takes a lot of work to send it to Instapaper (or to share it on Twitter).&lt;/p&gt;




&lt;p&gt;Circles, in theory, is a great way of separating who sees what. In reality though, it is not all that great. Here&amp;#8217;s quoting &lt;a href="http://www.pcmag.com/article2/0,2817,2387808,00.asp"&gt;Peter Pachal at PCMag&lt;/a&gt;:&lt;/p&gt;




&lt;blockquote&gt;
The main problem with Google Circles is that it&amp;#8217;s tedious. While I agree that most people separate their contacts into various groups in real life, doing so in a social network is a chore. It&amp;#8217;s one of the reasons we have different social networks (LinkedIn for work, Facebook for friends, etc.). Asking people to do this kind of organizing proactively, on a single network, vastly overestimates the patience of Web users. Sure, some people are very organized and left-brained (like the engineers who created Google+), with spotless inboxes and well-maintained lists of contacts, but my feeling is that the vast majority aren&amp;#8217;t. And of all the things that have turned people off of Facebook over the years, the lack of focus on friend-organizing tools isn&amp;#8217;t one of them.
&lt;br/&gt;&lt;br/&gt;
[&amp;#8230;]
&lt;br/&gt;&lt;br/&gt;
People want things easy, and Google Circles isn&amp;#8217;t easy. It puts the burden on users to take the time to think about each and every contact and put them in a specific bucket. To use the feature effectively, users will certainly have to create new circles, and that requires even more thought. After using Google+ for a few minutes last night, I was often unsure which Circles to put certain people in and, more to the point, which to leave them out of. And what if you create a new Circle that should include some of the people in other Circles you already have? You have to go back over all your contacts and reorganize. Ugh.

&lt;/blockquote&gt;


&lt;p&gt;Google, and later Facebook, also introduced an incredibly annoying feature: reordering your feed. What this means is that certain posts in your feed will be moved to the top in order to get your attention. In the case of Google+ the posts that are moved are those that have gotten new content (such as a new comment) after you interacted with them . This may seem like a good concept but it has one serious flaw: it forces the user to remember what posts he/she has seen already in order to spot new content. This is likely a bigger problem for users interacting with a lot of posts since a large portion of their stream get crowded by old posts. Even without the post reordering, the stream does nothing to help the user to pick up where he/she left off. Instead you are presented with the latest posts, sorted in descending order. The user has to remember what post he/she saw last. Compare this with most Twitter clients, who positions you on the tweet you read last (this can also be synchronized cross clients by using the service &lt;a href="http://tweetmarker.net/"&gt;Tweetmarker&lt;/a&gt;. Google should know how to solve this efficiently, since they already do this with Google Reader.&lt;/p&gt;

&lt;p&gt;These are, in my book, pretty much showstoppers. You don’t develop a Social Network as a product that live in its own gated community. There are a lot of great stuff on the internet, and Google largely fails to make use of it. Google seem to want to keep its users in, so they don’t consume content on sites that aren’t part of their private hemisphere. This is even more apparent when factoring in their latest move, &lt;a href="http://googleblog.blogspot.com/2012/01/search-plus-your-world.html"&gt;including results from Google+ with Google Search&lt;/a&gt;.&lt;/p&gt;</description><link>http://willitscript.com/post/15668704522</link><guid>http://willitscript.com/post/15668704522</guid><pubDate>Wed, 11 Jan 2012 14:04:16 +0100</pubDate><category>social networking</category><category>google+</category></item><item><title>Path &amp; The Art of Keeping It Real</title><description>&lt;a href="http://www.readwriteweb.com/archives/path_the_art_of_keeping_it_real.php"&gt;Path &amp; The Art of Keeping It Real&lt;/a&gt;: &lt;p&gt;Jon Mitchell pretty much nails it when explaining what it is that is so great about &lt;a href="https://path.com"&gt;Path&lt;/a&gt;:

&lt;/p&gt;&lt;blockquote&gt;Path is not conducive to networking or discovering people. Twitter and Facebook are great for that. Google+ can dump thousands of new people on you without even asking. We don’t need another place to network. What we need is a place for intimacy and trust that is still enhanced by the sharing power of the mobile Web.&lt;/blockquote&gt;

This is exactly how I feel about it, and why I try to get my closest friends to start using it. It isn’t a place to showcase yourself, dump links to funny videos etc. It is about sharing your life with your closest friends; your thoughts, your memories, the stuff that you feel confident in sharing with your inner circle. This becomes quite obvious when opting to share on Facebook as well: what you just wrote isn’t all that personal, so it’s ok for everyone to see.

And this works both ways: you keep your personal stuff in, and you keep the noise out:

&lt;blockquote&gt;
You also can’t link to the Web from Path. URLs don’t work. That’s an intentional decision by the Path team, and a bold one. On all the everything-networks, linking to the Web is part of the experience. Google+ may suck at it, Facebook may kidnap your links and keep them inside its walls, and Twitter may butcher your URLs, but, in their weird ways, they let you bring in all the signal and noise of the Web. Path does not. 
&lt;/blockquote&gt;</description><link>http://willitscript.com/post/15616761425</link><guid>http://willitscript.com/post/15616761425</guid><pubDate>Tue, 10 Jan 2012 13:47:06 +0100</pubDate><category>path</category><category>social networking</category></item><item><title>A geek with a hat » Why programmers work at night</title><description>&lt;a href="http://swizec.com/blog/why-programmers-work-at-night/swizec/3198"&gt;A geek with a hat » Why programmers work at night&lt;/a&gt;: &lt;p&gt;Excellent article on the behaviour of developers, with a lot of things to identify with.  I love being the first one to arrive at the office in the morning; I probably get as much done in that first hour or two before anyone else arrives as I do all of the other hours of the day in total.&lt;/p&gt;

&lt;p&gt;I also often find myself solving most of the problems I get stuck on when showering. But then again, there isn’t that many distractions in the bathroom.&lt;/p&gt;</description><link>http://willitscript.com/post/15611101460</link><guid>http://willitscript.com/post/15611101460</guid><pubDate>Tue, 10 Jan 2012 08:00:06 +0100</pubDate></item><item><title>Path's UITableView timestamp clone</title><description>&lt;a href="https://github.com/andrewroycarter/TimeScroller/"&gt;Path's UITableView timestamp clone&lt;/a&gt;: &lt;p&gt;The magnificent scrollbar clock in the &lt;a href="https://path.com"&gt;Path&lt;/a&gt; UI, now available on GitHub.&lt;/p&gt;</description><link>http://willitscript.com/post/15579016125</link><guid>http://willitscript.com/post/15579016125</guid><pubDate>Mon, 09 Jan 2012 21:39:19 +0100</pubDate></item><item><title>Recommended iOS apps</title><description>&lt;p&gt;I use a lot of apps. And by that, I mean a lot. I currently have 92 apps installed on my iPhone, out of which I surely use about 30 on a daily basis. When I compile my recommendations, I usually only mention those that are useful for others as well; many of the ones I use are mainly pieces in my workflow, and for most they wouldn&amp;#8217;t make that much sense. I see this list as a list of must-haves, and I would love to get recommendations for Android equivalents as well. This list will be updated from time to time, and will get its own page (eventually).&lt;/p&gt;

&lt;p&gt;Also note that there are many other apps that are great, such as &lt;a href="http://itunes.apple.com/us/app/instagram/id389801252?mt=8"&gt;Instagram&lt;/a&gt;, &lt;a href="http://itunes.apple.com/us/app/momento-diary-journal/id347019672?mt=8"&gt;Momento&lt;/a&gt; or &lt;a href="http://itunes.apple.com/us/app/air-video-watch-your-videos/id306550020?mt=8"&gt;Air Video&lt;/a&gt;. These not covered in this list, because even though they are good apps they aren&amp;#8217;t must-haves. Apps like these will be covered in a separate post.&lt;/p&gt;

&lt;div&gt;
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a3.mzstatic.com/us/r1000/071/Purple/ce/0f/10/mzl.ljyldzsg.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/reeder/id325502379?mt=8"&gt;Reeder&lt;/a&gt; &lt;a href="http://itunes.apple.com/us/app/reeder-for-ipad/id375661689?mt=8"&gt;(iPad/HD)&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                Hands down the best RSS reader for iOS. With integration against &lt;a href="http://www.readability.com"&gt;Readability&lt;/a&gt;, and good support for a bunch of other well used services on the net this is a must if you use RSS (and you should).          
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a2.mzstatic.com/us/r1000/107/Purple/eb/76/cf/mzl.cojckhnf.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/instapaper/id288545208?mt=8#"&gt;Instapaper&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                Find a lot of good stuff to read, but just not right now? Enter &lt;a href="http://www.instapaper.com"&gt;Instapaper&lt;/a&gt;, a cross platform service for saving articles for later. The iOS app is stunning, easy to use and easily one of my most used apps.
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a5.mzstatic.com/us/r1000/073/Purple/c8/f5/82/mzl.slcydcxj.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/id428851691?mt=8"&gt;Tweetbot&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                Twitter with a personality. A great &lt;a href="http://www.twitter.com"&gt;Twitter&lt;/a&gt; client which differs from the competitors by giving the user good control and a fast workflow. It shines through that the developers paid attention to the details.
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a3.mzstatic.com/us/r1000/113/Purple/a4/d2/7f/mzl.wbqyzcyn.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/path/id403639508?mt=8"&gt;Path&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                &lt;a href="http://www.facebook.com"&gt;Facebook&lt;/a&gt; and &lt;a href="http://plus.google.com"&gt;Google+&lt;/a&gt; both lack what &lt;a href="https://path.com/"&gt;Path&lt;/a&gt; has: a stunning native app which actually works. Path takes a &lt;a href="https://path.com/story"&gt;different approach&lt;/a&gt; than the 2 giants, and delivers a social network with the feeling of intimacy and privacy. It is more of a diary than a shoutbox (yes, I&amp;#8217;m looking at you Facebook). 
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a3.mzstatic.com/us/r1000/071/Purple/74/d1/e6/mzl.qhcveski.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/zite-personalized-magazine/id419752338?mt=8"&gt;Zite&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                A personalized magazine that gets smarter as you use it. The news you didn&amp;#8217;t know you where looking for, in a great looking app.
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a1.mzstatic.com/us/r1000/091/Purple/88/7f/21/mzl.bnafeopy.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/alien-blue-reddit-client/id370144106?mt=8"&gt;Alien Blue&lt;/a&gt; &lt;a href="http://itunes.apple.com/us/app/alien-blue-hd-reddit-client/id390863118?mt=8"&gt;(iPad/HD)&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                The definite &lt;a href="http://reddit.com"&gt;reddit&lt;/a&gt; client. Great usability, and really shows how reddit should be consumed.
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a4.mzstatic.com/us/r1000/068/Purple/c9/e8/05/mzl.qgutatat.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/articles/id317065689?mt=8"&gt;Articles&lt;/a&gt; &lt;a href="http://itunes.apple.com/us/app/articles-for-ipad/id364881979?mt=8"&gt;(iPad/HD)&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                Stunning &lt;a href="http://www.wikipedia.org"&gt;wikipedia&lt;/a&gt; app. The iPhone version is good, the &lt;a href="http://itunes.apple.com/us/app/articles-for-ipad/id364881979?mt=8"&gt;iPad version&lt;/a&gt; is excellent.   
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a4.mzstatic.com/us/r1000/116/Purple/1e/d6/a9/mzl.dhosigis.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/imdb-movies-tv/id342792525?mt=8"&gt;IMDB&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                The official app for the &lt;a href="http://www.imdb.com"&gt;Internet Movie Database&lt;/a&gt;.    
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    
    
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a4.mzstatic.com/us/r1000/014/Purple/9c/c2/3a/mzi.kzkapkcr.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/id376694347?mt=8"&gt;Calcbot&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                A calculator app which fixes the things that are missing in the official app. Also, since it&amp;#8217;s from &lt;a href="http://tapbots.com"&gt;Tapbots&lt;/a&gt;, a great deal of attention has been paid to the details.
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a5.mzstatic.com/us/r1000/102/Purple/0a/a5/45/mzl.pclubqad.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/week-calendar/id381059732?mt=8"&gt;Week Calendar&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                The official calendar app has a week view, but really isn&amp;#8217;t all that useful. Week Calendar has a user interface that is easy to use, and gives you a good overview of the events of the week.
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a2.mzstatic.com/us/r1000/093/Purple/ff/b7/0a/mzl.tnztxmyx.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/alarm-clock-pro/id335678373?mt=8"&gt;Alarm Clock Pro&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                A pretty basic alarm clock, but it gets the job done. Hasn&amp;#8217;t failed me yet.
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a1.mzstatic.com/us/r1000/028/Purple/5e/28/d1/mzi.fkztngzy.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/id344614116?mt=8"&gt;Pastebot&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                A clipboard manager which extends your Mac by sharing the clipboard between the units.
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a1.mzstatic.com/us/r1000/096/Purple/67/75/09/mzl.jfbaflyu.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/1password-for-iphone/id285897618?mt=8"&gt;1Password&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                The definite password manager. Syncs via &lt;a href="http://getdropbox.com"&gt;dropbox&lt;/a&gt; (amongst other options) so all of your units always are updated with the latest passwords.
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a2.mzstatic.com/us/r1000/084/Purple/ac/c2/07/mzl.xpnzmwlh.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/prowl-growl-client/id320876271?mt=8"&gt;Prowl&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                &lt;a href="http://growl.info/"&gt;Growl&lt;/a&gt; for your iOS device. Open API, so anyone can extend the service in order to deliver creative messages (example: prior to iOS 5 I had a script that scraped my IMAP account for new mail and notified me of these).
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="clearer"&gt; &lt;/div&gt;
    
    &lt;div class="icon_table_item"&gt;
        &lt;div class="icon_table_item_left"&gt;
            &lt;img src="http://a2.mzstatic.com/us/r1000/076/Purple/d3/b1/60/mzl.ciknsast.175x175-75.jpg" alt="appicon"/&gt;&lt;/div&gt;
        &lt;div class="icon_table_item_right"&gt;
            &lt;h2&gt;&lt;a href="http://itunes.apple.com/us/app/dropbox/id327630330?mt=8"&gt;Dropbox&lt;/a&gt;&lt;/h2&gt;
            &lt;p&gt;
                Great synchronization service that exist for multiple platforms. Requires a free account on dropbox.com, which can be created by using &lt;a href="http://db.tt/mOuMdXt"&gt;this link&lt;/a&gt;.
            &lt;/p&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
    &lt;div class="clearer"&gt; &lt;/div&gt;
&lt;/div&gt;</description><link>http://willitscript.com/post/15505227729</link><guid>http://willitscript.com/post/15505227729</guid><pubDate>Sun, 08 Jan 2012 12:33:00 +0100</pubDate></item><item><title>Final should be Default for Classes in Java</title><description>&lt;p&gt;David J. Pearce wrote an &lt;a href="http://whiley.org/2011/12/06/final-should-be-default-for-classes-in-java/"&gt;interesting post&lt;/a&gt; on why classes should always be final by default, unless otherwise defined. The argument goes like this: non final classes can be extended, and thus rely on their parent class. You can also override methods in the parent class and change their behavior, something that may come back to bite you later (when the parent class change. You risk introducing complexity and dependencies in your application.&lt;/p&gt;

&lt;p&gt;Since what you want is to keep the code as clean and simple as possible you want to favor &lt;a href="http://en.wikipedia.org/wiki/Composition_over_inheritance"&gt;composition over inheritance&lt;/a&gt;. Having all classes final by default forces development in that direction, and introduces an obstacle in taking the easy road (that is, use inheritance way to much).&lt;/p&gt;</description><link>http://willitscript.com/post/14258872506</link><guid>http://willitscript.com/post/14258872506</guid><pubDate>Thu, 15 Dec 2011 13:01:03 +0100</pubDate><category>programming</category><category>inheritance</category><category>composition</category><category>oop</category></item><item><title>An anecdote in regards to version control</title><description>&lt;p&gt;A younger programmer asked an elder about his code and his coding style, and how the older programmer would do certain things. The older programmer said &amp;#8216;Let&amp;#8217;s take a look at your code&amp;#8217;, so the younger took out his laptop, opened his editor, and showed him.&lt;/p&gt;

&lt;p&gt;The older programmer looked at the code, thought about it for a bit, and then started editing it. He deleted the class internals, leaving only the structure, and then rearranged the structure, saying &amp;#8216;Here&amp;#8217;s how I would do it to make it more efficient and readable&amp;#8217;. After he was done, he saved the file and gave it back to the younger programmer, who was ashen-faced.&lt;/p&gt;

&lt;p&gt;&amp;#8216;That&amp;#8230; My code is gone!&amp;#8217; said the younger programmer. &amp;#8216;But you have it in version control somewhere, right?&amp;#8217; asked the elder. &amp;#8216;N&amp;#8230;. no.&amp;#8217; was the reply. &amp;#8216;Well then,&amp;#8217; said the older, &amp;#8216;now you&amp;#8217;ve learned two lessons.&amp;#8217;&lt;/p&gt;

&lt;p&gt;&lt;br/&gt;
(source: &lt;a href="http://stackoverflow.com/questions/132520/good-excuses-not-to-use-version-control/135002#135002"&gt;Stack overflow&lt;/a&gt;, via &lt;a href="http://glennstovall.tumblr.com/post/11019482256"&gt;Glenn Stovall&lt;/a&gt;)&lt;/p&gt;</description><link>http://willitscript.com/post/14175363423</link><guid>http://willitscript.com/post/14175363423</guid><pubDate>Wed, 05 Oct 2011 13:46:00 +0200</pubDate><category>scm</category><category>programming</category><category>anecdotes</category></item><item><title>Little Big Details</title><description>&lt;a href="http://littlebigdetails.com/"&gt;Little Big Details&lt;/a&gt;: &lt;p&gt;Great site for showing little UI tricks that can make a big difference.&lt;/p&gt;</description><link>http://willitscript.com/post/14174623814</link><guid>http://willitscript.com/post/14174623814</guid><pubDate>Tue, 13 Sep 2011 08:00:00 +0200</pubDate><category>ui</category><category>web design</category></item><item><title>The science of password selection</title><description>&lt;a href="http://www.troyhunt.com/2011/07/science-of-password-selection.html"&gt;The science of password selection&lt;/a&gt;: &lt;p&gt;Excellent breakdown of how we select passwords.&lt;/p&gt;</description><link>http://willitscript.com/post/14174579879</link><guid>http://willitscript.com/post/14174579879</guid><pubDate>Wed, 27 Jul 2011 16:00:00 +0200</pubDate><category>security</category><category>passwords</category></item><item><title>The Unix Philosophy: The Rule of Modularity</title><description>&lt;a href="http://glennstovall.tumblr.com/post/6557588598"&gt;The Unix Philosophy: The Rule of Modularity&lt;/a&gt;: &lt;p&gt;&lt;a href="http://glennstovall.tumblr.com/post/6557588598" class="tumblr_blog"&gt;glennstovall&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Write simple parts connected by clean interfaces&lt;/em&gt;&lt;/p&gt; &lt;p&gt;There is a company that used to be a shining example of this rule, but they have lost their way. That company is Lego. take a look at a recent star wars set they have released:&lt;/p&gt; &lt;p&gt;[…]&lt;/p&gt; &lt;p&gt;You can see there are many parts that are specific that would only work in this set (particularly on the top of the ship). &lt;/p&gt;&lt;p&gt;[…]&lt;/p&gt;&lt;p&gt; For multiple Lego bricks to interact they just need to do 1 of 2 things: have other Lego brick snapped to the top of them, or be able to be snapped to the bottom of another Lego brick. In a stroke of genius, Lego actually made it so that their standard Lego bricks can connect with their larger duplo blocks. These two systems designed to work separately can also be connected together.&lt;/p&gt;

&lt;p&gt;Coding is the same way, you parts must have simple interfaces so that other code can know what it does, and it can know what to expect from other code.&lt;/p&gt;&lt;/blockquote&gt;</description><link>http://willitscript.com/post/14174534201</link><guid>http://willitscript.com/post/14174534201</guid><pubDate>Mon, 27 Jun 2011 23:46:00 +0200</pubDate><category>modularity</category><category>programming</category></item></channel></rss>

