<?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/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule">

<channel>
	<title>Non-Profit Tech Blog &#187; Computing</title>
	<atom:link href="http://www.nonprofittechblog.org/category/computing/feed" rel="self" type="application/rss+xml" />
	<link>http://www.nonprofittechblog.org</link>
	<description>Confessions of a Non-Profit Executive Director</description>
	<lastBuildDate>Tue, 20 Dec 2011 19:31:36 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
<creativeCommons:license>http://creativecommons.org/licenses/by-nc-nd/3.0/us/</creativeCommons:license>		<item>
		<title>Interview with Joe Green and Chris Chan of Project Agape</title>
		<link>http://www.nonprofittechblog.org/interview-with-joe-green-and-chris-chan-of-project-agape?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=interview-with-joe-green-and-chris-chan-of-project-agape</link>
		<comments>http://www.nonprofittechblog.org/interview-with-joe-green-and-chris-chan-of-project-agape#comments</comments>
		<pubDate>Thu, 21 Jun 2007 00:54:26 +0000</pubDate>
		<dc:creator>Allan Benamer</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[Enterprise]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Project Agape]]></category>
		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.nonprofittechblog.org/interview-with-joe-green-and-chris-chan-of-project-agape</guid>
		<description><![CDATA[We all know that Project Agape (uh-GAH-pay) has left the nptech world breathless with its amazing viral growth on Facebook. As a result of that growth and the constant hits on my earlier Project Agape post, I decided to do a quick interview with Project Agape. Micah Sifry has already done an excellent interview on [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.nonprofittechblog.org/wp-content/uploads/2007/06/project-agape.gif' alt='Project Agape' /><img src='http://www.nonprofittechblog.org/wp-content/uploads/2007/06/facebooklogo.jpg' alt='facebooklogo.jpg' /></p>
<p>We all know that <a href="http://www.project-agape.com/" class="broken_link">Project Agape</a> (uh-GAH-pay) has left the nptech world breathless with its amazing viral growth on Facebook. As a result of that growth and the constant hits on my earlier Project Agape post, I decided to do a quick interview with Project Agape. <a href="http://www.techpresident.com/node/385" class="broken_link">Micah Sifry has already done an excellent interview on the political and social implications of Project Agape</a> but I had yet to see any technical information on how the Causes app on Facebook was built and maintained so I decided to call in for an interview. In short order, Project Agape turned around my request and hence today I have the chance to present to you quite a bit of information on how Project Agape was built and how it somehow manages to service all the users in the Causes app.<br />
<span id="more-3208"></span><br />
At the beginning of the interview, Joe Green, co-founder of Project Agape, ran down some vital statistics. As we were speaking, he estimated that the Causes app might acquire it&#8217;s one millionth user. It was at 998,000 and counting at the beginning of the interview and the interview took an hour. You do the math. Their largest Cause was the breast cancer Cause at 345,508. He also remarked that Causes were spreading faster than the groups themselves despite the fact that the groups had more extensive tools for faster viral growth such as mass invitations.</p>
<p>I started asking more technical questions and Chris Chan, one of their engineers, was brought in to answer them. Here are the harder numbers and specs for you web developers out there:</p>
<ul>
<li>mySQL 5.0</li>
<li>Ruby on Rails</li>
<li>14 application servers, 2 database servers and 5 boxes in reserve</li>
<li>3 Image Servers (2 Squid, 1 image source)</li>
<li>Apache 2 on Image Source</li>
<li>WebApp servers have 2GB of ram</li>
<li>1 server for serving static content</li>
<li>26 Mongrel services per box</li>
<li><del datetime="2007-06-26T21:42:32+00:00">4 GB of RAM per box</del></li>
<li>50 &#8211; 60 MB of RAM per Mongrel service for a total use of around 1.5 GB of memory set aside for Mongrel</li>
</ul>
<p>Additional:</p>
<ul>
<li>A pair of F5 Loadbalancers</li>
<li>All systems running FreeBSD 6.2</li>
<li>memcached</li>
<li><a href="http://wiki.codemongers.com/Nginx">nginx</a> (not <a href="http://www.apsis.ch/pound">pound</a>)</li>
</ul>
<p>Specific Rails technologies used: <del datetime="2007-06-26T21:39:01+00:00"><a href="http://wiki.codemongers.com/Nginx">nginx</a> (not <a href="http://www.apsis.ch/pound">pound</a>)</del>, <a href="http://swiftiply.swiftcore.org/documentation.html">Evented Mongrel</a>, <a href="http://www.squid-cache.org/">squid</a></p>
<h3>Facebook and Rails gotchas</h3>
<p>The Project Agape team was remarkably open when it came to discussing issues they ran into while building and maintaining their app. What follows is a list of things that Chris Chan ran into.</p>
<p>When Facebook ran requests via the API back to Project Agape&#8217;s servers, they came from only one or two IP addresses which caused the load to only be distributed to only one or two servers in the Facebook configuration. Oops. They had to adjust their load balancing techniques accordingly. </p>
<p>The Active Record bugaboo rears its head again. Rails uses an ORM (object-relational mapping) to closely tie database tables with objects in code. For instance, your Employees table in your mySQL database is referred to in code by using the word Employee. Unfortunately, having this layer of abstraction sometimes means that you can end up with suboptimal SQL code. That means relying less on Active Record&#8217;s beautiful way of denoting joined tables via a dot notation (&#8220;Employee.phone_number&#8221;) and just writing the SQL code yourself. </p>
<p>The &#8220;has_many&#8221; association in Ruby works quite well when in test but doesn&#8217;t work well when the &#8220;has_many&#8221; association you&#8217;re using now refers to an object containing a massive number of records. If a Cause &#8220;has_many&#8221; users, imagine the size of the object you&#8217;ll be building on the server just to service that request. Chris Chan mentioned an object several hundreds of megabytes in size. Ouch.</p>
<p>Also, Facebook&#8217;s profiles use a push model meaning that the code showing, for example, the number of people in a Cause can&#8217;t be easily updated because the push would have to occur for every profile of every member in Causes. Instead, Causes profiles link to an external URL hosted on Project Agape&#8217;s servers that serve a cached number.</p>
<p>All of the above should impress upon those of you looking to use Facebook in the nonprofit sector what <a href="http://blog.pmarca.com/2007/06/analyzing_the_f.html" class="broken_link">Marc Andreesen&#8217;s said about the Facebook platform</a>:</p>
<blockquote><p>The implication is, in my view, quite clear &#8212; the Facebook Platform is primarily for use by either big companies, or venture-backed startups with the funding and capability to handle the slightly insane scale requirements. Individual developers are going to have a very hard time taking advantage of it in useful ways.
</p></blockquote>
<p>Project Agape has spent several hundreds of thousands of dollars handling the viral growth of its membership (37,000 users per day since Facebook Platform launch). They&#8217;ve got five developers. Clearly, a Facebook app is not trivial and not recommended for most nonprofits to try to approach.</p>
<p><strong>UPDATE (6/21/2007):</strong> More details about the fundraising efforts about Facebook. They&#8217;re now up to $100,000 raised over a population of one million users. Project Agape itself is launching its new website on July 1st, 2007. They&#8217;re changing their name as well. I have a hunch that their new name will be Philotic as that name appears in their off-Facebook website pages but who knows?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nonprofittechblog.org/interview-with-joe-green-and-chris-chan-of-project-agape/feed</wfw:commentRss>
		<slash:comments>29</slash:comments>
		</item>
		<item>
		<title>SSD: It&#8217;s the new NEW! (or the only thing we have to fear is a fan itself)</title>
		<link>http://www.nonprofittechblog.org/ssd-its-the-new-new-or-the-only-thing-we-have-to-fear-is-a-fan-itself?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ssd-its-the-new-new-or-the-only-thing-we-have-to-fear-is-a-fan-itself</link>
		<comments>http://www.nonprofittechblog.org/ssd-its-the-new-new-or-the-only-thing-we-have-to-fear-is-a-fan-itself#comments</comments>
		<pubDate>Fri, 12 Jan 2007 04:38:58 +0000</pubDate>
		<dc:creator>Allan Benamer</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[nptech]]></category>

		<guid isPermaLink="false">http://www.nonprofittechblog.org/ssd-its-the-new-new-or-the-only-thing-we-have-to-fear-is-a-fan-itself</guid>
		<description><![CDATA[OK, folks, SSD. You know you want one. What is it? Solid-state drives. Drives that are made up of flash memory. As I tell people still trying to figure this out &#8212; it&#8217;s a souped-up memory stick as your hard drive. Why bother? No moving parts = longer working life (up to 10 years), lowered [...]]]></description>
			<content:encoded><![CDATA[<p>OK, folks, SSD. You know you want one. What is it? Solid-state drives. Drives that are made up of flash memory. As I tell people still trying to figure this out &#8212; it&#8217;s a souped-up memory stick as your hard drive. Why bother? No moving parts = longer working life (up to 10 years), lowered power consumption. SSD also means faster access times (100 TIMES faster) and less susceptibilty to physical shock. What&#8217;s the downside? Well, it used to be cost but we&#8217;re seeing 32 GB going for $600. Yes, I know that seems quite expensive but I think this is a HUGE deal for those who need more ruggedized systems and those who need much dependable systems. One of those conditions pretty much means every nonprofit IT director out there.<br />
<span id="more-182"></span><br />
Those of you equipping people in the field with laptops will be glad to know that SSD drives are supposed to lengthen battery life. However, I feel that these SSDs will be useful for this particular mission: lengthening the life of important application servers that can&#8217;t have downtime and whose hard drives are past three years old and which you can&#8217;t afford to mirror the server hardware. There&#8217;s a particular class of machines in my data center that need this. Single application servers that were purchased as part of a turnkey system with little or no hardware redundancy. Yes, I have multiple single points of failure and yes, it keeps me up at night.</p>
<p>The problem is this: do I have the time to keep imaging my most important app servers over and over again? Probably not, and the cost of something like Symantec&#8217;s Live State Recovery is prohibitive. Why not swap the hard drive with a relatively inexpensive piece of hardware like an SSD and then back it up with an Ghost image on a spare hard drive every once in a while? Let&#8217;s do the analysis:</p>
<p>A hard drive&#8217;s real-life lifespan is around 3-4 years on average. If you have drives this old, you&#8217;re definitely skating on thin ice. You have options at this point. You can image the drive now to another new hard drive and let that sit around for the day your drive finally dies. However, you&#8217;ll have downtime and your backed-up data will be old. This may or may not be an issue.</p>
<p>Installing an SSD now will keep you going for up to a decade. That&#8217;s so long that your turnkey application may be made redundant by then. Also, you know that the hardware is simply more reliable than a hard drive just by virtue of the way it&#8217;s made. Sure, go ahead and keep that spare drive around just in case and do your normal backups (if possible, I&#8217;ve noticed my turnkey servers tend not to play well with others). The only thing we have to fear are the remaining moving parts (the CPU fan or power supply fan). However, those things are trivial compared to a drive going down. I&#8217;ll take the loss of a mobo over a hard drive any time.</p>
<p><a href="http://www.sandisk.com/Oem/Default.aspx?CatID=1478">Sandisk</a>, <a href="http://www.samsung.com/PressCenter/PressRelease/PressRelease.asp?seq=20070103_0000309157#">Samsung</a>, and <a href="http://www.digitimes.com/news/a20070109VL203.html">Ritek</a> have made some press releases regarding their SSDs and we should start seeing them this year. As soon as they drop to less than $500 for a 32 GB device, I&#8217;m in for one at least.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nonprofittechblog.org/ssd-its-the-new-new-or-the-only-thing-we-have-to-fear-is-a-fan-itself/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Three office technologies better than Web 2.0</title>
		<link>http://www.nonprofittechblog.org/three-office-technologies-better-than-web-20?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=three-office-technologies-better-than-web-20</link>
		<comments>http://www.nonprofittechblog.org/three-office-technologies-better-than-web-20#comments</comments>
		<pubDate>Mon, 11 Dec 2006 03:04:19 +0000</pubDate>
		<dc:creator>Allan Benamer</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[Enterprise]]></category>
		<category><![CDATA[Nonprofit 2.0]]></category>
		<category><![CDATA[nptech]]></category>
		<category><![CDATA[Strategy]]></category>
		<category><![CDATA[Telephony]]></category>

		<guid isPermaLink="false">http://www.nonprofittechblog.org/three-office-technologies-better-than-web-20</guid>
		<description><![CDATA[I&#8217;d like to expand further on my earliest post about Nonprofit 2.0. Specifically, I want to talk about the things that Org 2.0 proponents don&#8217;t seem to consider when they get excited about the latest social media experiment. I feel that there is a serious disconnect between Org 2.0 proponents and people like me who [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://static.flickr.com/23/32947717_79337312bc_m.jpg" alt="Sooooo SEXY!" class=left />I&#8217;d like to expand further on my <a href="http://www.nonprofittechblog.org/nonprofit-20">earliest post about Nonprofit 2.0</a>. Specifically, I want to talk about the things that Org 2.0 proponents don&#8217;t seem to consider when they get excited about the latest social media experiment. I feel that there is a serious disconnect between Org 2.0 proponents and people like me who are actually trying to do the hard work of instilling IT and associated IT practices into our employees&#8217; daily work routines.<br />
<span id="more-151"></span><br />
Many nonprofits are stuck in what we techie types call a non-scalable solution. That is, social services are not usually amenable to a  solution that allows for the use of a technology that allows us to multiple the efforts of our employees. An example is the social worker&#8217;s case management load. Due to the face to face need for case management and the particular privacy issues surrounding it, you cannot replace social workers with &#8220;traditional&#8221; means of Internet-based technologies. You can&#8217;t IM, IRC, FTP, HTTP, Google, XML or SNS your way out of case management. Full stop. It&#8217;s not possible. You can however, take a look at the business processes surrounding case management and work accordingly. Many case management workflows are actually very similar to legal case management work flows. Documents needs to be kept, retained and indexed accordingly. This means that you&#8217;ll find yourself adopting for-profit technologies to nonprofit needs. Again, this means taking advantage of new developments in office technology.</p>
<p>Here&#8217;s are three office technologies that I guarantee will have more impact on your nonprofit than say, Second Life (which I believe is a boondoggle and a half) or Myspace (marginally interesting but Myspace doesn&#8217;t support an open API).<br />
<strong><br />
Copiers. </strong>They&#8217;ve advanced so far they&#8217;re not even copiers anymore. They&#8217;re MFPs (multifunction printers).  Basically, all MFPs can print, scan, fax, e-mail, FTP or use SMB to send digital documents into your organization&#8217;s document store.  These MFPs are not your father&#8217;s MFP.</p>
<p>As always, every MFP manufacturer out there has a different take on how to do things. Kyocera sells a fascinating turnkey solution called <a href="http://www.kyosolutions.com/KYOsolutionspub/jsp/Kyocera/itag/itcomponents.jsp">iTag </a>which combines a workflow process designer, Sharepoint, and a Dell Server with the ability to dynamically modify the control panel of a printer in order to create custom workflows for your documents. Sharp is selling their printers with something called <a href="http://www.sharpusa.com/products/business/copiers/OSAProduct/0,2758,9-1,00.html">OSA</a> which is tada! an open API for their printers. Canon has been selling the <a href="http://www.developersupport.canon.com/meap.htm" class="broken_link">MEAP</a> which gives developers the ability to write Java code that actually sits on their printers and can modify the printer&#8217;s control panel. All of these changes in MFP technology can only mean one thing &#8212; an easier interface for document retrieval and storage. You can literally pull case management documents straight off the printer without requiring a PC. This means that volunteers can be easily trained to implement document-based workflows and that employees won&#8217;t need to wrestle with a document management system just to do work.</p>
<p><strong>Windows as a service.</strong> mygenii.org is now selling Windows dialtone for nonprofit organizations. What does it mean? It means you can use Remote Desktop on a Windows XP machine or thin client to connect to a session hosted on mygenii&#8217;s machines from anywhere in the world. In other words, we push the hassles and expense of maintaining dozens of workstations over to mygenii and as our desktops slowly go out of service we will be replacing them with thin clients. Essentially, this is a back to the 1970s model of resource allocation. Everyone at your organization will give up their local desktops in order to have a virtual desktop hosted elsewhere. This works extremely well for case workers should they want to connect to their work files at home. This stuff is so new that not many for-profits are doing it. Once you work the numbers though, you&#8217;ll see that this solution is a no-brainer.</p>
<p><strong>Interactive voice response systems (IVR).</strong> One of the few things that do scale well in a nonprofit environment is telephony. I see seasonal variances with telephone usage due to the cold weather we experience every winter in New York that in turn causes our clients to seek shelter (and call my organization). This means we have to resort to automated means of answering the telephones. Using an IVRis the only way to scale a solution that can answer up to hundreds of calls an hour with the kind of information that our clients need.</p>
<p>Yes, I know, copiers aren&#8217;t sexy. Nobody has web pages devoted to Copiers 2.0 and nonprofit technology like <a href="http://www.nfp2.co.uk/">social networking</a> does. There will be no Second Life version of a bunch of people picking up the telephone and answering phone calls from distraught and anxious clients. There&#8217;s just going to be nonprofit workers trying to be resourceful with what they&#8217;ve got. It&#8217;s in our interest to get out of their way and provide them with the tools THEY need, not what some marketing consultant wants.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nonprofittechblog.org/three-office-technologies-better-than-web-20/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Intentions&#8230;</title>
		<link>http://www.nonprofittechblog.org/intentions?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=intentions</link>
		<comments>http://www.nonprofittechblog.org/intentions#comments</comments>
		<pubDate>Sun, 05 Mar 2006 23:52:48 +0000</pubDate>
		<dc:creator>Allan Benamer</dc:creator>
				<category><![CDATA[Computing]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Strategy]]></category>
		<category><![CDATA[Telephony]]></category>

		<guid isPermaLink="false">http://www.nonprofittechblog.org/wordpress/?p=3</guid>
		<description><![CDATA[This blog is an attempt to chronicle the difficulties of a non-profit IT director. Besides, the general issues of lack of staff and lack of money, IT directors in the non-profit sphere have to be generalists and specialists at the same time. I hope to present topics of particular concern to American non-profit IT directors [...]]]></description>
			<content:encoded><![CDATA[<p>This blog is an attempt to chronicle the difficulties of a non-profit IT director. Besides, the general issues of lack of staff and lack of money, IT directors in the non-profit sphere have to be generalists and specialists at the same time. I hope to present topics of particular concern to American non-profit IT directors so that I can help flatten the learning curve for others in the industry and in the hopes that others will add their input into my knowledge base so that I too can improve my own skills.</p>
<p>Many of the things that will be presented on this blog are not technical but are still essential to being a good IT director. Some of these things will include handling consultants, handling vendors and the myriad relationships you&#8217;ll form with them. Others topics will include the latest greatest new IT items that may have some relevance to a non-profit IT director. Check this space frequently as I hope to eventually to use this blog as a working knowledgebase of things relevant to non-profit IT workers.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nonprofittechblog.org/intentions/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

