<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog &#124; BenHollis.net &#187; TopProcess</title>
	<atom:link href="http://benhollis.net/blog/tags/topprocess/feed/" rel="self" type="application/rss+xml" />
	<link>http://benhollis.net/blog</link>
	<description>News about BenHollis.net and articles about Ben&#039;s interests</description>
	<lastBuildDate>Fri, 04 Jun 2010 05:39:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Updates to JSONView, XBList, and TopProcess</title>
		<link>http://benhollis.net/blog/2009/10/05/updates-to-jsonview-xblist-and-topprocess/</link>
		<comments>http://benhollis.net/blog/2009/10/05/updates-to-jsonview-xblist-and-topprocess/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 07:30:15 +0000</pubDate>
		<dc:creator>Ben Hollis</dc:creator>
				<category><![CDATA[JSONView]]></category>
		<category><![CDATA[Sidebar]]></category>
		<category><![CDATA[XBList]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Gadgets]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[TopProcess]]></category>
		<category><![CDATA[Windows Sidebar]]></category>
		<category><![CDATA[Xbox 360]]></category>
		<category><![CDATA[xbox live]]></category>

		<guid isPermaLink="false">http://brh.numbera.com/blog/?p=371</guid>
		<description><![CDATA[I&#8217;ve finally gotten around to doing some maintenance updates on three of my most-used bits of software (JSONView, XBList, and TopProcess), all in the last couple weeks. Now that they&#8217;re all approved and live, I thought I&#8217;d summarize what&#8217;s changed. JSONView 0.3 JSONView 0.3 is now available at addons.mozilla.org. This fixes an error that was [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve finally gotten around to doing some maintenance updates on three of my most-used bits of software (<a href="http://jsonview.com">JSONView</a>, <a href="http://xblist.com">XBList</a>, and <a href="http://brh.numbera.com/software/sidebargadgets">TopProcess</a>), all in the last couple weeks. Now that they&#8217;re all approved and live, I thought I&#8217;d summarize what&#8217;s changed.</p>
<h4><a href="http://jsonview.com">JSONView 0.3</a></h4>
<p><a href="http://jsonview.com">JSONView</a> 0.3 is now available at <a href="https://addons.mozilla.org/en-US/firefox/addon/10869/">addons.mozilla.org</a>. This fixes an error that was showing up when really large JSON files were being displayed, and adds a feature that displays empty arrays and object on one line instead of on two (and doesn&#8217;t display the expand/collapse button for them). I also put in some preliminary support for <a href="http://en.wikipedia.org/wiki/JSON#JSONP">JSONP</a>, based on a patch submitted by Gabriel Barros. The catch is that it only works with content served with the &#8220;application/json&#8221; MIME type, which is actually not the correct MIME type for JSONP &#8211; it should be &#8220;text/javascript&#8221; or another JavaScript type. Unfortunately I haven&#8217;t been able to figure out how to get Firefox to let me handle &#8220;text/javascript&#8221; the way I do with &#8220;application/json&#8221; &#8211; it seems to be special-cased or something. If any Firefox gurus are reading and know a solution, please let me know! I was holding onto this release for a while hoping to fix that, but I decided that releasing <i>something</i> was better than nothing, so it&#8217;s out there and you can play with it. <a href="http://brh.numbera.com/software/jsonview/jsonp.json">You can see an example JSONP response with the callback highlighted here.</a> I did notice a bug with the 0.3 release right after it was approved &#8211; if a value is 0 or false, it shows up as blank. I&#8217;ll have that bug fixed with the next release, which should be very soon. It&#8217;s great to see that <a href="https://addons.mozilla.org/en-US/statistics/addon/10869/">JSONView has become so popular</a>, with over 50,000 downloads and about 12,000 regular users.</p>
<h4><a href="http://xblist.com">XBList 3.2.4</a></h4>
<p>Halo 3: ODST was released a couple weeks ago, and Bungie redesigned their site a bit to include ODST info in your Service Record. This included changing the pages just enough that <a href="http://xblist.com">XBList</a> got confused trying to figure out emblems for people who had never played Halo, and started showing the wrong emblems for those people (only if you prefer Halo emblems to Xbox emblems, which isn&#8217;t the default). Not a huge bug, but I took the opportunity to clean up a bunch of stuff in XBList and put out a little release. In addition to the Halo emblem fix, I fixed a bug where your settings could get corrupted and you wouldn&#8217;t be able to start XBList. I also cleaned up the menus and settings, consolidating the Halo links into one item, and removing the option to choose a custom notification sound or turn off debug logging. The debug log is much easier to get to if you&#8217;re having trouble &#8211; previously I had people dig through their Application Data folders for the log, but now there&#8217;s an item in the Help menu that opens the debug log directly. Paired with some much more detailed logging, I should be able to fix future problems much more easily. I also changed the system tray icon to bring XBList to the front on a single click rather than a double click, since that feels much more natural in Windows 7. Lastly (and probably not too importantly for most people), I&#8217;m storing emblems in your local Windows profile now, instead of the roaming profile. For the few people who use XBList and have roaming profiles enabled, this should save you some sync time. Anyway, you should have been prompted to update when I pushed the update two weeks ago, but if you haven&#8217;t gotten it yet <a href="http://xblist.com">you should download and install it now</a>. I still have plans for a major overhaul of XBList, but it&#8217;s low on my list of priorities &#8211; XBList is still pretty popular, but not as much as it used to be, with maybe 5,000 active users.</p>
<h4><a href="http://brh.numbera.com/software/sidebargadgets/">TopProcess 1.4</a></h4>
<p>This last update has been a long time coming. Ever since I installed Internet Explorer 8, the <a href="http://brh.numbera.com/software/sidebargadgets/">TopProcess</a> sidebar gadget has been randomly crashing. I&#8217;m not sure what changed in Internet Explorer to make it screw up every so often, but it does. However, it only crashes after running for a few days, so for months I&#8217;ve been tweaking the code a bit, then waiting until it crashes, then tweaking some more, rinse, repeat. I&#8217;ve finally nailed it down to the point where crashes are very rare, and then I added some code that automatically resets the gadget when it crashes. So you should never see it mess up again. There is also a gadget log file in the gadget&#8217;s install directory that I&#8217;m using to store errors, so it should be easier to troubleshoot in the future. Lastly, Jean-Pierre van Riel contributed a patch that added IO tracking to TopProcess, so there is now a third way to view your processes. This view shows you the total IO usage (combined bytes in and out, per second) which seems to cover both disk and network access. <a href="http://brh.numbera.com/software/sidebargadgets/">Get the update from me</a> or <a href="http://gallery.live.com/liveItemDetail.aspx?li=681102c2-5dde-44d2-a33a-96dbff32517a">from Windows Live Gallery</a> and be sure to rate the gadget. I&#8217;m excited to see that it&#8217;s been downloaded over 100,000 times from WLG (plus who knows how many downloads from my site).</p>
]]></content:encoded>
			<wfw:commentRss>http://benhollis.net/blog/2009/10/05/updates-to-jsonview-xblist-and-topprocess/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>TopProcess Sidebar Gadget &#8211; Now with memory usage display</title>
		<link>http://benhollis.net/blog/2007/10/08/topprocess-sidebar-gadget-now-with-memory-usage-display/</link>
		<comments>http://benhollis.net/blog/2007/10/08/topprocess-sidebar-gadget-now-with-memory-usage-display/#comments</comments>
		<pubDate>Tue, 09 Oct 2007 06:24:11 +0000</pubDate>
		<dc:creator>Ben Hollis</dc:creator>
				<category><![CDATA[Sidebar]]></category>
		<category><![CDATA[Gadgets]]></category>
		<category><![CDATA[memory]]></category>
		<category><![CDATA[TopProcess]]></category>
		<category><![CDATA[Windows Sidebar]]></category>
		<category><![CDATA[Windows Vista]]></category>

		<guid isPermaLink="false">http://brh.numbera.com/blog/index.php/2007/10/08/topprocess-sidebar-gadget-now-with-memory-usage-display/</guid>
		<description><![CDATA[I didn&#8217;t think I had anything more to do with my TopProcess Windows Vista Sidebar Gadget after its minor update a couple months ago. However, I got a suggestion emailed to me from a TopProcess user that was easy to implement and adds a lot to the gadget. So, TopProcess now allows you to choose [...]]]></description>
			<content:encoded><![CDATA[<p>I didn&#8217;t think I had anything more to do with my <a href="http://brh.numbera.com/software/sidebargadgets/">TopProcess Windows Vista Sidebar Gadget</a> after its minor update <a href="http://brh.numbera.com/blog/index.php/2007/06/25/top-process-windows-sidebar-gadget-updated/">a couple months ago</a>. However, I got a suggestion emailed to me from a TopProcess user that was easy to implement and adds a lot to the gadget. So, TopProcess now allows you to choose between measuring the top consumers of CPU, <strong>and the top consumers of RAM</strong>. So all you need to do is add two copies of the gadget to your sidebar, and set one to track memory and one to track CPU. Check it out (Firefox users will not be surprised that it always sits at the top):</p>
<p class="blogimage"><a href="http://brh.numbera.com/software/sidebargadgets/"><img src="http://brh.numbera.com/software/images/screenshot/topprocess2.jpg" /></a></p>
<p>In CPU mode it displays percentages, and in RAM mode it displays absolute memory footprint values. Remember that some apps (like .NET or Java apps) look like they&#8217;re taking a lot of memory, but will give it back when you get low on RAM, so it&#8217;s not a worry if they gobble up some extra RAM when you&#8217;ve got it. Of course, for most native apps (like Firefox or Photoshop), the value displayed in TopProcess represents a less flexible chunk of resources.</p>
<p>A couple of bugs and less-than-desirable behaviors have been fixed, too. Whenever you change settings the changes will be reflected in the gadget immediately, and turning text fade off and then on again won&#8217;t cause text to overlap in a big mess. Also, some of the comments on the <a href="http://gallery.live.com/liveItemDetail.aspx?li=681102c2-5dde-44d2-a33a-96dbff32517a">Windows Live Gallery page for TopProcess</a> suggest that people have been seeing performance problems with the gadget. I haven&#8217;t actually seen any problems myself, but I went through the code and tightened it up a bit here and there &#8211; hopefully it&#8217;ll work better for those people.</p>
<p>So <a href="http://brh.numbera.com/software/sidebargadgets/">pick up the new version</a>, rate it on <a href="http://gallery.live.com/liveItemDetail.aspx?li=681102c2-5dde-44d2-a33a-96dbff32517a">Windows Live Gallery</a>, and enjoy the new functionality.</p>
<p>PS: I was holding this back until my friend could come through with the Russian and Japanese translations, but he&#8217;s just too busy and I had to fall back to Google Translate. I apologize if the translations are awful. If you would like to help fix them, or to translate TopProcess into your favorite language, please <a href="mailto:brh@numbera.com">contact me</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://benhollis.net/blog/2007/10/08/topprocess-sidebar-gadget-now-with-memory-usage-display/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Top Process Windows Sidebar Gadget Updated</title>
		<link>http://benhollis.net/blog/2007/06/25/top-process-windows-sidebar-gadget-updated/</link>
		<comments>http://benhollis.net/blog/2007/06/25/top-process-windows-sidebar-gadget-updated/#comments</comments>
		<pubDate>Tue, 26 Jun 2007 04:21:14 +0000</pubDate>
		<dc:creator>Ben Hollis</dc:creator>
				<category><![CDATA[Sidebar]]></category>
		<category><![CDATA[Gadgets]]></category>
		<category><![CDATA[localization]]></category>
		<category><![CDATA[TopProcess]]></category>
		<category><![CDATA[Windows Sidebar]]></category>
		<category><![CDATA[Windows Vista]]></category>

		<guid isPermaLink="false">http://brh.numbera.com/blog/index.php/2007/06/25/top-process-windows-sidebar-gadget-updated/</guid>
		<description><![CDATA[Just a quick update on the Top Process Windows Sidebar Gadget I made a couple months ago. First, I&#8217;ve added an option to disable the crossfade effect whenever the list of processes is updated. When this setting is checked, there&#8217;s no more smooth fade, but your text is also not bold. I actually prefer it [...]]]></description>
			<content:encoded><![CDATA[<p>Just a quick update on the <a href="http://brh.numbera.com/software/sidebargadgets/">Top Process Windows Sidebar Gadget</a> I made <a href="http://brh.numbera.com/blog/index.php/2007/04/22/top-processes-windows-sidebar-gadget/">a couple months ago</a>. First, I&#8217;ve added an option to disable the crossfade effect whenever the list of processes is updated. When this setting is checked, there&#8217;s no more smooth fade, but your text is also not bold. I actually prefer it without the fade, and based on some feedback I&#8217;ve gotten, this will be a welcome change.</p>
<p>The second change is that Top Process has been translated into 3 more languages. This is the first software I&#8217;ve ever written that has been localized, and I&#8217;m super excited, even though there wasn&#8217;t that much to translate. User Stefano Pirovano contributed an Italian translation, and my multilingual college buddy Mitch provided Japanese and Russian translations. If anyone else wants to take a crack at it, just email me. Hopefully some of my .NET stuff can be ready for localization at some point too.</p>
]]></content:encoded>
			<wfw:commentRss>http://benhollis.net/blog/2007/06/25/top-process-windows-sidebar-gadget-updated/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Top Processes Windows Sidebar Gadget</title>
		<link>http://benhollis.net/blog/2007/04/22/top-processes-windows-sidebar-gadget/</link>
		<comments>http://benhollis.net/blog/2007/04/22/top-processes-windows-sidebar-gadget/#comments</comments>
		<pubDate>Mon, 23 Apr 2007 00:39:48 +0000</pubDate>
		<dc:creator>Ben Hollis</dc:creator>
				<category><![CDATA[Sidebar]]></category>
		<category><![CDATA[Gadgets]]></category>
		<category><![CDATA[TopProcess]]></category>
		<category><![CDATA[Windows Sidebar]]></category>
		<category><![CDATA[Windows Vista]]></category>

		<guid isPermaLink="false">http://brh.numbera.com/blog/index.php/2007/04/22/top-processes-windows-sidebar-gadget/</guid>
		<description><![CDATA[Last weekend I decided that I would try my hand at developing a Windows Sidebar Gadget. I&#8217;ve got a few ideas about gadgets that I&#8217;d like to make, so I thought I&#8217;d whip up a quick, useful gadget to get familiar with the platform. I ended up making the TopProcess gadget. It&#8217;s basically a version [...]]]></description>
			<content:encoded><![CDATA[<p>Last weekend I decided that I would try my hand at developing a <a href="http://www.microsoft.com/windows/products/windowsvista/features/details/sidebargadgets.mspx">Windows Sidebar Gadget</a>. I&#8217;ve got a few ideas about gadgets that I&#8217;d like to make, so I thought I&#8217;d whip up a quick, useful gadget to get familiar with the platform. I ended up making the TopProcess gadget. It&#8217;s basically a version of the standard UNIX <kbd>top</kbd> command. It&#8217;ll show the top X processes on your computer, which are the processes taking the most CPU. It just sits there in the sidebar updating that list every few seconds, letting you know what&#8217;s chewing up your dual cores.</p>
<p class="blogimage"><a href="http://brh.numbera.com/software/sidebargadgets/"><img src="http://brh.numbera.com/software/images/screenshot/topprocess.jpg" alt='TopProcess Screenshot' /></a></p>
<p>You can grab it from me on my new <a href="http://brh.numbera.com/software/sidebargadgets/">Sidebar Gadgets</a> page, or from <a href="http://gallery.live.com/liveItemDetail.aspx?li=681102c2-5dde-44d2-a33a-96dbff32517a&#038;l=1">Windows Live Gallery</a>. If you like it, please rate it or review it on Windows Live Gallery, so more people get to see it.</p>
<p><span id="more-76"></span></p>
<p>TopProcess is pretty simple. It uses WMI, which is very straightforward, to get the kernel and user time for each process on your system, figures out the difference in times between now and the last time it looked, sorts them, and displays the top X (configurable) on the gadget. I got a little fancy with the display side of things, making the text fade between updates, and making the gadget scale correctly when you change the number of processes to display.</p>
<p>When I first got Windows Vista, I was pretty surprised that there weren&#8217;t more gadgets available. As time has passed, not a ton of gadgets have shown up on Windows Live Gallery. I was sure somebody would have made a top process gadget already. But after actually doing it myself, I understand why people haven&#8217;t been pumping these things out. Making a Windows Sidebar Gadget is really, really frustrating. First, instead of going with .NET and WPF, two awesome Windows-only technologies, the Sidebar team went with HTML and JavaScript as the basis of all gadgets. And if you <em>do</em> want more capability than JavaScript gives you, you need to start pulling in ActiveX objects, VBScript-style. So if you were dreaming of easy animation, drawing, and UI, and access to the power and ease of use of the .NET platform and Visual Studio, forget it. Think of it more like developing web pages for Internet Explorer (no <a href="http://getfirebug.com">Firebug</a> here), but without even an error dialog to tell you if your script has failed. It&#8217;s a mess of HTML, CSS, and JavaScript bugs and quirks. Compounding this is the fact that the <a href="http://msdn2.microsoft.com/en-us/library/aa965853.aspx">MSDN documentation</a> for Sidebar is some of the worst documentation I&#8217;ve ever seen. It ranges from completely unhelpful to misleading, and it&#8217;s missing any examples or even code snippets that would give you an idea of how to actually use it. Who goes through the trouble to build what&#8217;s essentially an application development platform, and then not even bother to write half-decent documentation?</p>
<p>As an example of how frustrating it was to make this gadget, take the feature of fading text. This should be simple &#8211; the new text fades in while the old text fades out. Immediately I was hit by a problem &#8211; Internet Explorer doesn&#8217;t support the <kbd>opacity</kbd> CSS keyword. So I had to insert a <kbd>filter</kbd> key that put on some crazy DirectX filter on the text. The most immediate effect of this was disabling ClearType on the text, and inexplicably bolding my font. I still can&#8217;t explain this. Frustrated with my subpar text rendering, I turned to the <a href="http://msdn2.microsoft.com/en-us/library/aa359342.aspx"><kbd>gText</kbd></a> object. It took me lots of searching just to figure out that, unlike <a href="http://msdn2.microsoft.com/en-us/library/aa359342.aspx"><kbd>gBackground</kbd></a>, there is no corresponding HTML element for <kbd>gText</kbd>. It must be created, in script, from <kbd>gBackground</kbd>. So I made myself a <kbd>gBackground</kbd>, and struggled for a while before realizing that it&#8217;s essentially a stunted version of the <a href="http://www.whatwg.org/specs/web-apps/current-work/#the-canvas"><kbd>canvas</kbd></a> object in HTML5. So I needed a <kbd>gBackground</kbd> that spanned my whole gadget. But I didn&#8217;t have a single background image for the whole gadget &#8211; I intended to compose the background of multiple images, so it could scale correctly with more or less processes displayed. <kbd>gBackground</kbd> requires you specify a single image before you can add more images onto it. So I had to make a 1px by 1px transparent PNG that I stretched over the background of the gadget. Remember doing that from the old days with table-layout HTML design? It brings me back. Anyway, now I could add my <kbd>gText</kbd> objects. These guys <em>do</em> support an <kbd>opacity</kbd> property, and after working out how to track them between updates (they aren&#8217;t included in the DOM), I had replicated the fading behavior that I had done with HTML. The result? Exactly the same. Except it&#8217;s harder to use <kbd>gText</kbd> , and there&#8217;s no way to remove <kbd>gText</kbd> objects once you&#8217;ve added them to a <kbd>gBackground</kbd> unless you remove <em>all</em> the objects on the <kbd>gBackground</kbd>. It&#8217;s really nuts. I ended up rolling back all my changes and just going with the HTML fading. Sorry about the awful font rendering, but I think at this point it&#8217;s not my fault.</p>
<p>There are more problems with the Sidebar platform of course. For example, in the manifest for a gadget there&#8217;s a way to specify your copyright, but no way to link to a license. I <em>know</em> Microsoft is starting to get Open Source &#8211; they should understand that licensing is important. And if they want people to be able to find new gadgets for their Sidebar, <a href="http://gallery.live.com/">Windows Live Gallery</a> is not the way to do it. It suffers from the same confusion as all the Live products, including Live Spaces gadgets on the same page as Sidebar gadgets without really indicating which is which. It&#8217;s just really depressing that the Sidebar ended up being such a lame feature. I remember the coverage before the &#8220;Longhorn reset&#8221; that promised the Sidebar as a unification of the disparate notification methods in Windows, replacing the system tray as well as providing hosting for mini WPF applications. Instead we get a lame reimplementation of Yahoo! Widgets or Apple&#8217;s Dashboard, without any polish or documentation. It&#8217;s really just sad. </p>
]]></content:encoded>
			<wfw:commentRss>http://benhollis.net/blog/2007/04/22/top-processes-windows-sidebar-gadget/feed/</wfw:commentRss>
		<slash:comments>32</slash:comments>
		</item>
	</channel>
</rss>
