<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Code of Contact</title>
	
	<link>http://blog.radvision.com/codeofcontact</link>
	<description>The ins and outs of V²oIP &amp; IMS Programming</description>
	<lastBuildDate>Wed, 25 May 2011 13:04:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/CodeOfContact" /><feedburner:info uri="codeofcontact" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><image><url>http://www.radvision.com/radvision/Images//design/radvision.gif</url></image><feedburner:emailServiceId>CodeOfContact</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Making Your Video Endpoint Work Hard for the Money</title>
		<link>http://feedproxy.google.com/~r/CodeOfContact/~3/reAeNzqsEzc/</link>
		<comments>http://blog.radvision.com/codeofcontact/2011/05/25/making-your-video-endpoint-work-hard-for-the-money/#comments</comments>
		<pubDate>Wed, 25 May 2011 12:07:57 +0000</pubDate>
		<dc:creator>Yotam Roch</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[codec]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[monitor]]></category>
		<category><![CDATA[movies]]></category>
		<category><![CDATA[QA]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[VC240]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://blog.radvision.com/codeofcontact/?p=183</guid>
		<description><![CDATA[<p>[This is another guest post by Yotam Roch, who manages the QA for the Technology Business Unit. In his previous post, he shared how we test the VC240 when it comes to the remote control. This time he shares his experience testing video CODECs] On a regular day-to-day use, most video conference endpoints are providing [...]</p><p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2011/05/25/making-your-video-endpoint-work-hard-for-the-money/">Making Your Video Endpoint Work Hard for the Money</a>
</p>]]></description>
			<content:encoded><![CDATA[<p><em>[This is another guest post by <a href="http://il.linkedin.com/in/yotamroch">Yotam Roch</a></em><em>, who manages the QA for the Technology Business Unit. In his previous post, he shared <a href="http://blog.radvision.com/codeofcontact/2011/01/12/closely-control-without-remote-control/">how we test the VC240 when it comes to the remote control</a>. This time he shares his experience testing video CODECs]</em><em> </em></p>
<p>On a regular day-to-day use, most video conference endpoints are providing a “<a href="http://en.wikipedia.org/wiki/Talking_Heads">talking heads</a>” experience (someone speaking to the camera, camera mainly focused on his head and shoulders, usually with slight movements within the frame). In spite of that, and as part of the intense test plan we have for our endpoints (The <a href="http://www.radvision.com/Developer-Solutions/Voice-and-VIdeo-Clients/">BEEHD Voice and Video Client Frameworks</a> and the <a href="http://www.radvision.com/Products/Video-Conference-Systems/Desktop-Video-Communications/SCOPIA-VC240/">SCOPIA VC240</a>), I was looking for a way to put them under stress and test their “stability”. More accurately, I don’t mean stressing the whole application, but rather focusing on the video codec itself.</p>
<p>Stressing the video codec of an endpoint means that the input from the video source should feature content which contains more movement for extended periods. In the past few years, we’ve built a set of methods to accomplish that and test the different aspects of the codec.</p>
<h3>The “Exhausting”</h3>
<p>Point the camera to yourself and make long movements with your hands. The problem is that after about two minutes you get tired and stop.</p>
<p>(BTW &#8211; I saw our media experts doing the same ritual of moving and clapping hands in different directions every time they come in front of a camera, the difference being that within a few seconds they know exactly what the problem in the motion vector or quantization factor or rate control or whatever is).</p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-185" title="20110525-CodeOfContact-the-exhausting" src="http://blog.radvision.com/codeofcontact/files/2011/05/20110525-CodeOfContact-the-exhausting.jpg" alt="In a call to an MCU, making exhausting movements with my hands (before I got tired…) " width="450" height="343" /><br />
Me, in a call to an MCU, making exhausting movements with my hands (before I got tired…)</p>
<h3>The “Watch TV”</h3>
<p>Point the camera to a PC or TV monitor that is playing a movie. This option is quite poor because of the low video quality taken by the camera pointed at a screen.</p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-187" title="20110525-CodeOfContact-the-watch-TV" src="http://blog.radvision.com/codeofcontact/files/2011/05/20110525-CodeOfContact-the-watch-TV.jpg" alt="My webcam is watching a nature movie on a PC" width="450" height="339" /><br />
My webcam is watching a nature movie on a PC</p>
<p>&nbsp;</p>
<h3>The “Street Traffic”</h3>
<p>Place the camera next to the window and point it to the street where there is traffic. The car movement in straight lines, in opposite directions and in relatively constant speed can put the endpoint in some stress and detect frame-rate and artifact related problems.</p>
<p style="text-align: center;"><img class="alignnone size-full wp-image-186" title="20110525-CodeOfContact-the-street-traffic" src="http://blog.radvision.com/codeofcontact/files/2011/05/20110525-CodeOfContact-the-street-traffic.jpg" alt="My webcam and my street view" width="450" height="339" /><br />
My webcam and my street view</p>
<p>&nbsp;</p>
<h3>The “All-in-one”</h3>
<p>This is the option that can cover all other options. The idea is to use a source for video that will be handled directly by the endpoint. This way you can use clips, from “talking heads” movies types to “action” movies or a movie of someone waving in his hand or a movie of street traffic. You can prepare a play list that contains a single movie or different movies, of the same type or a combination of types, and play it in a loop. This can be done in several ways, depending on the endpoint type:</p>
<ul>
<li>Standalone endpoints such as <a href="http://www.radvision.com/Products/Video-Conference-Systems/Conference-Room-Systems/XT1000/">room systems</a>, usually have an HDMI or RGB input which can be fed with various video content from a <a href="http://www.xtreamer.net/">media streamer</a>.</li>
<li>Software clients using devices and peripherals from the hosting PC can use a “Virtual Webcam” such as <a href="http://www.manycam.com/">manyCam</a>, <a href="http://www.e2esoft.cn/vcam/">VCam</a>, <a href="http://www.soundmorning.com/">VirtualCamera</a>. These programs emulate a webcam and can be fed with different inputs: video clips, DVD video, web-stream, etc.</li>
</ul>
<p style="text-align: center;"><img class="alignnone size-full wp-image-184" title="20110525-CodeOfContact-the-all-in-one" src="http://blog.radvision.com/codeofcontact/files/2011/05/20110525-CodeOfContact-the-all-in-one.jpg" alt="Our XT1000 unit being fed with video content from a streamer" width="450" height="338" /><br />
Our XT1000 unit being fed with video content from a streamer</p>
<p>&nbsp;</p>
<p>Testing the endpoints stability is based on the same idea of using continues moving video data, for example, by running a call for a long period of time. During the long test it is good to have the endpoint working hard and not just taking images of a static, dark room (although there are some tests where static data is preferred and will reveal a video drift or video artifacts).</p>
<p>The best approach is, of course, to combine them all. This is what we do on a daily basis to supply our customers with the most robust endpoints possible for any video type.</p>
<p>&nbsp;</p>
<p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2011/05/25/making-your-video-endpoint-work-hard-for-the-money/">Making Your Video Endpoint Work Hard for the Money</a>
</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=reAeNzqsEzc:G95BaMNuEM0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=reAeNzqsEzc:G95BaMNuEM0:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=reAeNzqsEzc:G95BaMNuEM0:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=reAeNzqsEzc:G95BaMNuEM0:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=reAeNzqsEzc:G95BaMNuEM0:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=reAeNzqsEzc:G95BaMNuEM0:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=reAeNzqsEzc:G95BaMNuEM0:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=reAeNzqsEzc:G95BaMNuEM0:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=reAeNzqsEzc:G95BaMNuEM0:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CodeOfContact/~4/reAeNzqsEzc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.radvision.com/codeofcontact/2011/05/25/making-your-video-endpoint-work-hard-for-the-money/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.radvision.com/codeofcontact/2011/05/25/making-your-video-endpoint-work-hard-for-the-money/</feedburner:origLink></item>
		<item>
		<title>Revolution Protocols</title>
		<link>http://feedproxy.google.com/~r/CodeOfContact/~3/PBXUbYeCNHg/</link>
		<comments>http://blog.radvision.com/codeofcontact/2011/02/16/revolution-protocols/#comments</comments>
		<pubDate>Wed, 16 Feb 2011 12:36:21 +0000</pubDate>
		<dc:creator>Ran Arad</dc:creator>
				<category><![CDATA[Standardization]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[Protocols]]></category>
		<category><![CDATA[revolution]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[standardization]]></category>
		<category><![CDATA[underground]]></category>
		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://blog.radvision.com/codeofcontact/?p=179</guid>
		<description><![CDATA[<p>Revolutions start online these days, in Iran, in Tunisia and in Egypt. The class of educated young people, the ignition fuse for most revolutions, began communicating online, coordinating online, reporting to the outside world online, gaining support online. More and more totalitarian regimes are becoming aware of that, and find ways of controlling the flow [...]</p><p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2011/02/16/revolution-protocols/">Revolution Protocols</a>
</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/flickerbulb/53116195/"><img class="alignright size-full wp-image-181" title="20110216-CodeOfContact-revolution" src="http://blog.radvision.com/codeofcontact/files/2011/02/20110216-CodeOfContact-revolution.jpg" alt="" width="320" height="501" /></a>Revolutions start online these days, in Iran, in Tunisia and in Egypt. The class of educated young people, the ignition fuse for most revolutions, began communicating online, coordinating online, reporting to the outside world online, gaining support online. More and more totalitarian regimes are becoming aware of that, and find ways of controlling the flow of information: <a href="http://news.bbc.co.uk/2/hi/middle_east/8131095.stm">Iran blocked access to Twitter and Facebook and the use of SMS</a>, Tunisia ISPs reportedly tracked potential rebels by <a href="http://www.businessinsider.com/tunisia-facebook-2011-1">stealing their Facebook passwords</a> (Facebook countered this by supplying a secure login page), and Egypt managed to <a href="http://news.discovery.com/tech/egypt-internet-online-protesters-110201.html">disconnect the whole populace from the internet</a>, allowing access only through using ancient dial-up modems to call international ISPs. In Iran it seemed to have worked, for now, in Tunisia it didn’t.</p>
<p>Wasn’t the Internet Protocol supposed to allow a way around this problem? To enable some decentralized form of communication, independent of ISPs? Suppose we wanted to create an internet-in-a-box, to carpet bomb internet on a populace, or to make some secondary internet that is cheap to deploy, does not require technical know-how, and is difficult to shut down. It seems like we can.</p>
<h3>Wireless Internet Cooperation</h3>
<p>The awkwardly named “<a href="http://wiki.daviddarts.com/PirateBox">Pirate Box</a>” demonstrates an internet-in-a-box concept, where one box can supply internet-like services to an area – a message board, file sharing, etc. The 802.11s draft standard extends the 802.11 Wi-Fi standard to include wireless mesh networking. Now, Wi-Fi is limited in range, but some antenna improvements, RF front end enhancements and minor protocol timer tweaks have helped deploy long range P2P networks (according to Wikipedia) with some drawbacks related to efficiency, radial coverage and throughput.</p>
<p>These boxes provide a local, private internet, and they could be made to communicate with each other, but a P2P protocol needs to be worked out between them so that they could update each other on the latest contributions. Each box should have a local storage of the latest contributions it received, and distribute it to the boxes it contacts, like a status snapshot used in grid computing. It has to be assumed that these boxes will turn on and off, like a power management system – for instance, if some boxes recognize that the local coverage is sufficient, they will take turns providing coverage, protecting them from detection. Users should have the ability to mark media content for redistribution, something like ‘retweeting’ or ‘like’-ing it.</p>
<p>Another feature should be detecting an internet connection. Once a box detects such a connection, it will try to dump out as much media as possible, and signal to other boxes to relay internet connection requests to it. This should be done via proxies, in a TOR-like system. Maybe these boxes should come with an old modem, to allow dial out to international ISPs.</p>
<h3>Intrusion Countermeasures</h3>
<p>Of course, such an open network can be open to attack. While jamming and DoS (<a href="http://www.securitytube.net/Attacks-on-WiFi-%28RF-Jamming-Attack%29-video.aspx">video</a>) are the obvious ones, it’s not easy to do with multiple, local, access points. Other attacks can take advantage of the protocol above by flooding irrelevant or misleading items that propagate through the network. Another option is to convince boxes in the area that the area has enough coverage and forcing them into sleep mode. It may also be possible to deduce the location of specific people by tracing their updates through the network.</p>
<p>The boxes must be smart enough to detect spamming, either by allowing users to rank down items (which could lead to another kind of attack) or by limiting the amount of updates that are forwarded out of any area, thus slowing down and containing the attack.</p>
<p>The boxes must monitor other boxes in the area, even while in sleep mode, and try to gather statistics about them. If a box seems to be awake for too long, sends updates too frequently or ignores other boxes’ updates, it will be ignored by the box.</p>
<p>As for tracing specific people, the box could allow for a ‘dead drop’ mode of operation, where the update is stored in the box for a set period of time, and only later shared with the network, presumably when the reporter no longer is in the area.</p>
<p>Such boxes will soon be contraband in dictatorships, therefore, they must be distributed digitally and assembled from available components, such as alternative ROMs for Wi-Fi routers, software for Wi-Fi enabled PCs, etc. The US Army already has plans to <a href="http://www.wired.com/dangerroom/2011/02/secret-tools-force-net/">force free internet</a> on blocked countries, although they admit it will be considered an act of war. Creating these boxes and distributing them at low cost (for instance, by the UN human rights body – it’s considered a basic human right) will bypass these restrictions somewhat, as will distribution of ROMs and software as explained above.</p>
<h3>No Kill Switch</h3>
<p>In spite of their disadvantages, these boxes will allow for communication when other methods have been revoked. However, as we saw in Egypt, the Stopping of the internet did not stop the revolution, only slowed down the data flow. Memes don’t need the internet to spread, and once people are out in the streets, there’s no “Kill Switch” for that.</p>
<p style="text-align: center;"><a href="http://www.flickr.com/photos/notionscapital/5399168298"><img class="alignnone size-full wp-image-180" title="20110216-CodeOfContact-caution" src="http://blog.radvision.com/codeofcontact/files/2011/02/20110216-CodeOfContact-caution.jpg" alt="Internet off switch in cases of political dissent" width="468" height="335" /></a></p>
<p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2011/02/16/revolution-protocols/">Revolution Protocols</a>
</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=PBXUbYeCNHg:sEbVmLC5jK8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=PBXUbYeCNHg:sEbVmLC5jK8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=PBXUbYeCNHg:sEbVmLC5jK8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=PBXUbYeCNHg:sEbVmLC5jK8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=PBXUbYeCNHg:sEbVmLC5jK8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=PBXUbYeCNHg:sEbVmLC5jK8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=PBXUbYeCNHg:sEbVmLC5jK8:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=PBXUbYeCNHg:sEbVmLC5jK8:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=PBXUbYeCNHg:sEbVmLC5jK8:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CodeOfContact/~4/PBXUbYeCNHg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.radvision.com/codeofcontact/2011/02/16/revolution-protocols/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.radvision.com/codeofcontact/2011/02/16/revolution-protocols/</feedburner:origLink></item>
		<item>
		<title>Closely Control without Remote Control</title>
		<link>http://feedproxy.google.com/~r/CodeOfContact/~3/NyGiqAxJnH4/</link>
		<comments>http://blog.radvision.com/codeofcontact/2011/01/12/closely-control-without-remote-control/#comments</comments>
		<pubDate>Wed, 12 Jan 2011 11:36:08 +0000</pubDate>
		<dc:creator>Yotam Roch</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[automation]]></category>
		<category><![CDATA[developers]]></category>
		<category><![CDATA[Interoperability]]></category>
		<category><![CDATA[Remote control]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Upgrade]]></category>
		<category><![CDATA[VC240]]></category>

		<guid isPermaLink="false">http://blog.radvision.com/codeofcontact/?p=173</guid>
		<description><![CDATA[<p>[Yotam Roch is the Technology Business Unit QA Manager. In his job his managers often whisper to his ears the magic words:”Automation, Automation, Automation”, so we asked him to share with you some of his experience with the automation testing we’re doing for the VC240] When my team first started testing the SCOPIA VC240 I [...]</p><p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2011/01/12/closely-control-without-remote-control/">Closely Control without Remote Control</a>
</p>]]></description>
			<content:encoded><![CDATA[<p><em>[</em><a href="http://il.linkedin.com/in/yotamroch"><em>Yotam Roch</em></a><em> is the Technology Business Unit QA Manager. In his job his managers often whisper to his ears the magic words:”</em><a href="http://shrinik.blogspot.com/2008/11/conversation-on-automation-roi-part-1.html"><em>Automation, Automation, Automation</em></a><em>”, so we asked him to share with you some of his </em><em>experience</em><em> with the automation testing we’re doing for the VC240]</em></p>
<p>When my team first started testing the <a href="http://www.radvision.com/Products/Video-Conference-Systems/Desktop-Video-Communications/SCOPIA-VC240/default.htm">SCOPIA VC240</a> I realized that this is a different story than testing the <a href="http://www.radvision.com/Developer-Solutions/">RADVISION Developer solution product portfolio</a> that my team used to test until then.</p>
<p>For the VC240 we had the usual video conference endpoint testing scheme: things like interoperability with other common endpoints and <a href="http://community.radvision.com/glossary/MCU/">MCUs</a>, handling of network impairments, usability testing, software upgrade process verification and operating the system remotely using the open APIs. But there was now a new challenge: test it the way the user is using the unit, with the <a href="http://en.wikipedia.org/wiki/Remote_control">remote control</a> and find out what will happen after the 10<sup>th</sup>, 100<sup>th</sup> or 1000<sup>th</sup> call or if the user presses the Mute-Unmute button a 100 times during a call.</p>
<p>At the beginning we had a few students doing the Sisyphean task of connecting and disconnecting calls using the remote control, but soon we realized that we had to find a way to do it more efficiently.</p>
<p>A colleague of mine from the developers’ team remembered that in his previous job he developed a Set-Top-Box for TV sets and they used to test it with an Infra-Red Transmitter. I did a little research and bought a few pieces of <a href="http://www.irtrans.com/en/main.php">Infra-Red transmitters</a>. These devices can transform any PC into a programmable remote control: it learns the codes of the remote control, stores them in a database and sends them, controlled (over HTTP or USB) by software that runs on a PC:</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-174" title="20110112-CodeOfContact-VC240-IR-testing" src="http://blog.radvision.com/codeofcontact/files/2011/01/20110112-CodeOfContact-VC240-IR-testing.jpg" alt="SCOPIA VC240 Infra-red automation testing" width="470" height="218" /></p>
<p>Within a couple of hours we “taught” the device all the Infra-Red codes of the VC240 and in another few days, using <a href="http://www.autoitscript.com/autoit3/index.shtml">Autoit</a>, we wrote a “software remote control” that can replace the original “hardware remote control” of the VC240. With this “Soft” remote we can record the buttons that are being pressed and create a script. For example for calling 1234, waiting 60 sec and dropping the call the user will have to press the following remote buttons: CALL,1,2,3,4,OK,sleep=60,END,END, and this is exactly the way the script would look like. The script can then be played repeatedly in a loop with the software player that we wrote.</p>
<p>Now our testers can run the test and meanwhile do other things like preparing such scripts for the benefit of all teams: Testing and Development.</p>
<p>We are using this technique now not only for testing the VC240, but also to record scenarios that are causing problems and sending them to the development teams in different parts of the world – this way they can easily reproduce the problem.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-175" title="20110112-CodeOfContact-VC240-remotes" src="http://blog.radvision.com/codeofcontact/files/2011/01/20110112-CodeOfContact-VC240-remotes.jpg" alt="Find the Difference! - VC240 “Hard” Remote Control Vs. VC240 “Soft” Remote Control" width="600" height="600" />Find the Difference! &#8211; VC240 “Hard” Remote Control Vs. VC240 “Soft” Remote Control</p>
<p>We also had to overcome a funny problem: the strength of the Infra-Red signal is quite strong so it was picked up by all the neighboring VC240s.In order to prevent that and make each Infra-Red transmitter focus on single VC240 unit, we had <a href="http://onlineslangdictionary.com/definition+of/macgyver">MacGyvered</a> the following contraption made of ¾ CD of VC240 user manual, 1 carton box of the Infra-Red transmitter power supply, 30cm of  cellotape, 1 VC240 camera cover (to draw the circle, of course…) and 1 craft knife:</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-176" title="20110112-CodeOfContact-VC240-IR-contraption" src="http://blog.radvision.com/codeofcontact/files/2011/01/20110112-CodeOfContact-VC240-IR-contraption.jpg" alt="VC240 Infra-red transmitter focus contraption" width="450" height="338" /></p>
<p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2011/01/12/closely-control-without-remote-control/">Closely Control without Remote Control</a>
</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=NyGiqAxJnH4:H6cPt_mKXZo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=NyGiqAxJnH4:H6cPt_mKXZo:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=NyGiqAxJnH4:H6cPt_mKXZo:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=NyGiqAxJnH4:H6cPt_mKXZo:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=NyGiqAxJnH4:H6cPt_mKXZo:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=NyGiqAxJnH4:H6cPt_mKXZo:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=NyGiqAxJnH4:H6cPt_mKXZo:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=NyGiqAxJnH4:H6cPt_mKXZo:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=NyGiqAxJnH4:H6cPt_mKXZo:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CodeOfContact/~4/NyGiqAxJnH4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.radvision.com/codeofcontact/2011/01/12/closely-control-without-remote-control/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blog.radvision.com/codeofcontact/2011/01/12/closely-control-without-remote-control/</feedburner:origLink></item>
		<item>
		<title>Take a Look and Feel our New Look and Feel</title>
		<link>http://feedproxy.google.com/~r/CodeOfContact/~3/IVJwqjQ7Bkg/</link>
		<comments>http://blog.radvision.com/codeofcontact/2010/12/30/take-a-look-and-feel-our-new-look-and-feel/#comments</comments>
		<pubDate>Thu, 30 Dec 2010 11:12:16 +0000</pubDate>
		<dc:creator>Ran Arad</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[infrastructure]]></category>
		<category><![CDATA[Upgrade]]></category>

		<guid isPermaLink="false">http://blog.radvision.com/codeofcontact/?p=170</guid>
		<description><![CDATA[<p>It was bound to happen. We’ve been running for too long with our old blog design, and it was time for something new, fresh. The idea of renovating came up sometime in the mid 2010 and it took us until now to actually complete the design and refresh it all. Since we were doing a [...]</p><p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/12/30/take-a-look-and-feel-our-new-look-and-feel/">Take a Look and Feel our New Look and Feel</a>
</p>]]></description>
			<content:encoded><![CDATA[<p>It was bound to happen. We’ve been running for too long with our old blog design, and it was time for something new, fresh. The idea of renovating came up sometime in the mid 2010 and it took us until now to actually complete the design and refresh it all.</p>
<p>Since we were doing a new design, we took the opportunity to do some other housekeeping activities:</p>
<ul>
<li>We’ve replaced our host from a slow-and-cheap hosted server to a faster VPS system.</li>
<li>We’ve upgraded to the latest WordPress platform and did some infrastructure changes to the customized stuff we had in our old platform.</li>
</ul>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-172" title="20101230-CodeOfContact-renovating" src="http://blog.radvision.com/codeofcontact/files/2010/12/20101230-CodeOfContact-renovating.jpg" alt="RADVISION Blogs: our new look" width="450" height="297" /></p>
<p>I hope you like our new look – we did try to make it a bit more interesting and engaging, with links that are more useful in the header, sidebar and footer.</p>
<p>So if you are reading this via e-mail or RSS, be sure to come visit our blog – browse around and tell us what you think.</p>
<p>We are now ready for 2011. Happy new year.</p>
<p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/12/30/take-a-look-and-feel-our-new-look-and-feel/">Take a Look and Feel our New Look and Feel</a>
</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=IVJwqjQ7Bkg:0-cgRbK2bas:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=IVJwqjQ7Bkg:0-cgRbK2bas:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=IVJwqjQ7Bkg:0-cgRbK2bas:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=IVJwqjQ7Bkg:0-cgRbK2bas:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=IVJwqjQ7Bkg:0-cgRbK2bas:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=IVJwqjQ7Bkg:0-cgRbK2bas:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=IVJwqjQ7Bkg:0-cgRbK2bas:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=IVJwqjQ7Bkg:0-cgRbK2bas:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=IVJwqjQ7Bkg:0-cgRbK2bas:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CodeOfContact/~4/IVJwqjQ7Bkg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.radvision.com/codeofcontact/2010/12/30/take-a-look-and-feel-our-new-look-and-feel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.radvision.com/codeofcontact/2010/12/30/take-a-look-and-feel-our-new-look-and-feel/</feedburner:origLink></item>
		<item>
		<title>Code, Drugs and Rock ’n’ Roll</title>
		<link>http://feedproxy.google.com/~r/CodeOfContact/~3/FQI5kvYiGMo/</link>
		<comments>http://blog.radvision.com/codeofcontact/2010/12/15/code-drugs-and-rock-n-roll/#comments</comments>
		<pubDate>Wed, 15 Dec 2010 11:55:12 +0000</pubDate>
		<dc:creator>Ran Arad</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[alcohol]]></category>
		<category><![CDATA[caffeine]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[concentration]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[links]]></category>
		<category><![CDATA[Mozart]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[nicotine]]></category>
		<category><![CDATA[noise]]></category>

		<guid isPermaLink="false">http://blog.radvision.com/codeofcontact/?p=100</guid>
		<description><![CDATA[<p>What helps us code, and to what extent? Is it just a placebo effect, or does the stuff we take in affects the code we put out? Higher quantity with lower quality, or is it the other way around? Is there a perfect cocktail, some magic dosage to produce the best results, or is it [...]</p><p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/12/15/code-drugs-and-rock-n-roll/">Code, Drugs and Rock ’n’ Roll</a>
</p>]]></description>
			<content:encoded><![CDATA[<p>What helps us code, and to what extent? Is it just a placebo effect, or does the stuff we take in affects the code we put out? Higher quantity with lower quality, or is it the other way around? Is there a perfect cocktail, some magic dosage to produce the best results, or is it a myth?</p>
<h3>Alcohol</h3>
<p>As in everything in life, XKCD already <a href="http://xkcd.com/323/">identified and explained it</a>. And lately it was amusingly portrayed in the hit motion picture “<a href="http://www.thesocialnetwork-movie.com/site/">The Social Network</a>”, which has several a&amp;h (alcohol &amp; hacking) scenes:</p>
<p style="text-align: center"><object width="560" height="340"><param name="movie" value="http://www.youtube.com/v/uxKmDWDUZ5A?fs=1&amp;hl=en_US"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/uxKmDWDUZ5A?fs=1&amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object></p>
<p>The only reason I can see for hacking under the influence would be to release oneself of the moral inhabitations of crime. Maybe its part of the <a href="http://en.wikipedia.org/wiki/Handicap_principle">Handicap principle</a>: “I code <strong>so</strong> well that I can do it while drunk”. Those in favor of drinking while coding claim it increases creativity and relieves stress. Personally, I think the process of chatting over a glass of beer does that, and the alcohol mostly increases self confidence – justly or not.</p>
<h3>Caffeine</h3>
<p>This is no doubt the programmer’s drug of choice. In fact, it’s the world&#8217;s most widely consumed psychoactive substance. It reduces tiredness (but not the need for sleep), increases the capacity for mental and physical labor, and sends you to the bathroom more often (and we all know breaks are important). On the down side, the body quickly builds up a tolerance for it, and, in fact, a dependency on it, known as <a href="http://artificiallyawake.com/?p=312">caffeine crash</a>. The result is that caffeine no longer gives a boost, but mostly balances out the crash effects. This effect varies per person and per consumption level, but for best coding results I recommend getting a good night’s sleep and dropping caffeine intake during the weekends.</p>
<p style="text-align: center"><a href="http://www.flickr.com/photos/96683394@N00/1092812945/"><img class="alignnone" src="http://blog.radvision.com/images/2010/20101215-CodeOfContact-Caffeine.jpg" alt="" width="350" height="420" /></a></p>
<p>And by the way, caffeine and alcohol are a very bad mix. Caffeine dehydrates (and blocks absorption of water), making the blood alcohol levels increase, while temporarily preventing the sensation of being drunk. When the caffeine wears off, the alcohol hits much harder. So don’t drink and… drink.</p>
<h3>Nicotine</h3>
<p>While it does not promote cancer on its own, other substances in cigarettes do. It is, however, poisonous in very large dosages. As for the psychoactive effect, it is simulative in low dosage, and calming in high dosage – which is actually unique for drugs. It is also very addictive when administered with other chemicals found in tobacco (but not in its pure form).</p>
<p style="text-align: center"><a href="http://www.flickr.com/photos/seeminglee/4157388270/"><img class="alignnone" src="http://blog.radvision.com/images/2010/20101215-CodeOfContact-Nicotine.jpg" alt="" width="600" height="341" /></a></p>
<p>To sum up, the main down side of nicotine is that it is usually consumed in cigarette form, meaning that it is highly addictive and cancerous. If you have an option of administering a constant, calculated low dosage of nicotine (nicotine patches? nicotine gum?), there may be a small beneficial effect to it. Small, as in, not worth the risk of cancer.</p>
<h3>Music</h3>
<p>This is more a matter of personal taste, but generally music (especially one with lyrics) is harming the ability to concentrate. We use language skills to solve problems more than we think we do, and our mind has a hard time working on problems while listening to spoken words.</p>
<p style="text-align: center"><a href="http://www.flickr.com/photos/yourdon/3366991042/"><img class="alignnone" src="http://blog.radvision.com/images/2010/20101215-CodeOfContact-Music.jpg" alt="" width="450" height="338" /></a></p>
<p>On the other hand there is the (in)famous “<a href="http://en.wikipedia.org/wiki/Mozart_effect">Mozart Effect</a>” – while it does not bestow long lasting intellectual benefits, it does relax and has been shown to have limited positive effect on performance of some mental tasks. Music is mostly beneficial to alleviate the boredom of tedious tasks, but it is best to have an environment with no distractions.</p>
<h3>Noise</h3>
<p>Noise is usually a distraction. Some can block it out and some cannot. However, white noise is the opposite: it drowns out distracting noises in the environment and helps the mind focus. There are several white noise generators online: <a href="http://simplynoise.com/">Simply Noise</a> generates different types of white and white-like noise, and can even add gentle oscillations in noise level to prevent the ear from tiring. Rain is a natural white noise, and for me, it is more pleasant than generated white noise. As there is not much rain in Israel, <a href="http://www.rainymood.com/">Rainy Mood</a> provides a 30 minute loop of rain, mixed with some gentle instrumental music. The problem with it is that after a day or two I learned the loop, and was noticing the background music too much. Another nice service is <a href="http://www.soundsleeping.com/">Sound Sleeping</a>, which allows you to mix your own white noise out of sounds of rain, ocean and creek, and add in ambiance like thunder, drums or bonfire. My favorite mix is “Sound Sleeping” with a lot of the ‘rain’ sound, with ‘ocean’ for oscillations at about half the volume, and ‘thunder’ at a very low volume, just for ambiance. To that I add some pink noise from “Simply Noise”, just to set the base noise level a bit higher and drown out any intrusive sounds.</p>
<p style="text-align: center"><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/wMD7Ezp3gWc?fs=1&amp;hl=en_US&amp;color1=0x3a3a3a&amp;color2=0x999999"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/wMD7Ezp3gWc?fs=1&amp;hl=en_US&amp;color1=0x3a3a3a&amp;color2=0x999999" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></p>
<p style="text-align: left">
<p>My personal recipe is coffee without sugar to treat my borderline ADD, mixed with some white noise when the mood strikes me.  What’s your favorite prescription?</p>
<p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/12/15/code-drugs-and-rock-n-roll/">Code, Drugs and Rock ’n’ Roll</a>
</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=FQI5kvYiGMo:_nyrEkc0v_U:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=FQI5kvYiGMo:_nyrEkc0v_U:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=FQI5kvYiGMo:_nyrEkc0v_U:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=FQI5kvYiGMo:_nyrEkc0v_U:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=FQI5kvYiGMo:_nyrEkc0v_U:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=FQI5kvYiGMo:_nyrEkc0v_U:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=FQI5kvYiGMo:_nyrEkc0v_U:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=FQI5kvYiGMo:_nyrEkc0v_U:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=FQI5kvYiGMo:_nyrEkc0v_U:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CodeOfContact/~4/FQI5kvYiGMo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.radvision.com/codeofcontact/2010/12/15/code-drugs-and-rock-n-roll/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.radvision.com/codeofcontact/2010/12/15/code-drugs-and-rock-n-roll/</feedburner:origLink></item>
		<item>
		<title>Standardized Human Behavior: Anonymity</title>
		<link>http://feedproxy.google.com/~r/CodeOfContact/~3/Oqha84cMAx8/</link>
		<comments>http://blog.radvision.com/codeofcontact/2010/07/14/standardized-human-behavior-anonymity/#comments</comments>
		<pubDate>Wed, 14 Jul 2010 12:04:10 +0000</pubDate>
		<dc:creator>Ran Arad</dc:creator>
				<category><![CDATA[Standardization]]></category>
		<category><![CDATA[access]]></category>
		<category><![CDATA[anonymity]]></category>
		<category><![CDATA[behavior]]></category>
		<category><![CDATA[caller id]]></category>
		<category><![CDATA[id]]></category>
		<category><![CDATA[phone]]></category>
		<category><![CDATA[privacy]]></category>
		<category><![CDATA[science]]></category>
		<category><![CDATA[standards]]></category>
		<category><![CDATA[support]]></category>
		<category><![CDATA[text]]></category>

		<guid isPermaLink="false">http://blog.radvision.com/codeofcontact/?p=98</guid>
		<description><![CDATA[<p>Do you remember, in the &#8216;before&#8217; times, when the phone would ring? Are you at the age where the phone was a plastic thing with numbers on it, which was connected to a special socket in the wall? So it rang. Ring. Ring ring. Who is it? Wait! Skip a few years later, and this [...]</p><p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/07/14/standardized-human-behavior-anonymity/">Standardized Human Behavior: Anonymity</a>
</p>]]></description>
			<content:encoded><![CDATA[<p>Do you remember, in the &#8216;before&#8217; times, when the phone would ring? Are you at the age where the phone was a plastic thing with numbers on it, which was connected to a special socket in the wall? So it rang. Ring. Ring ring.</p>
<p><a href="http://www.flickr.com/photos/acrider/4286909046/"><img class="alignright" src="http://blog.radvision.com/images/2010/20100714-CodeOfContact-caller-id.jpg" alt="" width="240" height="129" /></a>Who is it?</p>
<p>Wait! Skip a few years later, and this other plastic gadget-thing which dad bought showed us the number that was calling us. Nope, we don&#8217;t know this number.</p>
<p>Ring ring.</p>
<h3>Sync</h3>
<p>A few years later, a few years ago, I got a car-phone. It was a horrid thing, slow and stupid. In addition, it could not be synced with my mobile&#8217;s phone book. I had to &#8220;hack&#8221; it:  take the SIM out, put it in the mobile phone, copy all the numbers from the mobile to the SIM, stick it back into the car-phone, fix the butchered names (John Do~1, John Do~2, John Do~3), or at least the important ones, etc.</p>
<p>And if someone updated their number, god forbid, I had to update it manually on both phones. And it did not have text-to-speech, so I had to teach it how to pronounce the contact names if I wanted to use speech, eyes on the road and all that.</p>
<p>Still I got numbers I did not recognize, just like in the &#8216;before&#8217; times. In that day and age, I expected more. I expected <a href="http://www.urbanaero.com/Urban_Main.htm">flying cars</a>, but that aside, I expected the phone systems to provide me with a name, or the best approximation of a name (company, location) it can.</p>
<h3><a href="http://www.flickr.com/photos/eltuercas/1339058852/"><img class="alignright" src="http://blog.radvision.com/images/2010/20100714-CodeOfContact-explore.jpg" alt="" width="240" height="360" /></a>Workflow: How this SHOULD work</h3>
<ul>
<li> Alice, upon buying her new phone, provides her name, the correct phonetic representation(s) of her name, selected web profiles, a flattering picture and a PIN number or some other password to grant permission to call her.</li>
<li> Alice meets Bob, an old high school friend, and wants to keep in touch with him. She gives him her password.</li>
<li> Bob looks up Alice, and provides the access password. His phone downloads her details from the network.</li>
<li> Bob calls Alice, and Alice&#8217;s phone updates with his details.</li>
</ul>
<p>It&#8217;s no rocket science, just applying the current social networking methodologies to the phone system. As for &#8216;private numbers&#8217;:</p>
<ul>
<li> Organizations must provide at least a company name and location.</li>
<li> People who do not want to provide means for calling them back can provide limited information and no callback ability</li>
<li> Those who want to remain anonymous can try to. Subscribers can decide if they want to allow anonymous calls, messages, etc.</li>
</ul>
<p>Only one thing remains &#8211; backwards compatibility. Subscribers to POTS or older mobile phones can still have profiles and PIN numbers, even if they could not receive them. Until the subscribers create such profiles, the old caller id will still be supported. Maybe dad could get a new gadget, with an LCD screen showing the caller picture.</p>
<p style="text-align: center"><a href="http://www.flickr.com/photos/21734563@N04/2170089669/"><img class="alignnone" src="http://blog.radvision.com/images/2010/20100714-CodeOfContact-army-days.jpg" alt="" width="320" height="400" /></a><br />
Is that gramps? This picture is from his army days. Just press &#8216;Ignore&#8217;.</p>
<p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/07/14/standardized-human-behavior-anonymity/">Standardized Human Behavior: Anonymity</a>
</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Oqha84cMAx8:XJ3F3AHhfxU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Oqha84cMAx8:XJ3F3AHhfxU:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=Oqha84cMAx8:XJ3F3AHhfxU:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Oqha84cMAx8:XJ3F3AHhfxU:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=Oqha84cMAx8:XJ3F3AHhfxU:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Oqha84cMAx8:XJ3F3AHhfxU:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Oqha84cMAx8:XJ3F3AHhfxU:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Oqha84cMAx8:XJ3F3AHhfxU:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=Oqha84cMAx8:XJ3F3AHhfxU:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CodeOfContact/~4/Oqha84cMAx8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.radvision.com/codeofcontact/2010/07/14/standardized-human-behavior-anonymity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.radvision.com/codeofcontact/2010/07/14/standardized-human-behavior-anonymity/</feedburner:origLink></item>
		<item>
		<title>VC240 – Is It Hack-Worthy?</title>
		<link>http://feedproxy.google.com/~r/CodeOfContact/~3/C2evv7DwNMQ/</link>
		<comments>http://blog.radvision.com/codeofcontact/2010/06/30/vc240-is-it-hack-worthy/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 11:50:44 +0000</pubDate>
		<dc:creator>Ran Arad</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[access]]></category>
		<category><![CDATA[access point]]></category>
		<category><![CDATA[customers]]></category>
		<category><![CDATA[developers]]></category>
		<category><![CDATA[firmware]]></category>
		<category><![CDATA[Hack]]></category>
		<category><![CDATA[Memory]]></category>
		<category><![CDATA[RADVISION]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[VC240]]></category>
		<category><![CDATA[windows mobile]]></category>
		<category><![CDATA[wrt54g linksys]]></category>
		<category><![CDATA[xda developers]]></category>

		<guid isPermaLink="false">http://blog.radvision.com/codeofcontact/?p=96</guid>
		<description><![CDATA[<p>Windows Mobile 6.5.3 is actually a decent piece of software. I would not have been able to reach this conclusion without the good people of XDA-Developers, and especially @NRGZ28, who cooked the EnergyROM I&#8217;m now using. Let me explain: with most of the phones that you buy today, you are not limited to the OS [...]</p><p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/06/30/vc240-is-it-hack-worthy/">VC240 &#8211; Is It Hack-Worthy?</a>
</p>]]></description>
			<content:encoded><![CDATA[<p>Windows Mobile 6.5.3 is actually a decent piece of software. I would not have been able to reach this conclusion without the good people of <a href="http://www.xda-developers.com/">XDA-Developers</a>, and especially <a href="http://twitter.com/NRGZ28">@NRGZ28</a>, who cooked the <a href="http://energyrom.com/">EnergyROM</a> I&#8217;m now using.</p>
<p>Let me explain: with most of the phones that you buy today, you are not limited to the OS supplied by the manufacturer and any updates released for it &#8211; courtesy of your friendly internet hacker. You can download tools to hack your device and flash any ROM on it &#8211; and it might even be legal. That is, if you&#8217;re ok with voiding your warranty.</p>
<h3>Hacking? Who cares?!</h3>
<p>A few days ago, a colleague asked me &#8220;what if the <a href="http://www.radvision.com/Products/Video-Products/Desktop-Video-Communications/SCOPIA-VC240/">VC240</a> root password is leaked or hacked? Customers could install whatever they want on them!&#8221; Well, I said, first, we&#8217;re dealing with the enterprise market here, and they have a tendency to value warranty. Second, when we&#8217;ll really have to worry about that, we&#8217;ll know we&#8217;ve hit the big times.</p>
<p><a href="http://en.wikipedia.org/wiki/File:Linksys_WRT54G_V1.jpg"><img class="alignleft" src="http://blog.radvision.com/images/2010/20100630-CodeOfContact-wrt54g.jpg" alt="" width="320" height="240" /></a>Take my router, for example: Linksys WRT54G. Linksys was required to release the WRT54G&#8217;s firmware source code due to some legal hubbub. The result? A massive amount of <a href="http://en.wikipedia.org/wiki/List_of_wireless_router_firmware_projects">third party firmware projects</a>, which modify everything from capabilities to GUI &#8211; even converting the router to an access point or a repeater. This has lead to better product reviews and better sales. So much in fact, that when version 5 of the product turned out to have too little memory for the modifications, Linksys re-released version 4 under a new model name, so as to allow it to be hacked.</p>
<p>Of course, if your real business is selling (or licensing) the software for your hardware platform, like Apple&#8217;s doing with the iPhone or Microsoft with the Xbox, then hacking is a real problem. If you just sell the device, like Archos is doing with their Jukebox or Creative with the iRiver, why would you care what software it is running? The customer can replace the software with the <a href="http://www.rockbox.org/">Rock Box</a> and it will only mean that you no longer have to service this device.</p>
<p>On the other hand, if you&#8217;re a software company, you&#8217;re in trouble: the sad truth is <strong>anyone can create software</strong>. I&#8217;m saying create and not write, since mashup services and &#8216;cooked&#8217; ROMs are not exactly written.</p>
<h3>Would you hack that?</h3>
<p>Back to the VC240. We sell a nifty screen, with a heavy-duty camera, some really mean processing units, some badass codecs and a decent GUI.</p>
<p>Until VC240 fits into a <a href="http://www.blendtec.com/willitblend/">blender</a>, we can ponder about hacking.</p>
<p>Could someone hack that? Yes. By now you should know that anything can be hacked. Would he want to replace our software with his own? Seems to me that if someone wants a video conferencing unit, they could not create a better solution without a massive investment of time and effort, but maybe I&#8217;m wrong &#8211; open source groups have taken on major projects before and done extremely well.</p>
<p>On the other hand, if anyone would want to create a use for it that is NOT a video endpoint &#8211; a gesture activated screen, some kind of artistic video feedback, security, face recognizing workstation &#8211; it may actually make sense.</p>
<p>I have to admit I look forward to that.</p>
<p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/06/30/vc240-is-it-hack-worthy/">VC240 &#8211; Is It Hack-Worthy?</a>
</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=C2evv7DwNMQ:GbOIIhOpaFI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=C2evv7DwNMQ:GbOIIhOpaFI:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=C2evv7DwNMQ:GbOIIhOpaFI:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=C2evv7DwNMQ:GbOIIhOpaFI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=C2evv7DwNMQ:GbOIIhOpaFI:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=C2evv7DwNMQ:GbOIIhOpaFI:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=C2evv7DwNMQ:GbOIIhOpaFI:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=C2evv7DwNMQ:GbOIIhOpaFI:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=C2evv7DwNMQ:GbOIIhOpaFI:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CodeOfContact/~4/C2evv7DwNMQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.radvision.com/codeofcontact/2010/06/30/vc240-is-it-hack-worthy/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.radvision.com/codeofcontact/2010/06/30/vc240-is-it-hack-worthy/</feedburner:origLink></item>
		<item>
		<title>Beware: Type Conversion Can Get You to Crash</title>
		<link>http://feedproxy.google.com/~r/CodeOfContact/~3/Fl857LqVH_g/</link>
		<comments>http://blog.radvision.com/codeofcontact/2010/06/16/beware-type-conversion-can-get-you-to-crash/#comments</comments>
		<pubDate>Wed, 16 Jun 2010 11:31:33 +0000</pubDate>
		<dc:creator>Ofer Goren</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[debugging]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[log]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[SIP]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[support]]></category>
		<category><![CDATA[Toolkits]]></category>
		<category><![CDATA[type conversion]]></category>

		<guid isPermaLink="false">http://blog.radvision.com/codeofcontact/?p=94</guid>
		<description><![CDATA[<p>I&#8217;ve been working on several things since my last post. After all, the work of a wise developer never ends (for job-security reasons). The team and I had to evaluate some new RFCs for effort estimations, we had to read some PRDs and MRDs, and of course produce our share of documents to be added [...]</p><p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/06/16/beware-type-conversion-can-get-you-to-crash/">Beware: Type Conversion Can Get You to Crash</a>
</p>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working on several things since <a href="http://blog.radvision.com/codeofcontact/2010/03/31/a-new-ga-is-born/">my last post</a>. After all, the work of a wise developer never ends (for job-security reasons). The team and I had to evaluate some new RFCs for effort estimations, we had to read some PRDs and MRDs, and of course produce our share of documents to be added to the general pile of documents that no one ever reads once they get approved.</p>
<p>While doing all of that, from time to time, we still need to address issues that we receive from our Customer Support department, cases which they cannot resolve without help from the R&amp;D boys and girls. Surprisingly enough, one of those boys is I.</p>
<p>Last week Ran shared a case about <a href="http://blog.radvision.com/codeofcontact/2010/06/02/closing-connections-and-the-tcp-sockets-heaven/">TCP connection closing</a>, and so I couldn&#8217;t do without sharing an interesting case of my own.</p>
<h3>A bit of history</h3>
<p>The case we have at hand is a simple case of type conversion. I&#8217;m assuming we all know <a href="http://en.wikipedia.org/wiki/Type_conversion">what that is</a>. We sometimes need to convert a 32-bit integer to 16 bits, or from unsigned long to a signed one, and while doing it, we need to be very careful. As the <a href="http://www.around.com/ariane.html">case of Ariane 5</a> shows, type conversion can sometimes blow up in your face.</p>
<p>The moral of the story is that if you&#8217;re going to use the same piece of software written for your old product (let&#8217;s say, the Ariane 4 missile) in your new product (Ariane 5, for instance) as well, you should take into consideration that the new product is most likely to be different.</p>
<p>In this case, the latter was much faster, so some velocity values that were never achieved on the previous version were reached on the new one, including a 32-bit integer value that was later converted to a 16-bit one. Of course, some part of the value was cut off by the conversion, leading to a crash &#8211; not a code crash, but of a missile crash. OUCH!</p>
<p>Bottom line: when stepping into that field, you aren&#8217;t alone. Giants walked there before you, and crashed.</p>
<p style="text-align: center"><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/z-r9cYp3tTE&hl=en_US&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/z-r9cYp3tTE&hl=en_US&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></p>
<h3>A bit of SIP</h3>
<p><a href="http://community.radvision.com/glossary/SIP/">SIP</a> has a nagging habit of retransmissions. Instead of warning you that you&#8217;re dialing your mother, and by the end of it, you will surely feel guilty of something, it actually insists on fulfilling your wish. Therefore, it sends an INVITE message, and waits half a second for a reply. If none is received, it sends another one, but this time waits a whole second. Then 2, then 4, then it continues trying every 4 seconds, until 32 seconds have passed since the initial INVITE. During all that time it never stops to ask, &#8220;Are you sure you <em>are</em> calling your mother?&#8221;</p>
<p>Here&#8217;s the &#8220;official&#8221; documentation for it from <a href="http://www.ietf.org/rfc/rfc3261.txt">RFC 3261</a>, section13.3.1.4:</p>
<p>The 2xx response is passed to the transport with an interval that starts at T1 seconds and doubles for each retransmission until it reaches T2 seconds (T1 and T2 are defined in Section 17). Response retransmissions cease when an ACK request for the response is received.</p>
<h3>The case in hand</h3>
<p>So we got a call from someone in Customer Support. A customer complained that the last INVITE retransmission was sent after 487 milliseconds instead of 4 seconds. In fact, the last INVITE they experienced should have never been sent, as 32 seconds already passed from the first INVITE. Luckily for us, the customer also supplied a log file with the full details. All our toolkits can generate such logs, which helps us a lot during debugging. It lists API calls, message details and lots of other stuff. For each entry, there is also a timestamp, which is also a huge help.</p>
<p>Here&#8217;s the gestalt (edited for your reading pleasure):</p>
<p><code>Received INVITE<br />
[...]<br />
19:47:35.238112 Sent 200 OK<br />
[...0.5s...]<br />
19:47:35.740140 Sent 200 OK (retransmission)<br />
[...1.0s...]<br />
19:47:36.741197 Sent 200 OK (retransmission)<br />
[...2.0s...]<br />
19:47:38.742312 Sent 200 OK (retransmission)<br />
[...4.0s...]<br />
[...]<br />
[...]<br />
19:47:58.748456 Sent 200 OK (retransmission)<br />
[...4.0s...]<br />
19:48:02.749685 Sent 200 OK (retransmission)<br />
[...4.0s...]<br />
19:48:06.750914 Sent 200 OK (retransmission)<br />
[...0.5s...]<br />
19:48:07.239942 Sent 200 OK (retransmission <strong>that should not happen</strong>)</code></p>
<h3>The Drill down</h3>
<p><a href="http://www.flickr.com/photos/jesuspresley/2558211848/"><img class="alignright" src="http://blog.radvision.com/images/2010/20100616-CodeOfContact-bug.jpg" alt="" width="320" height="240" /></a>When a timer expires, our code reports it using a callback. The callback checks what time it is, what should happen next, and if needed sets up a new timer. We use 64-bit variables to measure time in nanoseconds. However, our timer APIs, use 32-bit variables (that represent milliseconds). This means that when the timer is triggered, we get its current value in milliseconds, and then convert it to nanoseconds.</p>
<p>So before setting a new timer, we take the value in nanoseconds, and divide them by a million to convert them to milliseconds. Therefore, our timer callback checks the time and calculates the interval for the next timer, if any. After all, if 31 seconds have passed since the first INVITE, there is no point in setting a 4 second timer. When a timer is set, it should also compensate for processing time and all kinds of other stuff being done between timer sets.</p>
<p>You might ask yourself what is the problem with converting 4 seconds, in their nanoseconds representation, to milliseconds. There is none. But what if, due to some compensation, we need to convert an ugly number such as 3,999,999,999 nanoseconds to milliseconds? We end up with 3,999 milliseconds, losing a lot of precision &#8211; almost a whole millisecond. Then, when the timer is expired and the callback is called, all the calculations are inaccurate.</p>
<p>This was indeed the case here. The code should have realized that 32 seconds have already passed since the first INVITE, but due to inaccurate calculations, it concluded that another retransmission should be sent. That, and all the compensations that we were doing, yielded the last unneeded message to be sent after 487 milliseconds.</p>
<p>The funny thing is (at least, for those who think those things are funny) that we had all the information we needed to avoid this in the first place. After all, we had the nanosecond values. We just used the wrong numbers in a wrong way &#8211; we used the converted milliseconds value instead.</p>
<p>Needless to say, the fix was a single change in a single line of code, using the right numbers in the right way.</p>
<h3>Conclusion</h3>
<p>I remember reading an excellent and recommended book from MS-press, &#8220;<a href="http://www.amazon.com/Writing-Solid-Code-Microsoft-Programming/dp/1556155514">Writing Solid Code</a>&#8220;. While not addressing this problem specifically, it does deal a lot with type conversions and the funny crashes you will experience if being light headed about it.</p>
<p>Lucky for us, we&#8217;re not building missiles&#8230; yet.</p>
<p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/06/16/beware-type-conversion-can-get-you-to-crash/">Beware: Type Conversion Can Get You to Crash</a>
</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Fl857LqVH_g:e7SAhFjvsjs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Fl857LqVH_g:e7SAhFjvsjs:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=Fl857LqVH_g:e7SAhFjvsjs:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Fl857LqVH_g:e7SAhFjvsjs:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=Fl857LqVH_g:e7SAhFjvsjs:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Fl857LqVH_g:e7SAhFjvsjs:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Fl857LqVH_g:e7SAhFjvsjs:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=Fl857LqVH_g:e7SAhFjvsjs:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=Fl857LqVH_g:e7SAhFjvsjs:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CodeOfContact/~4/Fl857LqVH_g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.radvision.com/codeofcontact/2010/06/16/beware-type-conversion-can-get-you-to-crash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.radvision.com/codeofcontact/2010/06/16/beware-type-conversion-can-get-you-to-crash/</feedburner:origLink></item>
		<item>
		<title>Closing Connections and the TCP Sockets Heaven</title>
		<link>http://feedproxy.google.com/~r/CodeOfContact/~3/euX9-cME5Ig/</link>
		<comments>http://blog.radvision.com/codeofcontact/2010/06/02/closing-connections-and-the-tcp-sockets-heaven/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 11:42:01 +0000</pubDate>
		<dc:creator>Ran Arad</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[H.245]]></category>
		<category><![CDATA[TCP]]></category>
		<category><![CDATA[timeout]]></category>

		<guid isPermaLink="false">http://blog.radvision.com/codeofcontact/?p=92</guid>
		<description><![CDATA[<p>Story hour came early this week, when a colleague stuck his head in my office and asked why we wait before reusing an address on Windows Server 2003. So began a most harrowing tale, the strange case of the mysterious closing connections. It came from the beyond Once upon a time, in a protocol stack [...]</p><p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/06/02/closing-connections-and-the-tcp-sockets-heaven/">Closing Connections and the TCP Sockets Heaven</a>
</p>]]></description>
			<content:encoded><![CDATA[<p>Story hour came early this week, when a colleague stuck his head in my office and asked why we wait before reusing an address on Windows Server 2003. So began a most harrowing tale, the strange case of the mysterious closing connections.</p>
<h3>It came from the beyond</h3>
<p>Once upon a time, in a protocol stack far, far away, <a href="http://community.radvision.com/glossary/H245/">H.245</a> sockets were dying inexplicably. Packet captures on both sides saw the other side as closing the connection immediately after it was opened, causing the call to fail. It only happened during high load, and after further inquiry we discovered that it only happened when a socket was opened immediately after a socket with the same address was closed. Could it be that the socket was communicating with the dead?</p>
<h3>Where do dead sockets go?</h3>
<p><a href="http://www.flickr.com/photos/steelight/66130129/"><img class="alignleft" src="http://blog.radvision.com/images/2010/20100602-CodeOfContact-sockets-heaven.jpg" alt="" width="320" height="256" /></a>If they were good sockets, they go to socket heaven, also known as the TIME_WAIT state. In socket heaven, they wait until they are reborn. In Linux socket heaven, they wait 60 seconds. In Windows socket heaven, they wait 120 or 240 seconds, depending on the specific version. In socket terms, these times are an eternity, two eternities and four eternities accordingly. The socket&#8217;s address cannot be used in this time, but there is a shortcut: if the socket is set to reuse the address, it can be used again instantly.</p>
<p>Here&#8217;s the catch: if a packet somehow is delayed in the network, the new socket using the same addresses treats it as a packet meant for it. If the packet was meant to terminate the dead connection, for instance, if both sides terminated communications at the same time, the new socket will terminate. After close examination, we confirmed that this is what was happening in our case: both sides closed the H.245 connection at the same time, and then one of them reused the address and tried to reconnect, immediately receiving the connection close message left over from the previous connection and closing the connection and the call. We had to disable the &#8216;reuse address&#8217; option, which forces the connection to wait, which in turn can cause the ports to run out under high load.</p>
<p>So what can be done to solve this issue?</p>
<h3>1. Increase the size of heaven</h3>
<p>Windows used a default port range of 1025 through 4999, which isn&#8217;t nearly enough. In Windows Vista and in Windows Server 2008, the new default start port is 49152, and the default end port is 65535 &#8211; which should last until the ports are available again in any reasonable traffic. On Linux it should be higher, but it depends on the exact kernel used. There is a nice guide <a href="http://www.ncftp.com/ncftpd/doc/misc/ephemeral_ports.html">here</a> for increasing the port range on any system.</p>
<h3>2. Limit the time in heaven</h3>
<p>The fact is 60 seconds is a lot of time, not to mention 120 or 240 seconds. I recommend configuring Windows to a shorter delay (<a href="http://technet.microsoft.com/en-us/library/cc938217.aspx">here</a>), or tune up you Unix/Linux (<a href="http://www.cromwell-intl.com/security/security-stack-hardening.html">here</a> and <a href="http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.websphere.express.doc/info/exp/ae/tprf_tunelinux.html">here</a>). In fact, <a href="http://lmgtfy.com/?q=operating+system+tcp+tuning">let me Google that for you</a>. I see no reason to use anything above 60 seconds, and even 30 seconds seem like eternity, in network terms, unless you expect to work in a high latency network, in which case, just take the highest latency expected and double it.</p>
<p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/06/02/closing-connections-and-the-tcp-sockets-heaven/">Closing Connections and the TCP Sockets Heaven</a>
</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=euX9-cME5Ig:CvmrbjItLQo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=euX9-cME5Ig:CvmrbjItLQo:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=euX9-cME5Ig:CvmrbjItLQo:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=euX9-cME5Ig:CvmrbjItLQo:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=euX9-cME5Ig:CvmrbjItLQo:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=euX9-cME5Ig:CvmrbjItLQo:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=euX9-cME5Ig:CvmrbjItLQo:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=euX9-cME5Ig:CvmrbjItLQo:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=euX9-cME5Ig:CvmrbjItLQo:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CodeOfContact/~4/euX9-cME5Ig" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.radvision.com/codeofcontact/2010/06/02/closing-connections-and-the-tcp-sockets-heaven/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.radvision.com/codeofcontact/2010/06/02/closing-connections-and-the-tcp-sockets-heaven/</feedburner:origLink></item>
		<item>
		<title>If You Were A Fly On The Wall At These Great Companies</title>
		<link>http://feedproxy.google.com/~r/CodeOfContact/~3/dLBiR3uAvzI/</link>
		<comments>http://blog.radvision.com/codeofcontact/2010/04/14/if-you-were-a-fly-on-the-wall-at-these-great-companies/#comments</comments>
		<pubDate>Wed, 14 Apr 2010 11:53:59 +0000</pubDate>
		<dc:creator>Ran Arad</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[buzz]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[interface]]></category>
		<category><![CDATA[KiSS]]></category>
		<category><![CDATA[RADVISION]]></category>
		<category><![CDATA[support]]></category>
		<category><![CDATA[VC240]]></category>
		<category><![CDATA[windows mobile]]></category>

		<guid isPermaLink="false">http://blog.radvision.com/codeofcontact/?p=90</guid>
		<description><![CDATA[<p>Here are a few conversations that went on (mostly in my feverish imagination) illustrating the consequences of our diminishing attention spans, and their exploitations. Google offices, a few months ago -       You see, the process is very streamlined. -       Is it? -       The user clicks &#8216;buzz&#8217;, gets a screen of privacy options, then a screen [...]</p><p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/04/14/if-you-were-a-fly-on-the-wall-at-these-great-companies/">If You Were A Fly On The Wall At These Great Companies</a>
</p>]]></description>
			<content:encoded><![CDATA[<p>Here are a few conversations that went on (mostly in my feverish imagination) illustrating the consequences of our diminishing attention spans, and their exploitations.</p>
<p><em>Google offices, a few months ago</em></p>
<p><img class="alignright" src="http://blog.radvision.com/images/2010/20100414-CodeOfContact-Google-Buzz.jpg" alt="" width="180" height="227" />-       You see, the process is very streamlined.</p>
<p>-       Is it?</p>
<p>-       The user clicks &#8216;buzz&#8217;, gets a screen of privacy options, then a screen of his contacts to choose from.</p>
<p>-       You say?!</p>
<p>-       Ok, maybe it&#8217;s not that streamlined.</p>
<p>-       Is it.</p>
<p>-       I guess we could just start up with some defaults.</p>
<p>-       You say?</p>
<p>-       And pick all contacts as defaults, it will be ok for most people.</p>
<p>-       Is it…</p>
<p><em>Apple offices, a few months ago</em></p>
<p><a href="http://www.flickr.com/photos/ottopeura/4494329825/"><img class="alignright" src="http://blog.radvision.com/images/2010/20100414-CodeOfContact-Apple-iPad.jpg" alt="" width="180" height="237" /></a>-       You see, sir, we have great plans for the iPad. We&#8217;ll add multitasking, drag and drop, an SD slot, flash support, a camera – two, in fact, and we&#8217;ll write an open SDK for it!</p>
<p>-       No, no, no, no, double-no, and <strong>big</strong> no.</p>
<p>-       What? But the new UI, it&#8217;s almost ready, we have a new concept that will re-re-re-invent the whole market.</p>
<p>-       I. Want.</p>
<p>-       Yes?</p>
<p>-       An iPhone.</p>
<p>-       Right…</p>
<p>-       Only</p>
<p>-       Yes…?</p>
<p>-       Bigger.</p>
<p>-       Bigger, sir?</p>
<p>-       Bigger.</p>
<p>-       Not, say, better, with more features, re-re-re-revolutionizing-</p>
<p>-       You have an iPhone, right?</p>
<p>-       Of course, sir.</p>
<p>-       Don&#8217;t you think it&#8217;s great?</p>
<p>-       Why, yes, sir!</p>
<p>-       I want it to be like the iPhone… only bigger.</p>
<p>-       Right on it, sir.</p>
<p><em>Microsoft offices, a few months ago</em></p>
<p>-       We have this smart copy-paste feature.</p>
<p>-       Which part of <a href="http://en.wikipedia.org/wiki/KISS_principle">KISS</a> did you fail to understand?</p>
<p>-       No, it&#8217;s really cool. It has a history, adapts to the destination, synchronizes, offers suggestions-</p>
<p>-       SUGGESTIONS? SUGGESTIONS?! We don&#8217;t want another clippy the sodding office paper clip on our hands, that&#8217;s the last thing we need now!</p>
<p>-       But most testers said-</p>
<p>-       Let me see that! Ha! 20% said it was &#8220;confusing at start&#8221;, and 40% said they &#8220;could have done without it&#8221;. Forty percent!</p>
<p>-       But-but-</p>
<p>-       Look here – the Windows 7 Phone Series will have NO copy-paste! None! Code it out, NOW!</p>
<p style="text-align: center"><a href="http://www.imagegenerator.net/create/clippy/"><img class="alignnone" src="http://blog.radvision.com/images/2010/20100414-CodeOfContact-Microsoft-Clippy.jpg" alt="" width="392" height="542" /></a></p>
<p><em> RADVISION offices, a few months ago</em></p>
<p><img class="alignright" src="http://blog.radvision.com/images/2010/20100414-CodeOfContact-RADVISION-VC240.jpg" alt="" width="240" height="160" />-       You see, the VC240 interface is much simpler than that of existing endpoints. We got great reviews on it.</p>
<p>-       Yes, I see. Just dial and send. All the options are tucked away in menus.</p>
<p>-       No interface like it. Great reviews.</p>
<p><hr />
<table border="0" width="100%" cellpadding="0">
<tr>
<td>
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1"><img src="http://blog.radvision.com/images/eBook/eBook_feed_64x64.jpg" ></a></td>
<td width="100%">
<a href="http://blog.radvision.com/videooverenterprise/wp-content/plugins/download-monitor/download.php?id=1">Download your free eBook guide on Video Conferencing, the Enterprise and You</a>.<p>Post from: <a href="http://blog.radvision.com/videooverenterprise">Video over Enterprise</a></p>
</td>
</tr>
</table>
<hr /><br/><br/><a href="http://blog.radvision.com/codeofcontact/2010/04/14/if-you-were-a-fly-on-the-wall-at-these-great-companies/">If You Were A Fly On The Wall At These Great Companies</a>
</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=dLBiR3uAvzI:BtBILTGTmjI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=dLBiR3uAvzI:BtBILTGTmjI:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=dLBiR3uAvzI:BtBILTGTmjI:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=dLBiR3uAvzI:BtBILTGTmjI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=dLBiR3uAvzI:BtBILTGTmjI:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=dLBiR3uAvzI:BtBILTGTmjI:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=dLBiR3uAvzI:BtBILTGTmjI:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/CodeOfContact?a=dLBiR3uAvzI:BtBILTGTmjI:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/CodeOfContact?i=dLBiR3uAvzI:BtBILTGTmjI:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/CodeOfContact/~4/dLBiR3uAvzI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.radvision.com/codeofcontact/2010/04/14/if-you-were-a-fly-on-the-wall-at-these-great-companies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.radvision.com/codeofcontact/2010/04/14/if-you-were-a-fly-on-the-wall-at-these-great-companies/</feedburner:origLink></item>
	</channel>
</rss>
