<?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>Joey Simhon’s blog</description><title>Digital Jo(e)y</title><generator>Tumblr (3.0; @digitaljoey)</generator><link>http://digitaljoey.tumblr.com/</link><item><title>Bus factor should be renamed to Vacation factor</title><description>&lt;a href="http://throwww.com/a/3si"&gt;Bus factor should be renamed to Vacation factor&lt;/a&gt;</description><link>http://digitaljoey.tumblr.com/post/39936548170</link><guid>http://digitaljoey.tumblr.com/post/39936548170</guid><pubDate>Mon, 07 Jan 2013 19:08:46 +0200</pubDate></item><item><title>iPhone 5 == meh</title><description>&lt;p&gt;A few weeks ago, I completely crashed my iPhone 4, rendering it unusable. To be honest, it wasn&amp;#8217;t quite usable even before that crash, the phone was SLOW to respond to any of my actions (even though I cleared tons of space and restored it), and I couldn&amp;#8217;t have a decent phone call without the earphones. The entire experience felt degraded to a point where I really had negative feelings towards the device.&lt;/p&gt;
&lt;p&gt;I had to switch a phone, and since we have quite a decent device lab at Everything.me, I quickly found myself setting up my replacement Galaxy Nexus, I deliberately went for a Nexus device cause I wanted to experience vanilla Android. Device was quickly setup with my Google Apps account(s) and off I was, making Android my primary phone for the first time ever. &lt;br/&gt;The first thing I noticed is that I&amp;#8217;m getting bombard with notifications, I suddenly started checking my emails every few mins cause I got notifications for it, instead of working in my regular pull mode, the same goes for many other apps, Android is a nightmare for my kind, those that get easily distracted and sucked into doing stuff 24/7. &lt;br/&gt;The other thing that bugged me was that I could get to weird situations where I&amp;#8217;m in the middle of a call, I mistakenly hit the home button, and then good luck with trying to get back to call mode, I just want to hang up c&amp;#8217;mon isn&amp;#8217;t this a phone?&lt;br/&gt;Bottom line, I HATED it and couldn&amp;#8217;t wait to get my hands on a brand new iPhone 5.. &lt;/p&gt;
&lt;p&gt;A few days ago, I got my iPhone 5, I couldn&amp;#8217;t wait to get rid of the Android phone and switch back, I was also anxious to see what Apple has come up with in their 6th generation. The short answer - nothing really, besides a taller screen, and faster web page rendering.&lt;/p&gt;
&lt;p&gt;The long answer - I couldn&amp;#8217;t care less about a new iPhone, the playing field has leveled or very close to that. Heck, I might find myself switching back to Android in the next generation (if they keep finessing their UX).&lt;/p&gt;
&lt;p&gt;What about you?&lt;/p&gt;</description><link>http://digitaljoey.tumblr.com/post/36493581494</link><guid>http://digitaljoey.tumblr.com/post/36493581494</guid><pubDate>Sun, 25 Nov 2012 08:53:00 +0200</pubDate></item><item><title>Sharing!=Viral</title><description>&lt;p&gt;I often find myself sitting with friends, entrepreneurs and product people discussing their product &amp;#8220;viral&amp;#8221; strategy and hear stuff like &amp;#8220;we&amp;#8217;ll achieve virality by adding sharing features to our system. Just like Instagram did&amp;#8221;. I find this approach naive and dangerous and I&amp;#8217;ll try and explain why:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Treating sharing as a peripheral feature will not get you far&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;There&amp;#8217;s a tendency to add sharing functionality as an add-on feature or peripheral layer of interaction which leads to poor usage statistics.&lt;/p&gt;
&lt;p&gt;In Instagram, sharing is the product, you&amp;#8217;re launching to app in order to share photos, there&amp;#8217;s no real sense in opening the app if you&amp;#8217;re not about to share a picture so where other apps have a funnel of&lt;/p&gt;
&lt;p&gt;[launch app] &amp;gt; [do something] &amp;gt; [decide to share] &amp;gt; [share]&lt;/p&gt;
&lt;p&gt;where Instagram&amp;#8217;s looks more like&lt;/p&gt;
&lt;p&gt;[launch app] &amp;gt; [take photo] &amp;gt; [share it]&lt;/p&gt;
&lt;p&gt;In my eyes Instagram&amp;#8217;s funnel can even be referred to as&lt;/p&gt;
&lt;p&gt;[launch app] &amp;gt; [share]&lt;/p&gt;
&lt;p&gt;One can safely assume the % of shares vs. app launches is massive among Instagram users.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The ability to share is just the perquisite for virality&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It&amp;#8217;s not the act of sharing that makes your app viral, it&amp;#8217;s WHAT you share that does that. If you&amp;#8217;re sharing something trivial, non-personal or non-interesting, expect no love from the viral gods.&lt;/p&gt;
&lt;p&gt;On Instagram on the other hand, the photos shared look beatiful and artistic (I can add that on a personal level the retro filters totally had an emotional effect on me), someone seeing these photos can only think &amp;#8220;I want one too!&amp;#8221;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Give your share URL a lot of TLC&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;So you got people to share something and it has the elusive viral ingredient built into it, now you gotta make sure the shared unit is visible on all social platforms (e.g. images shown on feed on facebook vis open graph meta tags), and that when a user clicks it he can easily be &amp;#8220;converted&amp;#8221; to a user of you product / service while still doing it in a subtle way and allowing for his enjoyment of whatever was shared.&lt;/p&gt;
&lt;p&gt;That&amp;#8217;s my $0.02, now I&amp;#8217;ll let you back to the quest of achieving viral coefficient &amp;gt; 0&lt;/p&gt;</description><link>http://digitaljoey.tumblr.com/post/21224357886</link><guid>http://digitaljoey.tumblr.com/post/21224357886</guid><pubDate>Mon, 16 Apr 2012 23:19:20 +0300</pubDate></item><item><title>Livecount - real-time event counting with AppEngine</title><description>&lt;a href="http://eng.pulse.me/introducing-livecount/"&gt;Livecount - real-time event counting with AppEngine&lt;/a&gt;</description><link>http://digitaljoey.tumblr.com/post/19253286378</link><guid>http://digitaljoey.tumblr.com/post/19253286378</guid><pubDate>Tue, 13 Mar 2012 23:47:00 +0200</pubDate></item><item><title>Reinventing the Office: How to Lose Fat and Increase Productivity at Work</title><description>&lt;a href="http://www.fourhourworkweek.com/blog/2012/03/12/reinventing-the-office-how-to-lose-weight-and-increase-productivity-at-work/"&gt;Reinventing the Office: How to Lose Fat and Increase Productivity at Work&lt;/a&gt;</description><link>http://digitaljoey.tumblr.com/post/19233083421</link><guid>http://digitaljoey.tumblr.com/post/19233083421</guid><pubDate>Tue, 13 Mar 2012 14:29:50 +0200</pubDate></item><item><title>iPhone App From Concept to Product
A presentation I had the...</title><description>&lt;object id="__sse8718142" width="400" height="334"&gt; &lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=concepttoproduct-110728152536-phpapp01&amp;stripped_title=iphone-app-from-concept-to-product-8718142&amp;userName=joeysim" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;embed name="__sse8718142" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=concepttoproduct-110728152536-phpapp01&amp;stripped_title=iphone-app-from-concept-to-product-8718142&amp;userName=joeysim" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="400" height="334"&gt;&lt;/embed&gt;&lt;/object&gt; &lt;br/&gt;&lt;br/&gt;&lt;p&gt;iPhone App From Concept to Product&lt;/p&gt;
&lt;p&gt;A presentation I had the pleasure of giving as part of iOS Engineering sessions &lt;br/&gt;at TheJunction32 - a open house for entrepreneurs in Tel-Aviv&lt;/p&gt;</description><link>http://digitaljoey.tumblr.com/post/8184853084</link><guid>http://digitaljoey.tumblr.com/post/8184853084</guid><pubDate>Thu, 28 Jul 2011 23:59:40 +0300</pubDate><category>mobile</category><category>iphone</category><category>ios</category><category>engineering</category><category>tips</category><category>tools</category><category>product</category></item><item><title>Apple finally admit they're not perfect</title><description>&lt;p&gt;Just sipped through Apple&amp;#8217;s WebCore source files and discovered the following comment:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;// FIXME: This is not cool, people. There are too many different functions that all start loads. &lt;br/&gt;// We should aim to consolidate these into a smaller set of functions, and try to reuse more of &lt;br/&gt;// the logic by extracting common code paths.&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://digitaljoey.tumblr.com/post/4994966218</link><guid>http://digitaljoey.tumblr.com/post/4994966218</guid><pubDate>Thu, 28 Apr 2011 01:23:00 +0300</pubDate></item><item><title>Nokia's move ripple effect from ground level</title><description>&lt;p&gt;This is an email I got a day or two back from a Nokia (Symbian/Qt) developer I&amp;#8217;ve been working with&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;span&gt;I am sure you might have heard the Nokia news.&lt;br/&gt;&lt;br/&gt;But if you want windows phone 7 app done. I am happy to work&lt;br/&gt;on it. I am now thinking of becoming a freelance developer so will&lt;br/&gt;have much more time.&lt;/span&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;It was sent about a day after the news of &lt;a target="_blank" href="http://techcrunch.com/2011/02/10/nokia-confirms-microsoft-partnership-new-leadership-team/"&gt;Nokia partnering with Microsoft&lt;/a&gt; broke out. Their decision will probably affect a lot of people&amp;#8217;s lives and jobs. Developers that have been investing their time and skills into Nokia&amp;#8217;s platforms will now become technologically orphans and will have to find a new home.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;In a broader view of things, I&amp;#8217;m really happy Nokia made a move, any move would have been good, it was a shame seeing a great company loosing its greatness.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Now all that remains is convincing Microsoft to add a decent browser to WP7, &lt;a target="_blank" href="http://blogs.msdn.com/b/ie/archive/2011/02/14/ie9-on-windows-phone.aspx"&gt;IE9 will get there in the future&lt;/a&gt;, but I&amp;#8217;m still not sure it&amp;#8217;ll cut it. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I&amp;#8217;d love to see mobile WebKit running on WP7.&lt;/span&gt;&lt;/p&gt;</description><link>http://digitaljoey.tumblr.com/post/3325997395</link><guid>http://digitaljoey.tumblr.com/post/3325997395</guid><pubDate>Wed, 16 Feb 2011 14:36:09 +0200</pubDate></item><item><title>View-source journeys - twitter.com</title><description>&lt;p&gt;Every time I view-source a page on a high-profile/large-scale website, I find myself digging deeper and deeper, fascinated by how much you can learn about that site&amp;#8217;s architecture from simply reading it&amp;#8217;s front-end code.&lt;/p&gt;
&lt;p&gt;I was doing it this morning with twitter and thought I&amp;#8217;d share my findings, non of which are earth shuttering but interesting nonetheless.&lt;/p&gt;
&lt;p&gt;It appears the twitter is using facebook&amp;#8217;s &lt;a target="_blank" href="https://github.com/facebook/scribe"&gt;scribe&lt;/a&gt; for logging and they&amp;#8217;re sending client-side logs directly to scribe.twitter.com&lt;/p&gt;
&lt;blockquote&gt;var scribeUrl = (window.location.protocol.match(/s\:$/)&amp;#160;? &amp;#8216;https&amp;#8217;&amp;#160;: &amp;#8216;http&amp;#8217;) + &amp;#8216;://scribe.twitter.com&amp;#8217;;    scribeUrl += &amp;#8216;?category=webclient&amp;amp;log=&amp;#8217; + encodeURIComponent(stringifyLite(report)) + &amp;#8216;&amp;amp;ts=&amp;#8217; + (new Date()).getTime();
&lt;p&gt;(new Image()).src = scribeUrl;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Since twitter is a heavy client-side application, using their own API just as any other client app would, they are also using some sort of client-side feature management to determine which features will be enabled for the viewing user. I&amp;#8217;m assuming this is used for both user sampling and gradual release of features and also to turn off features when the system is overloaded.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;span&gt;twttr._initialDeciderFeatures = {&amp;#8220;tweet_stream_search&amp;#8221;:1,&amp;#8221;phoenix_puffin&amp;#8221;:1,&amp;#8221;tweet_stream_retweets_by_others&amp;#8221;:1,&amp;#8221;tweet_geo_component&amp;#8221;:1  &amp;#8230;[truncated]&amp;#8230; };&lt;/span&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;span&gt;There&amp;#8217;s also indication to which domains they use for development (localhost.twitter.com on port 3000) and staging (staging*.twitter.com) purposes&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;twttr.domains = {    local: &amp;#8216;twitter.com&amp;#8217;,    remote: &amp;#8216;api.twitter.com&amp;#8217;  };&lt;br/&gt;var match = window.location.hostname.match(/^(staging\d+&amp;#46;[a-zA-Z0-9_]*?)&amp;#46;twitter&amp;#46;com$/i); &lt;br/&gt; if (match) { &lt;br/&gt;&lt;span&gt; &lt;/span&gt;twttr.domains.local = match[1] + &amp;#8216;.twitter.com&amp;#8217;; &lt;br/&gt;&lt;span&gt; &lt;/span&gt;twttr.domains.remote = &amp;#8216;api-&amp;#8217; + match[1] + &amp;#8216;.twitter.com&amp;#8217;; &lt;br/&gt; } &lt;br/&gt; if (document.location.hostname === &amp;#8220;localhost.twitter.com&amp;#8221;) {&lt;span&gt; &lt;/span&gt;twttr.domains.local = &amp;#8216;localhost.twitter.com:3000&amp;#8217;; &lt;br/&gt;&lt;span&gt; &lt;/span&gt;twttr.domains.remote = &amp;#8216;api.localhost.twitter.com:3000&amp;#8217;; &lt;br/&gt; } &lt;br/&gt;&lt;br/&gt;twttr.hosts = {    local: twttr.proto + &amp;#8220;://&amp;#8221; + twttr.domains.local,    remote: twttr.proto + &amp;#8220;://&amp;#8221; + twttr.domains.remote};&lt;/blockquote&gt;
&lt;p&gt;They are using &lt;a target="_blank" href="http://labjs.com/"&gt;Lab.JS&lt;/a&gt; to optimize asset loading&lt;/p&gt;
&lt;p&gt;The real thing I was interested in is figuring out whether they track the frontend server responding to each request, it appears it&amp;#8217;s nowhere on the code but they might be using HTTP headers for that, I&amp;#8217;ll be investigating that some other time and update this post if there&amp;#8217;s anything to share.&lt;/p&gt;</description><link>http://digitaljoey.tumblr.com/post/3307491201</link><guid>http://digitaljoey.tumblr.com/post/3307491201</guid><pubDate>Tue, 15 Feb 2011 12:23:07 +0200</pubDate></item><item><title>Android is already a fragmented mess</title><description>&lt;p&gt;I read this &lt;a target="_blank" href="https://twitter.com/boltron/status/30331546812551168"&gt;tweet&lt;/a&gt; a few minutes ago and had to respond - it&amp;#8217;s too late for these wishes, the way things are going for Android as a platform, its high adoption leads to fragmentation and it&amp;#8217;s inherent in the way the platform is being used.&lt;/p&gt;
&lt;p&gt;It begins with the fact carriers and handset manufacturers keep forking the OS and releasing their own take on it and its UI layer.&lt;/p&gt;
&lt;p&gt;I have no issues with an open platform, it&amp;#8217;s an amazing approach to empower developers and businesses to innovate, but as a developer who&amp;#8217;s been dealing with web and it&amp;#8217;s cross-platform hell for over a decade, seeing how Android becomes a platforms of many end-points that requires rigorous testing and long release cycles makes me a little sad.&lt;/p&gt;
&lt;p&gt;I had a lot of criticism toward Apple&amp;#8217;s iOS development platform, but one thing&amp;#8217;s for sure, they make a developer&amp;#8217;s life a lot easier when it comes to testing and knowing what you develop will work as planned on the user&amp;#8217;s device.&lt;/p&gt;</description><link>http://digitaljoey.tumblr.com/post/2945917896</link><guid>http://digitaljoey.tumblr.com/post/2945917896</guid><pubDate>Wed, 26 Jan 2011 23:34:00 +0200</pubDate></item><item><title>Mobile is the new PC</title><description>&lt;p&gt;A few weeks back I met two important women in my life - my mom and my sister. We were sitting and chatting when I noticed that we all have smartphones, we all have iphones, and I&amp;#8217;m the only dinosaur with iPhone 3GS, they both own iPhone 4(!).&lt;/p&gt;
&lt;p&gt;It seems like everyone around are getting their first smartphone or upgrading it these days. The rate of new hardware and software for mobile being released is rapidly increasing, and we&amp;#8217;re chasing faster and &amp;#8220;better&amp;#8221;. &lt;/p&gt;
&lt;p&gt;Moreover, stuff that didn&amp;#8217;t really work on older hardware (read - Android UI) is not worth optimizing cause in 3-6 months you&amp;#8217;ll get stronger, faster hardware to run it better. Android OS was unusable to iPhone users before the release of devices like Samsung Galaxy S series.&lt;/p&gt;
&lt;p&gt;This totally takes me back to the days where you kept upgrading your PC (Intel) and OS (Windows) in order to keep up with the changes and turn you computer into a more usable computing unit. It took a decade or two before you didn&amp;#8217;t have to own the latest hardware for stuff to work. Today you almost must own the latest smartphone hardware and OS in order for stuff to function, and usually it&amp;#8217;s not even enough.&lt;/p&gt;
&lt;p&gt;If mobile is really the new PC who&amp;#8217;s the new Wintel?&lt;/p&gt;
&lt;p&gt;Edit: The guys from Flurry are &lt;a target="_blank" href="http://blog.flurry.com/bid/54035/Android-Special-Report-Is-Samdroid-the-new-Wintel"&gt;saying it&amp;#8217;s SamDroid&lt;/a&gt;&lt;/p&gt;</description><link>http://digitaljoey.tumblr.com/post/2141910406</link><guid>http://digitaljoey.tumblr.com/post/2141910406</guid><pubDate>Wed, 08 Dec 2010 11:28:00 +0200</pubDate><category>mobile</category></item></channel></rss>
