<?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>HTMList.com, A Web Development Blog by Synapse StudiosCool Stuff   </title>
	<atom:link href="http://www.htmlist.com/category/cool-stuff/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.htmlist.com</link>
	<description>A Web Development Blog by Synapse Studios</description>
	<lastBuildDate>Thu, 19 Jan 2012 09:30:04 +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>Olark: Live Chat Made Amazing (and Simple!)</title>
		<link>http://www.htmlist.com/cool-stuff/olark-live-chat-made-amazing-and-simple/</link>
		<comments>http://www.htmlist.com/cool-stuff/olark-live-chat-made-amazing-and-simple/#comments</comments>
		<pubDate>Thu, 19 Jan 2012 09:30:04 +0000</pubDate>
		<dc:creator>Chris Cardinal</dc:creator>
				<category><![CDATA[Cool Stuff]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[olark]]></category>

		<guid isPermaLink="false">http://www.htmlist.com/?p=647</guid>
		<description><![CDATA[Whilst in the throes of exploring my favorite airfare booking site (Hipmunk), I noticed their live chat tool looked a little&#8230; different. It was bouncy, fun, and unassuming. Turns out, they use Olark: by far the most impressive live chat tool I&#8217;ve ever had the pleasure of dealing with. Olark is absolutely simple to integrate: a [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.olark.com/?r=xbmkh5ky"><img class="alignleft" title="Olark Logo" src="http://www.olark.com/images/sky/common/logo-medium-3d.png" alt="Olark Logo" width="207" height="134" /></a>Whilst in the throes of exploring my favorite airfare booking site (<a title="Hipmunk" href="http://www.hipmunk.com">Hipmunk</a>), I noticed their live chat tool looked a little&#8230; different. It was bouncy, fun, and unassuming. Turns out, they use <strong><a title="Olark" href="http://www.olark.com/?r=xbmkh5ky">Olark</a></strong>: by far the most impressive live chat tool I&#8217;ve ever had the pleasure of dealing with.</p>
<p>Olark is absolutely simple to integrate: a single snippet of JavaScript. But it offers a great deal of power: you can push a logged in user&#8217;s name and email address through the chat, and set their IP address, browser build, and other details as that user&#8217;s &#8220;status&#8221; when chatting. (You can even have the chat bot message you that information at the beginning of the session.)</p>
<p>The fun doesn&#8217;t end there: Olark allows you to actually redirect a user to a different URL, including external addresses, all while maintaining persistent chat. This is absolutely fantastic, as you can literally direct a user to the page they need while still helping them out. Olark reports what page they&#8217;re currently looking at, and their new co-browsing feature allows you to literally see what your users see, scroll the page for them, and circle certain elements.</p>
<p>This level of interaction is fantastic: it can help clinch a waffling pre-sale customer who has a small question but isn&#8217;t able to find an answer and doesn&#8217;t want to go through the trouble of filling out a contact form. Or it can assist with the on-boarding process: new users are the most likely to encounter experience-ruining burrs, problems, small barriers to entry that can be resolved with a simple chat.</p>
<p>The ability to transfer conversations, native Jabber/XMPP utilization (such that I can use Trillian for managing my chats), and a robust API round out the core features of a very compelling product. Olark is free for up to 20 conversations a month and one operator, but the clients we&#8217;ve signed up on Olark needed the Gold plan, since it&#8217;s the lowest plan that supports SSL.</p>
<p>Check out Olark for pre-sale potential customer engagement, and post-sale onboarding/getting started assistance. Reducing friction for new and potential users is the surest way to build a loyal following or make a sale.</p>
<p><a title="Olark live chat" href="http://www.olark.com/?r=xbmkh5ky">Olark</a></p>
<img src="http://www.htmlist.com/wordpress/?ak_action=api_record_view&id=647&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.htmlist.com/cool-stuff/olark-live-chat-made-amazing-and-simple/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Where Google+ Goes From Here</title>
		<link>http://www.htmlist.com/cool-stuff/where-google-plus-goes-from-here/</link>
		<comments>http://www.htmlist.com/cool-stuff/where-google-plus-goes-from-here/#comments</comments>
		<pubDate>Mon, 04 Jul 2011 17:22:55 +0000</pubDate>
		<dc:creator>Chris Cardinal</dc:creator>
				<category><![CDATA[Cool Stuff]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google plus]]></category>
		<category><![CDATA[Social Networking]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.htmlist.com/?p=638</guid>
		<description><![CDATA[Google's Plus represents their best effort in the social networking space. So what do they need to do to really lock things down?]]></description>
			<content:encoded><![CDATA[<p><a href="http://plus.google.com/"><img class="alignright" title="Google Plus" src="https://ssl.gstatic.com/s2/oz/intl/en-US/images/slide2-57662827ca642dc8b654937eb7231272.png" alt="Google Plus" width="346" height="227" /></a></p>
<p>Google&#8217;s Plus release represents their first legitimate effort at a coherent social experience. Right out of the gate, they&#8217;ve got a few things incredibly right: amazing notifications unified throughout all Google products, good integration with Picasa and Android, Circles, Hangouts, data portability, and a feeling like this might be around for some time.</p>
<p>Now they need to focus on what&#8217;s necessary to make this a second nature, everyday product for people, like Facebook is now for most people.</p>
<p><strong>Open Registrations/Invitations</strong></p>
<p>If anyone can get scale right, it should be Google. Admittedly, scaling instantly in to the millions is a challenge for even the largest companies, and there&#8217;s surely a method to their madness here, but they need to be doing whatever they can to get this thing open to as many people as possible. They&#8217;re framing the current experience as a &#8220;Field Test&#8221;, but it&#8217;s difficult to test a social networking product if you can&#8217;t get your friends onto it. Early adopters are the type of user who will shift their more reluctant friends to a new system. They&#8217;re kneecapping their momentum with their limited invitations.</p>
<p><strong>Figure Out Sparks</strong></p>
<p>By far, the most confusing element of Plus is Sparks. It&#8217;s an interesting hodgepodge auto-aggregator of news and blog posts on individual topics (or &#8220;eccentric hobbies&#8221; as their video goes), but it&#8217;s presented in a bit of a sloppy way. Since it&#8217;s curated automatically, it&#8217;s not terribly great at it, which is a bit disappointing as well. Fortunately, Sparks is a nice-to-have within the Plus experience. Perhaps some integration with Reader would help make Sparks shine.</p>
<p><strong>Make Huddles Amazing (Read: Copy Beluga)</strong></p>
<p>I&#8217;ve got basically every single friend I speak with regularly on Beluga now. We use it to plan events, see what&#8217;s happening for the evening, and coordinate shared rides and the like. It&#8217;s a great tool. We also have fun with it. We share photos and links and such. And we can access it from our desktop if necessary. Huddles don&#8217;t currently let you access them from the Plus site itself, only from the mobile app. Since Plus isn&#8217;t available in the iPhone App Store yet, I can&#8217;t try to convert my friends to Huddles yet. And since Huddles don&#8217;t let us share photos or set Huddle photos, I don&#8217;t know if I&#8217;d want to yet. Location sharing is really useful too, and here Google has a definite leg up: it already shares location on posts&#8230; why not on huddle updates? Moreover, why not tie directly in to Latitude? Let me navigate right to a real-time-updating friend if I&#8217;m picking them up from someone, right from within our Huddle!</p>
<p><strong>Import Profile Pics from&#8230; Somewhere!</strong></p>
<p>Most of my connections/friends on Plus are faceless. Make adding a profile picture a required first step. It&#8217;s important to associate faces with names, but moreover, it&#8217;s WAY less usable to see a bunch of placeholder graphics throughout the product. Import from Gravatar, or, if you won&#8217;t violate TOS (heh), from Facebook directly. Either way, make it required, or constantly nag until it gets done.</p>
<p><strong>Release a Stream Notifier or API</strong></p>
<p>If you want us to engage, we need to know things are happening. Right now, it appears the only way to see new posts is to load up the Plus site or app and look at the Streams. Facebook and Twitter have apps or APIs that allow us to get pinged with updates as they happen. You&#8217;ll lose momentum and people will stop coming back to Plus if we can&#8217;t see what&#8217;s happening without having to call up the site manually every time.</p>
<p><strong>Let Me Cross-Post Content Easily</strong></p>
<p>Since Plus isn&#8217;t going to overtake Facebook, Twitter, or Linked In overnight, let me cross-post to those places with a click of a button. Better yet, blow everyone away and make it as easy as choosing a &#8220;Circle&#8221;. Add the Facebook &#8220;Circle&#8221; and the post auto-cross-posts there. Add the Twitter &#8220;Circle&#8221; and the shortened form is available for preview before it ends up there. By keeping up the walled garden, Google may be intentionally discouraging this sort of behavior, but this is what will trigger buy-in immediately and ease the transition. Social networks aren&#8217;t necessarily a zero-sum game, but two is likely very close to the limit for most.</p>
<p><strong>What&#8217;s Next for Plus</strong></p>
<p>Plus is off to a great start. Better than Buzz or Google Wave could ever hope for. It&#8217;s exciting, clean, original, and well-executed, with a lot of great features available right out of the gate, and some really innovative concepts. With a bit of polish and a bit more hand-holding, I think Google can convince people to begin using Plus as part of their daily interaction. But the elements needed to keep us checking in and coming back every day aren&#8217;t quite there yet. The notifications are a great start, but they only tell part of the story, keeping me informed only after I&#8217;ve already engaged. I need a reminder to check in on Plus and see that my friends are using it, and that&#8217;s sorely lacking right now.</p>
<p>Google also needs to integrate single-sign-on/Google Authentication with Plus, the way Facebook Connect can be used to allow people to log in or register on a site. It&#8217;s not necessary to have a complete app platform available right out of the gate, but Facebook is definitely on to something with Facebook Connect and it&#8217;s an important element for any social networking site to drive engagement.</p>
<p>Hopefully we&#8217;ll see swift continued development on Plus. It&#8217;s a great product out of the gate, but building the product isn&#8217;t the hard part in social networking: that&#8217;s left to getting users to buy in and keep coming back for more. Plus solves a lot of the qualms people have with Facebook on the privacy, data portability, account deletion, and sharing side of things, and that&#8217;s amazing. But it&#8217;s not an instant win, and they&#8217;ve got a long way to go. Making Huddles indispensible (and consider integrating them with group gTalk) would help, but I&#8217;m hoping they&#8217;ve got some other unique features up their sleeves to introduce into the Plus fold. I&#8217;m disappointed that the Slide-inside-Google-developed Pool Party and Prizes products weren&#8217;t built with Plus in mind. It might be time for the left hand to clue the right hand into what&#8217;s going on, and to get everyone on the same page.</p>
<p><strong><br />
</strong></p>
<img src="http://www.htmlist.com/wordpress/?ak_action=api_record_view&id=638&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.htmlist.com/cool-stuff/where-google-plus-goes-from-here/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Better Group (And Personal) Password Management with KeePass &amp; Dropbox</title>
		<link>http://www.htmlist.com/cool-stuff/better-group-password-management-with-keepass-dropbox/</link>
		<comments>http://www.htmlist.com/cool-stuff/better-group-password-management-with-keepass-dropbox/#comments</comments>
		<pubDate>Wed, 26 Jan 2011 05:58:12 +0000</pubDate>
		<dc:creator>Chris Cardinal</dc:creator>
				<category><![CDATA[Cool Stuff]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[best practices]]></category>
		<category><![CDATA[dropbox]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[group passwords]]></category>
		<category><![CDATA[keepass]]></category>
		<category><![CDATA[password management]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.htmlist.com/?p=627</guid>
		<description><![CDATA[Managing multiple passwords within a group while maintaining security, good practices, and synchronization can be a challenge. We explore our utilization of a program called KeePass and a file-sharing system called Dropbox to help manage passwords.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.htmlist.com/wordpress/wp-content/uploads/2011/01/main.jpg"><img class="alignleft size-full wp-image-628" title="KeePass Screenshot" src="http://www.htmlist.com/wordpress/wp-content/uploads/2011/01/main.jpg" alt="" width="300" height="206" /></a>As a <a title="Phoenix, Arizona Web Development &amp; Design &amp; Custom Software" href="http://www.synapsestudios.com/">web development firm</a>, we frequently have to manage passwords and other credentials for multiple clients and their projects. This includes everything from SFTP and SSH information, database passwords, DNS managers, domain registrars, and everything else under the sun. We&#8217;ve moved to a policy of good password practice across the board at the urging of common sense, and one of our former developers, <a href="http://alanhogan.com/">Alan Hogan</a>. (Our previous system was not sharable, and wrought with other shortcomings.)</p>
<p>We needed a password system that was secure but which would allow us to share client passwords across our team, while ensuring limited access within the organization, and unique, complex passwords every single time. We ended up making use of the wonderful <a href="http://www.keepass.info">KeePass</a> tool, synced through <a title="Dropbox" href="http://db.tt/iFL8DPs">Dropbox</a>.</p>
<p>KeePass is a wonderful password manager (though not as much for Mac or Linux users, for reasons I&#8217;ll get to) in general. And it has some pretty great features, some unique to KeePass, others relatively standard fare:</p>
<p><span id="more-627"></span></p>
<p><strong>Strong Security</strong><br />
Clearly, any good password manager needs to be secure itself. KeePass supports AES and TwoFish, amongst other encryption standards that are very difficult to crack. Your password database is duly encrypted thusly. Further, you can expand your security by requiring the use of a unique key file in addition to (or instead of, though this isn&#8217;t recommended) the password you use to unlock the database. This adds an additional layer of security against things like keyloggers, in that the hacker must have access to and identify the key file to use, in addition to knowing or cracking your password. (A strong password is still important, since simple passwords will fall to <a href="http://en.wikipedia.org/wiki/Dictionary_attack">dictionary attacks</a> relative quickly.) You can also use your Windows login to unlock your database, but again, this shouldn&#8217;t be your only method to unlock, and this doesn&#8217;t work when sharing a password database as we do.</p>
<p>KeePass also goes to some length to keep your passwords completely out of process memory. This keeps malicious software from identifying passwords in the memory stream of the process while it&#8217;s running. It also can be configured to automatically purge the computer&#8217;s clipboard after a set period of time, to prevent a user from walking up to your computer and hitting paste and hoping for the best.</p>
<p><strong>Workspace Locking</strong><br />
Workspace locking goes hand-in-hand with strong security, itself being a subset of the program&#8217;s security. You can easily configure KeePass to automatically re-lock your database after a period of system OR KeePass inactivity, when the software is minimized, or when your workstation itself is locked. (I&#8217;ve noticed that it can sometimes pause the locking process when the database has changed, though this might have been resolved in recent updates.)</p>
<p><strong>Intelligent Sync Management</strong><br />
KeePass surprised me with its intelligent management of file changes. If a user on my team alters the KeePass file (which is stored to a Dropbox folder we all have access to) while I&#8217;m using the file, it prompts that it can merge the changes with any changes you may have made. Unless both of us happened to be editing the same record, the merge typically works perfectly, ensuring that all of our changes are current.</p>
<p><strong>Our Process</strong><br />
We store our KeePass file on our team&#8217;s Dropbox folder. We have a very strong password applied to that file, which we change frequently. We also require the use of a key file to unlock the database, which is NOT stored in our Dropbox. This file is distributed manually and only on a few systems. We also maintain several different databases, based on what access a user needs. Unfortunately, there isn&#8217;t a way to share a record amongst databases in order to keep it current, so this sort of functionality only goes so far, but if necessary, we&#8217;re able to quickly change all of the passwords we need to in the event of a personnel change or other problem.</p>
<p>Dropbox syncs the file as I described above, ensuring we&#8217;re all working off of the same copy of the file. If we wanted to, we could enforce a read-only rule that would have one member of the team making all password changes and entries, but this wouldn&#8217;t be very efficient for our team, and we trust our team members.</p>
<p><strong>Potential Issues</strong><br />
Unfortunately, KeePass isn&#8217;t built to play terribly kindly with OS X or Linux. KeePass is kept in two development variants: 1.x and 2.x, with 1.x being Windows- and WINE-compatible, but missing some great features, and 2.x only working in Mono, to varying degrees of success (as far as those in our organization were concerned.) A solution to this is <a href="http://www.keepassx.org/">KeePassX</a>, which works natively in OS X/Linux, but which doesn&#8217;t support the kdbx file format used by 2.x. The KeePassX developer is looking to rebuild it to support kdbx, so hopefully we&#8217;ll see that problem reconciled in time, but for now, Mono may be your best bet, if you can get it to cooperate.</p>
<p><strong>Neat Bonuses</strong><br />
KeePass has a pretty great Android app that can work together with the Dropbox app to load your database, even if it requires both the password AND key file. I haven&#8217;t had a chance to use the iOS apps, but apparently they&#8217;re pretty nice as well. I generally use this in read-only mode exclusively, but it&#8217;s convenient nonetheless when you absolutely *need* a password. There&#8217;s also a plugin system that allows for some cool extensibility, and it&#8217;s actively being developed, so you&#8217;ll see updates hit on a regular basis. It&#8217;s also entirely free.</p>
<p>You can easily sort passwords into folders and sub-folders, assign icons to them, search through records, attach other encrypted data to each record, store record histories, and even have it perform a macro of keystrokes when &#8220;auto-typing&#8221; your password in. (This is useful if you need to select a database, for instance, from a dropdown. You can even have it launch a new browser tab, browse to the page in question, and go from there, though this requires a bit of configuration to get working.)</p>
<p><strong>Conclusion<br />
</strong>Overall, we&#8217;ve been very happy with KeePass. We weren&#8217;t willing to take the plunge and use an online, hosted solution to store our passwords, if we could avoid it. Because we control the encryption and access requirements, and because Dropbox is pretty secure in and of itself, I feel comfortable keeping our password database on Dropbox, encrypted with AES-256 bit on a strong password, and backed by a non-Dropboxed encryption key.</p>
<p>This is a somewhat unique configuration for our smaller group, and you&#8217;ll likely need to modify it accordingly, but hopefully this can give you a great starting place for good password management with your team.</p>
<p><a href="http://keepass.info/index.html">KeePass Password Manager</a> (free!)</p>
<p><a href="http://db.tt/iFL8DPs">Dropbox</a> (free!)</p>
<img src="http://www.htmlist.com/wordpress/?ak_action=api_record_view&id=627&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.htmlist.com/cool-stuff/better-group-password-management-with-keepass-dropbox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Just another day in a Skype room with programmers&#8230;</title>
		<link>http://www.htmlist.com/cool-stuff/skype-fun-with-programmers/</link>
		<comments>http://www.htmlist.com/cool-stuff/skype-fun-with-programmers/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 05:14:10 +0000</pubDate>
		<dc:creator>Chris Cardinal</dc:creator>
				<category><![CDATA[Cool Stuff]]></category>
		<category><![CDATA[chat logs]]></category>
		<category><![CDATA[mana]]></category>
		<category><![CDATA[skype]]></category>

		<guid isPermaLink="false">http://www.htmlist.com/?p=619</guid>
		<description><![CDATA[Skype is a great internal tool for managing projects and chatting with team members. Sometimes to hilarious result.]]></description>
			<content:encoded><![CDATA[<div id="_mcePaste">
<div><span style="color: #ff0000;">Bob E</span>: lorenzo, there were also some validation lang keys missing for image upload validation stuff, so if you can add those too that would be good</div>
<div id="_mcePaste"><span style="color: #0000ff;">Lorenzo P</span>: not possible</div>
<div id="_mcePaste"><span style="color: #0000ff;">Lorenzo P</span>: can&#8217;t be done</div>
<div id="_mcePaste"><span style="color: #0000ff;">Lorenzo P</span>: not enough mana.</div>
<div id="_mcePaste"><span style="color: #339966;">David B</span>: tough break, bob</div>
<div id="_mcePaste"><span style="color: #ff0000;">Bob E</span>: not really, now that i know he is out of mana i&#8217;m going to attack</div>
<div id="_mcePaste"><span style="color: #0000ff;">Lorenzo P</span>: I&#8217;m obviously a barbarian you FOOL!</div>
<div id="_mcePaste"><span style="color: #0000ff;">Lorenzo P</span>: should I auto login users on activation while I&#8217;m at it?</div>
<div id="_mcePaste"><span style="color: #ff0000;">Bob E</span>: sure</div>
<div></div>
</div>
<div>We use Skype for inter-office communication a lot. We&#8217;ve found it a nice tool for building chat rooms for specific projects, to keep things separated and clean; we can invite clients to discuss things throughout the day, and file sharing is simplified. I&#8217;ll save my critiques for Skype&#8217;s complete inane shortcomings across basically every platform for another post, but suffice to say, occasionally we have exchanges like the one above.</div>
<div></div>
<div>Please remember to ensure an adequate mana supply for your developers at all times.</div>
<img src="http://www.htmlist.com/wordpress/?ak_action=api_record_view&id=619&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.htmlist.com/cool-stuff/skype-fun-with-programmers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Amazon S3 Versioning, Multi-Factor Authentication Now Available</title>
		<link>http://www.htmlist.com/cool-stuff/amazon-s3-versioning-and-multi-factor-authentication-now-available/</link>
		<comments>http://www.htmlist.com/cool-stuff/amazon-s3-versioning-and-multi-factor-authentication-now-available/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 17:00:00 +0000</pubDate>
		<dc:creator>Chris Cardinal</dc:creator>
				<category><![CDATA[Cool Stuff]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[amazon aws]]></category>
		<category><![CDATA[amazon s3]]></category>
		<category><![CDATA[deletions]]></category>
		<category><![CDATA[mfa]]></category>
		<category><![CDATA[versioning]]></category>

		<guid isPermaLink="false">http://www.htmlist.com/?p=579</guid>
		<description><![CDATA[Amazon reveals their newest addition to their S3 service: Versioning and multi-factor authentication.]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-580" title="MFA Fob" src="http://www.htmlist.com/wordpress/wp-content/uploads/2010/02/mfa.jpg" alt="" width="160" height="120" />Continuing their trend of releasing substantial features and additional services in their web services portfolio on a regular basis, Amazon announced this week the availability of versioning and multi-factor authentication across their Simple Storage Service (S3) property.</p>
<p><strong>How S3 Versioning Works</strong><br />
Versioning is a critical feature many developers had requested as data stored on S3, while maintained in triplicate across the S3 file-system automatically, is still vulnerable to sweeping delete operations by developers, errant scripts, or other causes. Moreover, developers had to manually version changing files if they wanted to preserve the ability to roll-back to an earlier revision or undo a &#8220;delete&#8221;. In any event, a lot of custom code had to be created to replicate these behaviors, and most solutions weren&#8217;t particularly graceful.</p>
<p><span id="more-579"></span></p>
<p>Versioning is <a href="http://docs.amazonwebservices.com/AmazonS3/latest/dev/">easy to enable</a> and brilliant for Amazon: make a simple API call to enable versioning for an entire bucket and all changes to the files within that bucket will preserve versions. Moreover, deletions of files through the typical <code>DELETE</code> API call will simply create a delete marker, making the file unavailable for all intents and purposes, but preserving its presence and all of its versions in the S3 filesystem, until its permanent deletion is called for. It&#8217;s brilliant for Amazon because you pay the additional storage fees for each version and for each &#8220;deleted&#8221; file that hasn&#8217;t been permanently destroyed.</p>
<p>This means that versioning can be easily enabled on any existing S3 implementation with out breaking compatibility with existing code. Naturally, developers will need to rewrite their delete calls to make use of the version delete options, but for an application with little-to-no deletions, this is a feature implemented with a single API call.</p>
<p>Amazon also introduced Multi-Factor Authentication. MFA works with security code-generating key fobs that act as a physical token one must have in order to perform an action. In this case, if you enable MFA, you need the token to log in and manage your AWS account, and you can also optionally require the token to commit a permanent deletion of a file version. For the uninitiated, it&#8217;s considered multi-factor as you need two types of authentication to login or make deletes on your account. (Your AWS username and password for account management and your AWS public/private key for API calls each make up the other half of the multi-factor equation with the MFA code.)</p>
<p><strong>The S3 Trash Bin</strong><br />
Using MFA, it becomes possible to create a highly robust and secure safety net that prevents the wholesale deletion of an S3 account&#8217;s contents without first enforcing an additional review step. After enabling versioning and MFA-Delete mode for a bucket, a developer&#8217;s application will continue to function to the end-user as expected. This means very little rewriting of code needs to be performed to get these features up and running. A simple trash bin script could then be created which would identify all files whose current version is a delete marker, and present them to an admin. Since permanent deletions require the MFA code to be appended to the API call, only the individual with physical access to the code (which recycles every 30 seconds) would be able to commit the delete operations necessary. After reviewing the files queued for permanent deletion, they&#8217;d enter the code and the script would be sent off to the races.</p>
<p>Naturally, this still leaves some room for error: the script that commits the permanent deletes would need to be scrutinized to ensure that it itself is bulletproof, but beyond that, this should protect against nearly all accidental deletions, and establish a command and control hierarchy for an organization. It&#8217;s important to reduce the sheer number of individuals who have complete deletion privileges for myriad reasons, and this helps accomplish that. The MFA key fob is available for all of $13 and you&#8217;re off to the races. You simply input your serial number on the AWS site, and Amazon&#8217;s servers knows what the code it&#8217;s generated should be based on the time and a seed that&#8217;s private to them.</p>
<p><a href="http://aws.amazon.com/mfa/">More on Amazon AWS Multi-Factor Authentication</a><br />
<a href="http://docs.amazonwebservices.com/AmazonS3/latest/dev/Versioning.html">S3 Versioning</a> | Amazon Developer&#8217;s Guide</p>
<img src="http://www.htmlist.com/wordpress/?ak_action=api_record_view&id=579&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.htmlist.com/cool-stuff/amazon-s3-versioning-and-multi-factor-authentication-now-available/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook vs. Twitter Clickthroughs: More Bang For Your Buck</title>
		<link>http://www.htmlist.com/cool-stuff/facebook-vs-twitter-clickthroughs-more-bang-for-your-buck/</link>
		<comments>http://www.htmlist.com/cool-stuff/facebook-vs-twitter-clickthroughs-more-bang-for-your-buck/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 17:00:09 +0000</pubDate>
		<dc:creator>Chris Cardinal</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Cool Stuff]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[clickthroughs]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[Social Networking]]></category>
		<category><![CDATA[statistics]]></category>
		<category><![CDATA[threadknits]]></category>
		<category><![CDATA[threadless]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[viral]]></category>

		<guid isPermaLink="false">http://www.htmlist.com/?p=530</guid>
		<description><![CDATA[We look at clickthrough rates from Twitter and Facebook and see how they compare.]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="size-full wp-image-532 aligncenter" title="Facebook vs Twitter" src="http://www.htmlist.com/wordpress/wp-content/uploads/2010/01/facebook_vs_twitter.jpg" alt="Facebook vs Twitter" width="381" height="214" /></p>
<p>While managing your social networking presence on Twitter and Facebook, it can be difficult to quantify the impact of each medium. While I&#8217;m a huge fan of Twitter, traffic results from earlier today on one of my sites confirmed for me what may sound like common sense: <strong>Facebook fans drive far more traffic per-user than Twitter followers for a given promotional message.</strong></p>
<p>I&#8217;m currently running a contest in association with T-shirt company <a title="Threadless.com" href="http://clickserve.cc-dt.com/link/tplclick?lid=41000000027278770&amp;pubid=21000000000210012">Threadless</a>. (It&#8217;s called <a title="Threadknits" href="http://www.threadknits.com/">Threadknits</a>, and it&#8217;s based on knitting and crocheting their t-shirt designs into crafts.) Today, Threadless posted a message on their Facebook page and  Twitter, both with essentially the same content: an invitation to check out Threadknits. They were both posted at nearly the same time.</p>
<p>The numbers are what might surprise you. Threadless has almost 1,500,000 followers on Twitter, and &#8220;only&#8221; 102,000 fans on Facebook. With the posts made within an hour of each other, my traffic on the site shot up, with a couple thousand visitors hitting by day&#8217;s end. Here&#8217;s the breakdown of traffic driven from each:</p>
<table border="1" style="border:1px dashed #000;" width="80%" cellpadding="3">
<thead>
<tr>
<td><strong>Medium:</strong></td>
<td><strong>Fans:</strong></td>
<td><strong>Visitors:</strong></td>
<td><strong>% Audience Clickthroughs:</strong></td>
</tr>
</thead>
<tbody>
<tr>
<td>Facebook</td>
<td>~102,000</td>
<td>~1,110</td>
<td><strong>~1.08%</strong></td>
</tr>
<tr>
<td>Twitter</td>
<td>~1,490,000</td>
<td>~682</td>
<td><strong>~0.04%</strong></td>
</tr>
</tbody>
</table>
<p>&nbsp;<br />
The difference is absolutely staggering. Whereas Facebook generated an approximate 1.08% clickthrough rate, Twitter&#8217;s was closer to, well, 0%. 232 visitors came from Twitter or related sites directly and 450 additional clicks landed on the home page without a referrer, which I&#8217;m chalking up to clicks from Twitter clients. (Though, to be fair, this could easily overstate Twitter&#8217;s influence.)</p>
<p>On a <a title="Threadcakes" href="http://www.threadcakes.com/">previous contest</a>, Threadless would tweet and I&#8217;d see between 1,000-2,000 clicks on their roughly 1.4 million followers, so while it may be a bit low today, I think the point stands: Even at its best, Twitter for large audiences generates clickthrough rates dramatically lower than Facebook. For 2,000 clicks, the rate at 1.4M followers stood at 0.14%. A quick look at the bit.ly stats on a few links from <a href="http://www.twitter.com/aplusk">Ashton Kutcher</a> (the #1 Twitter personality by followers) shows they typically net about 20,000-30,000 clickthroughs, on 4.3M followers, gaining a decent amount on the Threadless best-case scenario all the way up to 0.48% ~ 0.60%. (This accounts somewhat for the viral nature of Twitter as bit.ly clicks are counted for retweets as well.) Naturally, clickthrough rates will vary dramatically even amongst popular Twitter personalities for a variety of reasons. I&#8217;d like to focus more on the significant difference between the Facebook and Twitter rates I witnessed today.</p>
<p>There are likely several possible reasons for this:</p>
<ul>
<li>The audience may be slightly different—people willing to consider themselves &#8220;fans&#8221; on Facebook may be more picky with their allegiance than those willing to follow an account on Twitter.</li>
<li>The phrasing and formatting of the message were slightly different—not exactly apples-to-apples as Facebook includes the logo and a text clip from the website, but I imagine this had a negligible effect.</li>
<li>My mileage may vary—this is an admittedly small sample size, but I think the evidence and logic around these results indicate they&#8217;re not anomalous.</li>
<li>Most importantly, <strong>Facebook lingers while Twitter sails by. </strong>Users are probably more likely to follow links during their Facebook time than from a passing Twitter notification unless it&#8217;s of particular interest to them.</li>
</ul>
<p>That last point is particularly important. Facebook, having reconfigured their News Feed yet again, no longer sorts things there chronologically. They&#8217;ve merged the Highlights functionality back into the News Feed which they now use to keep certain posts &#8220;stickier&#8221; than others based on what they believe you might be interested in. (It manages to do a strikingly horrible job at this compared to how it used to perform, but that&#8217;s a conversation for a different post.)</p>
<p><strong>With Twitter, the very nature of real-time can be summed up: blink and you miss it.</strong> While you can use a Twitter client to review tweets over the past day or two, it&#8217;s still less likely your tweet was as visible over Twitter as a post would be on Facebook&#8217;s News Feed. I&#8217;d like to see some more statistics on total audience reach. The clickthrough rate surely only tells part of the story—I&#8217;d be far more interested to learn what percentage of each audience even <em>saw</em> the post, and determine true clickthrough rates from that.</p>
<p>In the end, it&#8217;s important to consider the overall spirit of the findings here. Twitter is great for growing virally and interacting with customers, but your message on Facebook may have a far more lasting impression and generate greater returns, even if fans are more of a fight to procure. Engage on both, but recognize the differences between them and leverage each of their strengths. I&#8217;ll likely post about the best way to do that for each site in the near future.</p>
<p><small><em>(The above graphic represents the total clickthrough breakdown by medium assuming a linear progression of Threadless&#8217; Facebook audience to match their Twitter audience, maintaining the same clickthrough rates from today&#8217;s traffic. It&#8217;s likely the Facebook clickthrough rate could in fact fall some as their audience grew, but it&#8217;s my belief that it would still beat Twitter, user for user.)</em></small></p>
<img src="http://www.htmlist.com/wordpress/?ak_action=api_record_view&id=530&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.htmlist.com/cool-stuff/facebook-vs-twitter-clickthroughs-more-bang-for-your-buck/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>TweetNotebook: Custom Notebooks Filled With Your Tweets</title>
		<link>http://www.htmlist.com/tech-news/tweetnotebook-custom-notebooks-filled-with-your-tweets/</link>
		<comments>http://www.htmlist.com/tech-news/tweetnotebook-custom-notebooks-filled-with-your-tweets/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 10:03:58 +0000</pubDate>
		<dc:creator>Chris Cardinal</dc:creator>
				<category><![CDATA[Cool Stuff]]></category>
		<category><![CDATA[Tech News]]></category>
		<category><![CDATA[fun]]></category>
		<category><![CDATA[notebook]]></category>
		<category><![CDATA[products]]></category>
		<category><![CDATA[threadless]]></category>
		<category><![CDATA[tweetnotebook]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.htmlist.com/?p=499</guid>
		<description><![CDATA[TweetNotebook prints notebooks filled with the wisdom of your tweets, right in the footer.]]></description>
			<content:encoded><![CDATA[<p><a title="TweetNotebook" href="http://www.tweetnotebook.com/"><img class="alignleft size-full wp-image-500" title="TweetNotebook Logo" src="http://www.htmlist.com/wordpress/wp-content/uploads/2009/12/tweetnotebook_logo.png" alt="TweetNotebook Logo" width="220" height="75" /></a><a title="TweetNotebook" href="http://www.tweetnotebook.com/">TweetNotebook</a> is a fun site by an interactive company from Belgium called <a href="http://www.boondoggle.eu/#/home">Boondoggle</a>. The premise is simple: enter your Twitter username and it generates a notebook filled with a random selection of your tweets in the footer of each page. For $12, you get a 320-page notebook with a different tweet on every page. The site lets you select your choice of cover (and print a specific message on the cover as well) before peppering each page with a random tweet from your Twitter history.</p>
<p>You can preview the book beforehand and regenerate the notebook as many times as you&#8217;d like, though for now, you can&#8217;t hand-pick tweets for the notebook. The notebook also appears to only have non-ruled pages much to my chagrin, but it sounds like TweetNotebook is planning on beefing up their offering in the near future if this takes off. For now, they have three different covers available, onto which your current avatar and cover tweet appears. Here&#8217;s mine:</p>
<p><img class="alignnone size-full wp-image-501" title="my_tweetbook" src="http://www.htmlist.com/wordpress/wp-content/uploads/2009/12/my_tweetbook.png" alt="my_tweetbook" width="506" height="163" /></p>
<p>Suffice to say, I&#8217;ve already bought mine. I think it&#8217;s a fun conversation piece, and I think that it&#8217;s a fun look into what was relevant to you a few days, weeks, or for some of us, even a year or two ago, in a blurb. It&#8217;s almost like thumbing through a diary in a sense, a simple snapshot at the bottom of each page that makes you pause and try to remember what context surrounded that tweet.</p>
<p>We&#8217;ve seen <a title="Threadless.com" href="http://bit.ly/124yOk">Threadless</a> make <a href="http://clickserve.cc-dt.com/link/click?lid=41000000029722768">T-shirts out of great tweets</a>, and I think it&#8217;s no stretch to imagine other potential products that can be built out of a users&#8217; Twitter feed. Consider a timeline, complete with tag cloud, friend diagrams, statistics, and more. Twitter lends itself to these sort of changes in medium because of their brevity and relevance—no one&#8217;s wearing a shirt with excerpts from their blog on it, but a poster that shows off my activity on Twitter is fun enough even if you&#8217;re not a raging narcissist.</p>
<p>For now, there&#8217;s also nothing to stop you from using someone else&#8217;s tweets, like a celebrity. (Or a friend, for a gift.) That situation may change if copyright issues arise. All told, my order was just $14.50, including shipping to Tempe, Arizona. Here&#8217;s hoping they&#8217;ll offer different sizes, bindings, and rulings in the future.</p>
<p><a title="TweetNotebook" href="http://www.tweetnotebook.com/">TweetNotebook</a> | via <a href="http://www.techcrunch.com/2009/12/16/tweetnotebook/">TechCrunch</a></p>
<img src="http://www.htmlist.com/wordpress/?ak_action=api_record_view&id=499&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.htmlist.com/tech-news/tweetnotebook-custom-notebooks-filled-with-your-tweets/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Speed Tracer Makes AJAX Optimization Easier</title>
		<link>http://www.htmlist.com/tech-news/google-speed-tracer-makes-ajax-optimization-easier/</link>
		<comments>http://www.htmlist.com/tech-news/google-speed-tracer-makes-ajax-optimization-easier/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 06:54:29 +0000</pubDate>
		<dc:creator>Chris Cardinal</dc:creator>
				<category><![CDATA[Cool Stuff]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Tech News]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[Google Chrome]]></category>
		<category><![CDATA[google web toolkit]]></category>
		<category><![CDATA[optimization]]></category>
		<category><![CDATA[profiling]]></category>
		<category><![CDATA[speed tracer]]></category>

		<guid isPermaLink="false">http://www.htmlist.com/?p=493</guid>
		<description><![CDATA[Google announced their Speed Tracer profiling tool to allow developers to better analyze performance problems in their web applications.]]></description>
			<content:encoded><![CDATA[<p><img class="size-medium wp-image-495 alignright" title="SpeedTracer-SluggishnessDetail" src="http://www.htmlist.com/wordpress/wp-content/uploads/2009/12/SpeedTracer-SluggishnessDetail-300x297.png" alt="SpeedTracer-SluggishnessDetail" width="180" height="178" />Google today announced <a title="Google Speed Tracer" href="http://code.google.com/webtoolkit/speedtracer/">Speed Tracer</a> as part of their <a href="http://code.google.com/webtoolkit/overview.html">Google Web Toolkit</a> offerings. While most of the GWT focuses on enabling developers to create web applications in Java (which compiles down to optimized JavaScript), Speed Tracer is a useful profiling tool for any developer wrestling with XMLHttpRequest.</p>
<p><strong>What makes Speed Tracer different?</strong></p>
<p>Developers have long used Firebug to identify what AJAX requests were causing bottlenecks and to analyze responses to those requests. Firebug is an extremely powerful tool and does a serviceable job with this approach, but Speed Tracer takes things one step further, analyzing the &#8220;sluggishness&#8221; of your application by examining how busy or blocked the UI is in your browser. This can help developers analyze why their application feels slow, instead of simply focusing on network-based bottlenecks.</p>
<p>Speed Tracer makes use of specific, unique APIs built into Webkit for this very purpose, which gives it a unique advantage compared to other profiling tools. Instead of simply guessing and checking, developers will now have full visibility into what&#8217;s causing their applications to appear slow:<br />
<blockquote>Using Speed Tracer you are able to get a better picture of where time is being spent in your application. This includes problems caused by JavaScript parsing and execution, layout, CSS style recalculation and selector matching, DOM event handling, network resource loading, timer fires, XMLHttpRequest callbacks, painting, and more.</p></blockquote>
<p>Very cool stuff. What&#8217;s more, it&#8217;s free, open source, and <a title="Speed Tracer getting started" href="http://code.google.com/webtoolkit/speedtracer/get-started.html">available for users of Google Chrome right now</a>. Check out their tutorial below:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/Sn_3rJaexKc&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en_US&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/Sn_3rJaexKc&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en_US&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a title="Google Speed Tracer" href="http://code.google.com/webtoolkit/speedtracer/">Google Speed Tracer</a></p>
<img src="http://www.htmlist.com/wordpress/?ak_action=api_record_view&id=493&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.htmlist.com/tech-news/google-speed-tracer-makes-ajax-optimization-easier/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Starting Simple: Launching with the Minimum Viable Product</title>
		<link>http://www.htmlist.com/cool-stuff/starting-simple-launching-with-the-minimum-viable-product/</link>
		<comments>http://www.htmlist.com/cool-stuff/starting-simple-launching-with-the-minimum-viable-product/#comments</comments>
		<pubDate>Thu, 26 Mar 2009 01:49:59 +0000</pubDate>
		<dc:creator>Chris Cardinal</dc:creator>
				<category><![CDATA[Cool Stuff]]></category>
		<category><![CDATA[Business]]></category>
		<category><![CDATA[Entrepreneur]]></category>
		<category><![CDATA[features]]></category>
		<category><![CDATA[ideas]]></category>
		<category><![CDATA[launching]]></category>
		<category><![CDATA[minimum viable products]]></category>
		<category><![CDATA[startups]]></category>
		<category><![CDATA[Venture Hacks]]></category>

		<guid isPermaLink="false">http://www.htmlist.com/?p=478</guid>
		<description><![CDATA[Venture Hacks has a great interview with serial entrepreneur Eric Ries that discusses the value of launching a startup with the &#8220;minimum viable product&#8221;: basically, the absolute most barebones product you can launch with while still being able to appropriately gauge customer interest, to avoid the common pitfall of spending months developing an idea only [...]]]></description>
			<content:encoded><![CDATA[<p>Venture Hacks has a <a href="http://venturehacks.com/articles/minimum-viable-product">great interview</a> with serial entrepreneur <a href="http://startuplessonslearned.blogspot.com/2009/03/minimum-viable-product.html">Eric Ries</a> that discusses the value of launching a startup with the &#8220;minimum viable product&#8221;: basically, the absolute most barebones product you can launch with while still being able to appropriately gauge customer interest, to avoid the common pitfall of spending months developing an idea only to realize that no one cares.</p>
<p>In spite of the fact that parts of the interview sound like it was recorded at a high school basketball game, Eric provides some great insight, even suggesting at one point to &#8220;launch&#8221; an idea with just marketing materials and an ad campaign, and no backing product. Based on the clickthrough/conversion rate when customers move to subscribe or purchase your product or service, you can reasonably gauge how the idea might do. </p>
<p>There may be an argument to be made about potentially losing those individuals as sales, but you can ask their email, make up an excuse, or explain that things aren&#8217;t ready yet and thus limit your costs to just a simple ad campaign and marketing/informational site. If you&#8217;re presenting the idea as you will once it&#8217;s built, and no one is clicking through, it&#8217;s a good indication that you&#8217;re going to want to tweak the idea or that you&#8217;re headed down the wrong path.</p>
<p>The interview is split into two parts, and I&#8217;ve embedded the first part below.</p>
<p><img style="visibility: hidden; width: 0px; height: 0px;" src="http://counters.gigya.com/wildfire/IMP/CXNID=2000002.0NXC/bT*xJmx*PTEyMzgwMzEyOTk3ODMmcHQ9MTIzODAzMTQ2Njc*NyZwPTEwMTkxJmQ9Jmc9MiZ*PSZvPWE4ODZiNDdiODZhMzRlM2I4Njg4MjgxM2U5YmJlMTU2.gif" border="0" height="0" width="0">
<div style="width: 425px; text-align: left;" id="__ss_1178241"><a style="margin: 12px 0pt 3px; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; display: block; text-decoration: underline;" href="http://www.slideshare.net/venturehacks/what-is-the-minimum-viable-product?type=presentation" title="What Is The Minimum Viable Product?">What Is The Minimum Viable Product?</a><object style="margin: 0px;" height="355" width="425"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=whatistheminimumviableproduct-090321125715-phpapp02&amp;stripped_title=what-is-the-minimum-viable-product"><param name="allowFullScreen" value="true"><param name="allowScriptAccess" value="always"><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=whatistheminimumviableproduct-090321125715-phpapp02&amp;stripped_title=what-is-the-minimum-viable-product" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="355" width="425"></embed></object>
<div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;">View more <a style="text-decoration: underline;" href="http://www.slideshare.net/">presentations</a> from <a style="text-decoration: underline;" href="http://www.slideshare.net/venturehacks">Venture hacks </a>.</div>
</div>
<p><a href="http://venturehacks.com/articles/minimum-viable-product">What is the minimum viable product?</a> (Part 1) | Venture Hacks<br />
<a href="http://venturehacks.com/articles/opening-board-meetings">Opening Board Meetings</a> (Part 2)</p>
<div style="margin-top: 10px; height: 15px;" class="zemanta-pixie"><a class="zemanta-pixie-a" href="http://reblog.zemanta.com/zemified/e19bcf47-03e8-4ce4-be81-872923e6ccb4/" title="Zemified by Zemanta"><img style="border: medium none ; float: right;" class="zemanta-pixie-img" src="http://img.zemanta.com/reblog_e.png?x-id=e19bcf47-03e8-4ce4-be81-872923e6ccb4" alt="Reblog this post [with Zemanta]"></a><span class="zem-script more-related"><script type="text/javascript" src="http://static.zemanta.com/readside/loader.js" defer="defer"></script></span></div>
<img src="http://www.htmlist.com/wordpress/?ak_action=api_record_view&id=478&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.htmlist.com/cool-stuff/starting-simple-launching-with-the-minimum-viable-product/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Better Memory Management Tools for Web Apps Coming Soon</title>
		<link>http://www.htmlist.com/cool-stuff/better-memory-management-tools-for-web-apps-coming-soon/</link>
		<comments>http://www.htmlist.com/cool-stuff/better-memory-management-tools-for-web-apps-coming-soon/#comments</comments>
		<pubDate>Tue, 24 Mar 2009 22:25:47 +0000</pubDate>
		<dc:creator>Chris Cardinal</dc:creator>
				<category><![CDATA[Cool Stuff]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[Google Chrome]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[memory usage]]></category>
		<category><![CDATA[mozilla]]></category>
		<category><![CDATA[Mozilla Foundation]]></category>

		<guid isPermaLink="false">http://www.htmlist.com/?p=469</guid>
		<description><![CDATA[Developing a &#8220;web 2.0&#8243; application brings with it a host of new challenges previously unfelt or easily ignored with older, single-page-load-per-action apps. The browser has evolved from a simple page renderer to an application platform that busily executes JavaScript and receives, parses, and displays loads of new data without ever leaving the page. Developers are [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-470" title="mem_usage" src="http://www.htmlist.com/wordpress/wp-content/uploads/2009/03/mem_usage.gif" alt="mem_usage" width="456" height="156" /></p>
<p>Developing a &#8220;web 2.0&#8243; application brings with it a host of new challenges previously unfelt or easily ignored with older, single-page-load-per-action apps. The browser has evolved from a simple page renderer to an application platform that busily executes JavaScript and receives, parses, and displays loads of new data without ever leaving the page. Developers are now struck with the challenge of ensuring their applications manage memory properly and efficiently—your JavaScript can leak memory, killing the user experience on your site, but also impacting the user&#8217;s complete experience with their system across the board.</p>
<p>To date, it&#8217;s been a bit of a struggle to manage memory, since developers are essentially forced to rely on their operating system&#8217;s memory managers to even <em>monitor</em> the memory usage of their browser. Even then, testing can be frustrating, as Firefox, for instance, stores all tabs in the same process. Google Chrome is multi-threaded; each tab is its own process. Chrome also features its own built in task manager, so you can identify which page is using exactly how much memory, CPU, and bandwidth. Even at its most detailed, the stats available only show aggregate memory and virtual memory usage—these abstract figures make troubleshooting individual pieces of your code difficult to say the least.</p>
<p>The folks over at Mozilla&#8217;s Developer Tools Lab are looking to change that by building a memory analysis tool that helps devs understand exactly how their application is using memory, and the behavior of the cycle (garbage) collector:</p>
<blockquote><p>We plan on the initial implementation of this tool to be simple. For memory usage, we want to introduce the ability to visualize the current set of non-collectible JavaScript objects at any point in time (i.e., the <a href="http://en.wikipedia.org/wiki/Heap_%28data_structure%29">heap</a>) and give you the ability to understand why those objects aren’t collectible (i.e., trace any object to a GC root). For the cycle collector, we want to give you a way to understand when a collection starts and when it finishes and thus understand how long it took.</p></blockquote>
<p>Ben Galbraith and the team are soliciting help and feedback, so if this is an issue you&#8217;ve had to deal with in the past, make sure you comment.</p>
<p><a href="http://benzilla.galbraiths.org/2009/03/23/memory-tools-and-you/">A New Memory Tool for the Web</a> | Ben Galbraith&#8217;s Blog via <a href="http://ajaxian.com/">Ajaxian</a></p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Zemified by Zemanta" href="http://reblog.zemanta.com/zemified/fe6ef69e-aa85-4fab-8fbf-98997c8a0049/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=fe6ef69e-aa85-4fab-8fbf-98997c8a0049" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
<img src="http://www.htmlist.com/wordpress/?ak_action=api_record_view&id=469&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.htmlist.com/cool-stuff/better-memory-management-tools-for-web-apps-coming-soon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

