<?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:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Serial to Parallel to Distributed</title>
	<atom:link href="http://marcja.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://marcja.wordpress.com</link>
	<description>Bringing high-performance computing to the enterprise, to the masses, and to the Microsoft .NET platform.</description>
	<lastBuildDate>Fri, 06 Mar 2009 15:55:30 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='marcja.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/3c2f6b6481cbf0a8c055486aaa3bf7d2?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Serial to Parallel to Distributed</title>
		<link>http://marcja.wordpress.com</link>
	</image>
			<item>
		<title>MIX09: Las Vegas, NV, 18 &#8211; 20 Mar 2009</title>
		<link>http://marcja.wordpress.com/2009/03/06/mix09-las-vegas-nv-18-20-mar-2009/</link>
		<comments>http://marcja.wordpress.com/2009/03/06/mix09-las-vegas-nv-18-20-mar-2009/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 15:55:30 +0000</pubDate>
		<dc:creator>Marc Jacobs</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://marcja.wordpress.com/2009/03/06/mix09-las-vegas-nv-18-20-mar-2009/</guid>
		<description><![CDATA[I’ve just confirmed that I will be in Las Vegas for MIX09 this year. If any of you plan to be there as well, drop me a note.
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=58&subd=marcja&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I’ve just confirmed that I will be in Las Vegas for <a href="http://2009.visitmix.com/">MIX09</a> this year. If any of you plan to be there as well, drop me a note.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/marcja.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/marcja.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/marcja.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/marcja.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/marcja.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/marcja.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/marcja.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/marcja.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/marcja.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/marcja.wordpress.com/58/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=58&subd=marcja&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://marcja.wordpress.com/2009/03/06/mix09-las-vegas-nv-18-20-mar-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b7005a1addee75ef4f237109d87b9e5d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">marcja</media:title>
		</media:content>
	</item>
		<item>
		<title>At PDC2008</title>
		<link>http://marcja.wordpress.com/2008/10/26/at-pdc2008/</link>
		<comments>http://marcja.wordpress.com/2008/10/26/at-pdc2008/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 16:11:02 +0000</pubDate>
		<dc:creator>Marc Jacobs</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://marcja.wordpress.com/?p=56</guid>
		<description><![CDATA[To everyone who is attending the Microsoft Professional Developers Conference this year in LA, I&#8217;ll be there from tonight to Wednesday mid-day.  I&#8217;m having to fly back to NYC on Wednesday as Lab49 has been invited to participate in the Microsoft PhizzPop Design Challenge in New York which starts on Thursday.
If you&#8217;re around, feel free [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=56&subd=marcja&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>To everyone who is attending the <a href="http://microsoftpdc.com/">Microsoft Professional Developers Conference</a> this year in LA, I&#8217;ll be there from tonight to Wednesday mid-day.  I&#8217;m having to fly back to NYC on Wednesday as <a href="http://www.lab49.com">Lab49</a> has been invited to participate in the <a href="http://www.phizzpop.com">Microsoft PhizzPop Design Challenge</a> in New York which starts on Thursday.</p>
<p>If you&#8217;re around, feel free to say hi. I&#8217;ll be hawking some of the work we&#8217;ve done for Microsoft specifically for this year&#8217;s PDC, including a really cool WPF-based parallel portfolio tracking demo that uses F#, Parallel Extensions, and Microsoft HPC Server 2008 Cluster SOA and two Microsoft official whitepapers for the Microsoft Parallel Computing Initiative (including <em>Taking Parallelism Mainstream, </em>a  whitepaper you&#8217;ll find on <a href="http://microsoftpdc.com/Registration/TheGoods.aspx">your PDC hard-drive</a>).</p>
<p>For PDC, I&#8217;ll be keeping an eye on <a href="http://twitter.com/marcja">Twitter</a>. See you there!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/marcja.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/marcja.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/marcja.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/marcja.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/marcja.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/marcja.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/marcja.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/marcja.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/marcja.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/marcja.wordpress.com/56/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=56&subd=marcja&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://marcja.wordpress.com/2008/10/26/at-pdc2008/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b7005a1addee75ef4f237109d87b9e5d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">marcja</media:title>
		</media:content>
	</item>
		<item>
		<title>Podcast: Lab49, ScaleOut, and Microsoft Talk About Distributed Cache</title>
		<link>http://marcja.wordpress.com/2008/04/09/podcast-lab49-scaleout-and-microsoft-talk-about-distributed-cache/</link>
		<comments>http://marcja.wordpress.com/2008/04/09/podcast-lab49-scaleout-and-microsoft-talk-about-distributed-cache/#comments</comments>
		<pubDate>Wed, 09 Apr 2008 14:38:41 +0000</pubDate>
		<dc:creator>Marc Jacobs</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Distributed]]></category>
		<category><![CDATA[Finance]]></category>
		<category><![CDATA[HPC]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://marcja.wordpress.com/?p=52</guid>
		<description><![CDATA[About three weeks ago, I had the opportunity to sit down with Bill Bain of ScaleOut Software and the two Joes, Joe Cleaver and Joe Rubino, from Microsoft&#8217;s Financial Services Industry Evangelism team after I gave my presentation on distributed caches at Microsoft&#8217;s 6th Annual Financial Services Developer Conference. The two Joes recorded a podcast of our [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=52&subd=marcja&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>About three weeks ago, I had the opportunity to sit down with Bill Bain of <a href="http://www.scaleoutsoftware.com/">ScaleOut Software</a> and the two Joes, Joe Cleaver and Joe Rubino, from Microsoft&#8217;s Financial Services Industry Evangelism team after I gave <a href="http://marcja.wordpress.com/2008/03/19/post-game-microsoft-financial-services-developer-conference/">my presentation on distributed caches</a> at <a href="http://www.financialdevelopers.com/">Microsoft&#8217;s 6th Annual Financial Services Developer Conference</a>. The two Joes recorded <a href="http://blogs.msdn.com/jrubino/archive/2008/04/07/industry-chat-with-bill-bain-and-marc-jacobs.aspx">a podcast of our conversation</a>.</p>
<p>Bill, Joe, and Joe, thanks for the opportunity to talk with you guys.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/marcja.wordpress.com/52/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/marcja.wordpress.com/52/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/marcja.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/marcja.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/marcja.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/marcja.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/marcja.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/marcja.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/marcja.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/marcja.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/marcja.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/marcja.wordpress.com/52/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=52&subd=marcja&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://marcja.wordpress.com/2008/04/09/podcast-lab49-scaleout-and-microsoft-talk-about-distributed-cache/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b7005a1addee75ef4f237109d87b9e5d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">marcja</media:title>
		</media:content>
	</item>
		<item>
		<title>Dataflow via Data Binding, Part 1: Introduction</title>
		<link>http://marcja.wordpress.com/2008/03/24/dataflow-via-data-binding-part-1-introduction/</link>
		<comments>http://marcja.wordpress.com/2008/03/24/dataflow-via-data-binding-part-1-introduction/#comments</comments>
		<pubDate>Mon, 24 Mar 2008 18:15:15 +0000</pubDate>
		<dc:creator>Marc Jacobs</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Finance]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://marcja.wordpress.com/?p=51</guid>
		<description><![CDATA[Dataflow is about creating a software architecture that models a problem on the functional relationship between variables rather than on the sequence of steps required to update those variables. It&#8217;s about shifting control of evaluation away from code you write toward code written by someone else. It&#8217;s about changing the timing of recalculation from recalculate [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=51&subd=marcja&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><a href="http://en.wikipedia.org/wiki/Dataflow">Dataflow</a> is about creating a software architecture that models a problem on the functional relationship between variables rather than on the sequence of steps required to update those variables. It&#8217;s about shifting control of evaluation away from code you write toward code written by someone else. It&#8217;s about changing the timing of recalculation from <em>recalculate now </em>to <em>recalculate when something has changed</em>. Sure, it&#8217;s a distinction that may have more to do with emphasis and point of view than with paradigm, but it can be a liberating distinction for certain problems in financial modeling.</p>
<p>If you work in finance, chances are you may already be expert in today&#8217;s preeminent dataflow modeling language: <a href="http://office.microsoft.com/excel">Microsoft Excel</a>. Excel is the undisputed workhorse of financial applications, taught in every business school, run on every desk, wired into the infrastructure of nearly every bank, fund, or exchange in existence. The reason for Excel&#8217;s singularity in the black hole of finance is its ability to emancipate modeling from code (and thus developers) and empower analysts and business types alike to create models as interactive documents. Make no mistake — writing workbooks is still very much software development. But Excel&#8217;s emphasis on data rather than code, relationships rather than instructions, is something that fits with the work this industry does and the people that do it.</p>
<p>Briefly, when you model in Excel, you specify a cell&#8217;s output by filling it with either a constant value or a function. Functions are written in a lightweight language that allows function arguments to be either constant values or references to another cell&#8217;s output. In the typical workbook, cells may reference cells that in turn reference other cells, and so on, resulting in an arbitrarily sophisticated model that can span multiple worksheets and workbooks. The point though is that, rather than specifying your model as a sequence of steps that get executed when you say <em>go</em>, here you describe your model&#8217;s core data relationships to Excel, and Excel figures out how and when it should be executed.</p>
<h5>Example: An Equities Market Simulation</h5>
<p>Let&#8217;s say that we are writing a simulation for an equities (stock) market. Such a simulation could be used for testing a trading strategy or studying economic scenarios. The market is comprised of many equities, and each equity has many properties, some that change slowly over time (such as ticker symbol or inception date), and some that change frequently (such as last price or volume). Some properties may be functions of other properties of the same equity (such as high, low, or closing price), while others may be functions of properties on other equities (such as with haircuts, derivatives, or baskets).</p>
<p>As a starting point, we introduce a simulation clock. Each time the clock advances, the price of all equities gets updated. To update prices, we use a <a href="http://en.wikipedia.org/wiki/Random_walk">random walk</a> driven by initial conditions (such as initial price <em>S</em><sub>0</sub>, drift <em>r</em>, and volatility σ), a <a href="http://en.wikipedia.org/wiki/Normal_distribution">normally distributed random variable</a> <strong>z</strong>, and a <a href="http://en.wikipedia.org/wiki/Recurrence_relation">recurrence equation</a> over <em>n</em> intervals of <em>t</em> years: </p>
<p align="center"><img src='http://s2.wordpress.com/latex.php?latex=S_%7Bn%7D+%3D+S_%7Bn-1%7D+%5Ccdot+%5Cexp%28r+t+-+0.5+%5Csigma%5E2+t+%2B+%5Cmathbf%7Bz%7D+%5Csigma+%5Csqrt%7Bt%7D+%29&#038;bg=444444&#038;fg=ffffff&#038;s=0' alt='S_{n} = S_{n-1} \cdot \exp(r t - 0.5 \sigma^2 t + \mathbf{z} \sigma \sqrt{t} )' title='S_{n} = S_{n-1} \cdot \exp(r t - 0.5 \sigma^2 t + \mathbf{z} \sigma \sqrt{t} )' class='latex' /></p>
<blockquote><p><em>Note: This equation provides a lognormal random walk [</em><a href="http://www.networthstrategies.com/Support/Files/Lognormal%20Random%20Walk%20-%20Part%20I%202-22-05.pdf"><em>1</em></a><em>,</em><a href="http://www.networthstrategies.com/Support/Files/Lognormal%20Random%20Walk%20-%20Part%20II%202-22-05.pdf"><em>2</em></a><em>], which means that instead of getting the next price by adding small random price changes to the previous price, we&#8217;re multiplying small random percentages against the previous price. This makes sense for things like prices since a) they can&#8217;t be negative, and b) the size of any price changes is proportional to the magnitude of the current price. In other words, penny stocks tend to move up and down by fractions of a penny while stock trading at much higher prices tend to move up and down in dollars.</em></p></blockquote>
<p>In Excel, you could model this market by plopping the value of the clock into a cell, setting up other cells to contain initial conditions, and then have a slew of other cells initialized with functions that reference the clock and initial conditions cells and that calculate a new price using the above equation for each virtual equity. And then hit F9.</p>
<p>But how would you write this in code? Would you just update the clock and then exhaustively recalculate all of the prices? If you had to incorporate equity derivatives or baskets, would your architecture break? How would you allow non-programming end-users to declaratively design their own simulation markets and the instruments within?</p>
<p>Recently, one of our financial services clients at <a href="http://www.lab49.com">Lab49</a> has been trying to solve a similar problem in .NET, and I had been suggesting to them that the problem is analogous to how Microsoft <a href="http://msdn2.microsoft.com/en-us/netframework/aa663326.aspx">Windows Presentation Foundation</a> (WPF) handles the flow of data from controller to model to view. <a href="http://msdn2.microsoft.com/en-us/library/ms752914.aspx">Dependency properties</a>, which form the basis of data binding in WPF applications, implement a dataflow model similar to Excel, and what I had in mind at first was a solution inspired by WPF. But the more I discussed this analogy with the client, the more I realized that we didn&#8217;t just have to use WPF as inspiration; we could actually use WPF.</p>
<p>In this series, I&#8217;ll dive further into creating the equities market simulation and look at how to use WPF data binding to create a dataflow implementation. Note that there are several considerations to this approach, and, under the category of <em>just because you can doesn&#8217;t mean you should</em>, we&#8217;ll evaluate whether or not this method has legs.</p>
<p>[to be continued]</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/marcja.wordpress.com/51/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/marcja.wordpress.com/51/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/marcja.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/marcja.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/marcja.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/marcja.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/marcja.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/marcja.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/marcja.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/marcja.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/marcja.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/marcja.wordpress.com/51/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=51&subd=marcja&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://marcja.wordpress.com/2008/03/24/dataflow-via-data-binding-part-1-introduction/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b7005a1addee75ef4f237109d87b9e5d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">marcja</media:title>
		</media:content>
	</item>
		<item>
		<title>Gigabit, We Hardly Knew You</title>
		<link>http://marcja.wordpress.com/2008/03/20/gigabit-we-hardly-knew-you/</link>
		<comments>http://marcja.wordpress.com/2008/03/20/gigabit-we-hardly-knew-you/#comments</comments>
		<pubDate>Thu, 20 Mar 2008 18:10:07 +0000</pubDate>
		<dc:creator>Marc Jacobs</dc:creator>
				<category><![CDATA[HPC]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://marcja.wordpress.com/2008/03/20/gigabit-we-hardly-knew-you/</guid>
		<description><![CDATA[It seems just yesterday that 10Mbit 10BASE-T Ethernet networks were the norm, and the workstation wonks I worked with years ago at US Navy CINPACFLT in Pearl Harbor, Hawaii jockeyed to have high-speed ATM fiber run to their offices. Sure, this was the age when dual bonded ISDN lines represented the state of the art [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=48&subd=marcja&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>It seems just yesterday that 10Mbit 10BASE-T Ethernet networks were the norm, and the workstation wonks I worked with years ago at US Navy CINPACFLT in Pearl Harbor, Hawaii jockeyed to have high-speed ATM fiber run to their offices. Sure, this was the age when dual bonded ISDN lines represented the state of the art in home Internet connectivity, but who really needed that much bandwidth? What did we have to transfer? Email? Usenet posts? Gopher pages?</p>
<p>Then, slowly over the course of the next 5-10 years, network vendors upgraded their parts at negligible marginal cost, and 100Mbit began to pervade enterprise networks of all sizes, democratizing fast file transfers and streaming multimedia. 100Mbit seemed pretty fast. The <em>Next Big Thing</em>, Gigabit Ethernet, seemed a pipe so big it couldn&#8217;t be saturated and certainly not worth the exorbitant prices the hardware was going for at the time.</p>
<p>This week, I&#8217;ve been helping out one of our <a href="http://www.lab49.com">Lab49</a> teams working at a big investment bank to run performance tests on a large distributed cache deployed a 96-node farm all connected on Infiniband. Interestingly, when we ran these brutal performance tests on a homegrown Gigabit blade setup with eight nodes, it was pretty trivial to saturate the network while the CPU idled along at about 3% utilization. Running them on the 96-node Infiniband system, though, the same tests pegged the CPUs while the network drank mint juleps on the veranda during the first warm day of spring.</p>
<p>The sad thing about this situation is that Gigabit is only now getting sufficient uptake in enterprise NOCs that it is worthwhile to upgrade the NICs out at the clients. The last mile, just like with 100Mbit, is taking a while. Despite the fact that Gigabit just hasn&#8217;t been with us that long, it&#8217;s pretty clear to me that, with snowballing of HPC, CEP, real-time messaging, and P2P network services (not to mention HD audio and video), Gigabit will be led out to pasture before it ever really gets a chance to race.</p>
<p>We may all still be using Gigabit at the desktop for years to come (or not, if 802.11n and offspring steal the show), but between Infiniband and all the activity we&#8217;ve been seeing now in 10Gbit (as evident during the <a href="http://sc07.supercomputing.org/">SC07 conference</a> in Reno, NV last November), Gigabit just isn&#8217;t &#8220;it&#8221; anymore. Just like pet rocks were in the late 70&#8217;s, Gigabit is a temporary salve for a social ill that ultimately requires a more vital solution. I may not yet know clearly what it is, but I know it ain&#8217;t Gigabit.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/marcja.wordpress.com/48/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/marcja.wordpress.com/48/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/marcja.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/marcja.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/marcja.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/marcja.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/marcja.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/marcja.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/marcja.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/marcja.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/marcja.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/marcja.wordpress.com/48/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=48&subd=marcja&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://marcja.wordpress.com/2008/03/20/gigabit-we-hardly-knew-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b7005a1addee75ef4f237109d87b9e5d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">marcja</media:title>
		</media:content>
	</item>
		<item>
		<title>Post-Game: Microsoft Financial Services Developer Conference</title>
		<link>http://marcja.wordpress.com/2008/03/19/post-game-microsoft-financial-services-developer-conference/</link>
		<comments>http://marcja.wordpress.com/2008/03/19/post-game-microsoft-financial-services-developer-conference/#comments</comments>
		<pubDate>Wed, 19 Mar 2008 17:23:50 +0000</pubDate>
		<dc:creator>Marc Jacobs</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://marcja.wordpress.com/2008/03/19/post-game-microsoft-financial-services-developer-conference/</guid>
		<description><![CDATA[As mentioned in a previous post, I spent the two days last week at the 6th Annual Microsoft Financial Services Developer Conference, and I have to say that it was a great event.
On Wednesday, I gave my talk on distributed caches:
 
The room was packed, folks were asking great questions, and the feedback I got was [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=47&subd=marcja&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>As mentioned in a <a href="http://marcja.wordpress.com/2008/03/04/speaking-at-the-microsoft-financial-services-developer-conference/">previous post</a>, I spent the two days last week at the <a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&amp;EventID=1032361591">6th Annual Microsoft Financial Services Developer Conference</a>, and I have to say that it was a great event.</p>
<p>On Wednesday, I gave <a href="http://marcja.files.wordpress.com/2008/03/distributed-caches.pdf">my talk on distributed caches</a>:</p>
<p><object type='application/x-shockwave-flash' wmode='transparent' data='http://static.slideshare.net/swf/ssplayer2.swf?id=314210&#038;doc=distributed-caches-a-developers-guide-to-unleashing-your-data-in-highperformance-applications-1205962991468655-3' width='425' height='348'><param name='movie' value='http://static.slideshare.net/swf/ssplayer2.swf?id=314210&#038;doc=distributed-caches-a-developers-guide-to-unleashing-your-data-in-highperformance-applications-1205962991468655-3' /><param name='allowFullScreen' value='true' /><param name='allowScriptAccess' value='always' /></object> </p>
<p>The room was packed, folks were asking great questions, and the feedback I got was very positive. For folks who are already knee-deep in high-performance computing and distributed caches, the presentation may not offer much not already known (except perhaps for the late sections on performance tests we ran in the lab and advanced techniques like object segmentation). But given that Microsoft had given this conference a clear emphasis on HPC and that many developers in attendance were relatively new to the subject, the presentation seemed to strike a fair balance between background and practice.</p>
<p>The funny thing is that when I set about writing this presentation, my first draft had over eighty slides for a sixty minute talk. Though I&#8217;m a fast talker, I&#8217;m not able to retire content-rich slides at a 45 second pace and still maintain an audience. Getting acquainted to distributed caches from a developer&#8217;s point of view involves a lot of content, but due to the constraints of the presentation, a lot had to end up on the cutting room floor. Ultimately, I trimmed the deck to fifty-one slides (including such dross as title slides and section headers), but I got through the entire deck with time allowed to take questions. In the minutes before my talk, I was concerned that the most interesting, most crunchy, most impressive material got lost during revision. But by the time the talk was over, I realized that was left after revision was what this audience really wanted to hear.</p>
<p>During the talk I took two straw polls. The first question was: how many people in the audience had practical exposure to distributed caches? I would that guess about 15% raised their hands. The second set of questions revolved around which distributed cache products people were familiar and/or had actually used. Interestingly, <a href="http://www.gigaspaces.com/">GigaSpaces</a> was the runaway winner in both awareness and actual exposure, with about 10% raising their hands. <a href="http://www.scaleoutsoftware.com/products/">ScaleOut StateServer</a> was a strong second. <a href="http://www.gemstone.com/products/">GemStone GemFire</a>, <a href="http://www.oracle.com/products/middleware/coherence/index.html">Oracle Coherence</a>, and <a href="http://www.alachisoft.com/ncache/index.html">Alachisoft NCache</a> clustered far behind. <a href="http://www-306.ibm.com/software/webservers/appserv/extend/datagrid/">IBM ObjectGrid</a> drew crickets.</p>
<p>Anyway, after my presentation on Wednesday, I caught up with friends and colleagues from our partner companies and sampled the &#8220;Lab49 Red&#8221;, a drink recipe served at the Wednesday cocktail reception sponsored by <a href="http://www.lab49.com">Lab49</a> in our capacity as Platinum Sponsor.</p>
<p>On Thursday, I sat in a couple sessions. The first session, hosted by Rich Ciapala from the <a href="http://www.microsoft.com/windowsserver2003/ccs/default.aspx">Microsoft HPC Server 2008</a> team, demonstrated the <a href="http://labs.microsofthpc.net/compfin/">Microsoft HPC++ CompFin Lab</a>, a framework for computational finance that Lab49 has been building for Microsoft. It&#8217;s a great piece of work, and it deserves a blog post on its own. The second session I went to was Stephen Toub&#8217;s presentation on the Task Parallel Library, PLINQ, and related technologies from the Parallel Computing Group at Microsoft. Though I had seen most of the content before, I was taken aback by the 24-core (!) test machine they got from Intel to run their demos on. That&#8217;s four sockets, six cores per socket. The Task Manager Performance tab looked awesome.</p>
<p>The rest of the time I talked to a few reporters and grilled our partners – <a href="http://www.digipede.com">Digipede</a>, <a href="http://www.microsoft.com">Microsoft</a>, <a href="http://www.platform.com">Platform</a>, <a href="http://www.scaleoutsoftware.com/">ScaleOut</a>, and others – for the inside skinny on what&#8217;s around the corner for their products.</p>
<p>Overall, I have to say that I really enjoyed this conference. This is my second year in attendance, and this year was much more interesting than last. There are few other conferences so focused on giving developers in financial services concrete and practical information on how to become more adept at using Microsoft technology to solve their particular brand of problems. Microsoft&#8217;s product teams were in heavy attendance, and the vendors present seemed both relevant and engaged.</p>
<p>I look forward to next year!</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/marcja.wordpress.com/47/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/marcja.wordpress.com/47/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/marcja.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/marcja.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/marcja.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/marcja.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/marcja.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/marcja.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/marcja.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/marcja.wordpress.com/47/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/marcja.wordpress.com/47/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/marcja.wordpress.com/47/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=47&subd=marcja&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://marcja.wordpress.com/2008/03/19/post-game-microsoft-financial-services-developer-conference/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b7005a1addee75ef4f237109d87b9e5d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">marcja</media:title>
		</media:content>
	</item>
		<item>
		<title>Speaking at the Microsoft Financial Services Developer Conference</title>
		<link>http://marcja.wordpress.com/2008/03/04/speaking-at-the-microsoft-financial-services-developer-conference/</link>
		<comments>http://marcja.wordpress.com/2008/03/04/speaking-at-the-microsoft-financial-services-developer-conference/#comments</comments>
		<pubDate>Tue, 04 Mar 2008 21:16:33 +0000</pubDate>
		<dc:creator>Marc Jacobs</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://marcja.wordpress.com/2008/03/04/speaking-at-the-microsoft-financial-services-developer-conference/</guid>
		<description><![CDATA[Just wanted to give a heads-up that I&#8217;ll be speaking at the 6th Annual Microsoft Financial Services Developer Conference next week in New York. Here&#8217;s the abstract:
Distributed Caches: A Developer’s Guide to Unleashing Your Data in High-Performance Applications
With the advent of high-performance computing, application developers have begun to deliver computation on a massive scale by [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=45&subd=marcja&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Just wanted to give a heads-up that I&#8217;ll be speaking at the <a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&amp;EventID=1032361591">6th Annual Microsoft Financial Services Developer Conference</a> next week in New York. Here&#8217;s the abstract:</p>
<blockquote><h5>Distributed Caches: A Developer’s Guide to Unleashing Your Data in High-Performance Applications</h5>
<p>With the advent of high-performance computing, application developers have begun to deliver computation on a massive scale by distributing it across multiple processors and machines. While distributed computing has given performance-critical applications more processor headroom, it has also shifted attention to previously latent bottlenecks: the storage, replication, and transmission of application data. The scalable power of compute grids is ultimately bound to the data grids that feed them. Without data caching and dissemination tools like distributed caches, it can be difficult to fully leverage a high-performance computing solution like Microsoft Windows HPC Server 2008 in data-intensive financial services applications.  </p>
<p>In this talk, Lab49 will present a developer-centric guide to distributed caches, including what services they provide, how they function, how they affect application performance, and how they can be integrated into an application architecture. Lab49 will present test data showing the impact of several different caching strategies (such as compression and data segmentation) on distributed cache performance and will also demonstrate a methodology for testing distributed cache functionality. Lab49 will also discuss other application considerations as well, such as object naming conventions, notifications, and read-through/write-through to an underlying persistent data store.</p>
</blockquote>
<p><a href="http://www.lab49.com">Lab49</a> will also showing off some cool work we&#8217;ve done for <a href="http://www.microsoft.com/windowsserver2003/ccs/hpcplus.aspx">Microsoft Windows HPC Server 2008</a> product team in the area of computational finance. Ssssh. </p>
<p>Lastly, we&#8217;ll be announcing the winner of the <a href="http://wpfcontest.lab49.com/">Lab49 WPF in Finance Innovation Contest</a>. Somebody is going to take home some <a href="http://wpfcontest.lab49.com/prizes.aspx">really cool prizes</a>. Note that if you have been working on your submission (or you are still toying with the idea), the deadline for submissions has been extended to March 10, 2008. Just enough time to add some extra XAML bling. </p>
<p>Look forward to seeing you there!</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/marcja.wordpress.com/45/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/marcja.wordpress.com/45/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/marcja.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/marcja.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/marcja.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/marcja.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/marcja.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/marcja.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/marcja.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/marcja.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/marcja.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/marcja.wordpress.com/45/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=45&subd=marcja&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://marcja.wordpress.com/2008/03/04/speaking-at-the-microsoft-financial-services-developer-conference/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b7005a1addee75ef4f237109d87b9e5d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">marcja</media:title>
		</media:content>
	</item>
		<item>
		<title>Article published in GRIDtoday</title>
		<link>http://marcja.wordpress.com/2007/07/30/article-published-in-gridtoday/</link>
		<comments>http://marcja.wordpress.com/2007/07/30/article-published-in-gridtoday/#comments</comments>
		<pubDate>Mon, 30 Jul 2007 14:17:43 +0000</pubDate>
		<dc:creator>Marc Jacobs</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Distributed]]></category>
		<category><![CDATA[Finance]]></category>
		<category><![CDATA[HPC]]></category>
		<category><![CDATA[Parallel]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://marcja.wordpress.com/2007/07/30/article-published-in-gridtoday/</guid>
		<description><![CDATA[The Marc Jacobs Utilization Meter has been pegged for at least two weeks now on a combination of client work, internal projects, recruiting, and writing (hence the appearance of my blog having fallen down a well.) It&#8217;s great to be busy, but I hate seeing the blog go stale.
In any event, I had an article [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=44&subd=marcja&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>The Marc Jacobs Utilization Meter has been pegged for at least two weeks now on a combination of client work, internal projects, recruiting, and writing (hence the appearance of my blog having fallen down a well.) It&#8217;s great to be busy, but I hate seeing the blog go stale.</p>
<p>In any event, I had an article published in <a href="http://www.gridtoday.com/">GRIDtoday</a> this morning entitled, <a href="http://www.gridtoday.com/grid/1685961.html">&#8220;Grid in Financial Services: Past, Present, and Future&#8221;</a>. Derrick Harris, the editor of GRIDtoday, reached out for an article after reading my multi-part series on <a href="http://marcja.wordpress.com/2007/06/11/high-performance-computing-in-finance-a-customers-perspective-17/">&#8220;High Performance Computing: A Customer&#8217;s Perspective&#8221;</a>. A big thanks to Derrick for giving me this opportunity.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/marcja.wordpress.com/44/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/marcja.wordpress.com/44/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/marcja.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/marcja.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/marcja.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/marcja.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/marcja.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/marcja.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/marcja.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/marcja.wordpress.com/44/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/marcja.wordpress.com/44/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/marcja.wordpress.com/44/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=44&subd=marcja&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://marcja.wordpress.com/2007/07/30/article-published-in-gridtoday/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b7005a1addee75ef4f237109d87b9e5d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">marcja</media:title>
		</media:content>
	</item>
		<item>
		<title>Complex Event Processing: When Design Patterns Become Concrete</title>
		<link>http://marcja.wordpress.com/2007/07/05/complex-event-processing-when-design-patterns-become-concrete/</link>
		<comments>http://marcja.wordpress.com/2007/07/05/complex-event-processing-when-design-patterns-become-concrete/#comments</comments>
		<pubDate>Thu, 05 Jul 2007 18:21:13 +0000</pubDate>
		<dc:creator>Marc Jacobs</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://marcja.wordpress.com/2007/07/05/complex-event-processing-when-design-patterns-become-concrete/</guid>
		<description><![CDATA[Over the past few months at Lab49, we&#8217;ve thrown ourselves into complex event processing (CEP) &#8212; aka&#160;event stream processing (ESP) &#8212; and have been formulating exactly how and when it fits into&#160;the larger, more comprehensive&#160;technology stack found in global financial services institutions. We&#8217;ve&#160;formed a number of interesting vendor partnerships, attended product training, sampled, compared, and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=43&subd=marcja&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Over the past few months at <a href="http://www.lab49.com/">Lab49</a>, we&#8217;ve thrown ourselves into complex event processing (<a href="http://en.wikipedia.org/wiki/Complex_event_processing">CEP</a>) &#8212; aka&nbsp;event stream processing (<a href="http://en.wikipedia.org/wiki/Event_Stream_Processing">ESP</a>) &#8212; and have been formulating exactly how and when it fits into&nbsp;the larger, more comprehensive&nbsp;technology stack found in global financial services institutions. We&#8217;ve&nbsp;formed <a href="http://www.lab49.com/node/61">a number of interesting vendor partnerships</a>, attended product training, sampled, compared, and teased apart many of the popular products, and we&#8217;ve created <a href="http://www.lab49.com/innovation/complexeventprocessing">several CEP-based demo applications</a> that have been shown at recent events like <a href="http://www.sifma.org/">SIFMA</a>.</p>
<p>Along the way, we&#8217;ve all learned a lot about CEP, and the more I learn, the more I dig it. The more I put CEP into practice, the more I foresee its ultimate dominance as an architectural&nbsp;design pattern for everyday development.</p>
<p>What&#8217;s fascinating to me about CEP isn&#8217;t that it&#8217;s a new idea, despite how it may be touted by vendors. Regardless of the hype, CEP&nbsp;isn&#8217;t <a href="http://marcja.wordpress.com/2007/04/12/the-most-revolutionary-microsoft-technology-youve-never-heard-of/">the most revolutionary technology you&#8217;ve never heard of</a>. What&#8217;s fascinating is that out from&nbsp;a decades-old, primordial soup of ideas, research, and trial-and-error that, in and beyond academia, has been trying to create architectural models around&nbsp;complex data problems with real-time constraints, enough best practices and design patterns have emerged to evolve an ecosystem of market entrants, seemingly all at once.</p>
<p>It&#8217;s not the first time that a bundle of quality design patterns took concrete form as a technology. Object pooling, lifetime management, transaction enlistment, and crash domains begat <a href="http://www.microsoft.com/com/default.mspx">COM+</a>, <a href="http://www.microsoft.com/com/default.mspx">Microsoft Component Services</a>, and <a href="http://java.sun.com/javaee/">J2EE</a> application servers. Logging levels, external configuration, adaptable logging sinks begat <a href="http://logging.apache.org/log4j/docs/index.html">log4j</a>, syslogd,&nbsp;and the <a href="http://msdn2.microsoft.com/en-us/library/aa480464.aspx">Logging Application Block</a> from the <a href="http://msdn2.microsoft.com/en-us/library/aa480453.aspx">Microsoft Enterprise Library</a>. Unit-testing and test-driven development begat <a href="http://www.junit.org/index.htm">JUnit</a> and its children.</p>
<p>These transformations have been crucial. Once developers accepted these patterns and solutions as sufficiently solved and commoditized, they were saved considerable time and attention. Freed of coding logging libraries and unit testing frameworks for the umpteenth time, developers could focus more on the business problem being solved rather than the infrastructure details required to solve it. </p>
<p>But these transformations didn&#8217;t really upset the gross architecture of applications. They may have changed some of the design decisions and simplified the implementations, but they didn&#8217;t fundamentally change the abstraction you would use to model a problem and architect a solution.</p>
<p>CEP, on the other hand, does.</p>
<p>Instead of storing and indexing miles of cumulative data in a persistent store to service complex queries in batch/polling fashion, CEP inverts the whole shebang, storing and indexing the complex queries before streaming data across queries without storing a lick. The transformation of a business problem from tables, rows, and polling intervals into events, filters, triggers, and real-time reactions is not only quite enabling, it changes the very way you think about how business problems can be solved and which problems may have viable solutions.</p>
<p>Over the next few weeks, I&#8217;ll delve a bit more into CEP and how it relates to technologies you might be more familiar with. In the meantime, check out some of the <a href="http://blog.lab49.com/?cat=33">in-depth blog entries</a> other folks from Lab49 have been writing about CEP.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/marcja.wordpress.com/43/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/marcja.wordpress.com/43/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/marcja.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/marcja.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/marcja.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/marcja.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/marcja.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/marcja.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/marcja.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/marcja.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/marcja.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/marcja.wordpress.com/43/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=43&subd=marcja&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://marcja.wordpress.com/2007/07/05/complex-event-processing-when-design-patterns-become-concrete/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b7005a1addee75ef4f237109d87b9e5d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">marcja</media:title>
		</media:content>
	</item>
		<item>
		<title>High-Performance Computing in Finance: A Customer&#8217;s Perspective [7/7]</title>
		<link>http://marcja.wordpress.com/2007/06/19/high-performance-computing-in-finance-a-customers-perspective-77/</link>
		<comments>http://marcja.wordpress.com/2007/06/19/high-performance-computing-in-finance-a-customers-perspective-77/#comments</comments>
		<pubDate>Tue, 19 Jun 2007 12:00:41 +0000</pubDate>
		<dc:creator>Marc Jacobs</dc:creator>
				<category><![CDATA[Finance]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://marcja.wordpress.com/2007/06/19/high-performance-computing-in-finance-a-customers-perspective-77/</guid>
		<description><![CDATA[Excerpted from a paper I delivered on January 16, 2007 at&#160;the Microsoft&#160;High-Performance Computing in Financial Services event in New York.
In Closing
It’s a very exciting time to a proponent of high-performance computing in finance. Right now, it’s still a rather rugged task and evangelizing such rough solutions can sometimes result in sour impressions, but overall it’s [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=41&subd=marcja&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p><em></em><em>Excerpted from a paper I delivered on January 16, 2007 at&nbsp;the Microsoft&nbsp;High-Performance Computing in Financial Services event in New York.</em></p>
<h2>In Closing</h2>
<p>It’s a very exciting time to a proponent of high-performance computing in finance. Right now, it’s still a rather rugged task and evangelizing such rough solutions can sometimes result in sour impressions, but overall it’s getting easier to make it work all the time. With all the new products and vendors entering the market right now, I’m convinced we’ll scaling out with ease in the coming years. But in the meantime, we have to be vigilant in ensuring that vendors understand our business and developers and that they bring to market the tools and guidance that allow to keep prioritizing business first and technology second.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/marcja.wordpress.com/41/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/marcja.wordpress.com/41/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/marcja.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/marcja.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/marcja.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/marcja.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/marcja.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/marcja.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/marcja.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/marcja.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/marcja.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/marcja.wordpress.com/41/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=marcja.wordpress.com&blog=86975&post=41&subd=marcja&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://marcja.wordpress.com/2007/06/19/high-performance-computing-in-finance-a-customers-perspective-77/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b7005a1addee75ef4f237109d87b9e5d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">marcja</media:title>
		</media:content>
	</item>
	</channel>
</rss>