<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Panopticon Central</title>
	<atom:link href="http://panopticoncentral.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://panopticoncentral.net</link>
	<description>a blog on programming languages and other stuff...</description>
	<lastBuildDate>Wed, 22 Feb 2012 23:52:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='panopticoncentral.net' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/70d417798c6882902662ba669f4851b7?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Panopticon Central</title>
		<link>http://panopticoncentral.net</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://panopticoncentral.net/osd.xml" title="Panopticon Central" />
	<atom:link rel='hub' href='http://panopticoncentral.net/?pushpress=hub'/>
		<item>
		<title>I used to be a blogger like you&#8230;</title>
		<link>http://panopticoncentral.net/2012/02/22/i-used-to-be-a-blogger-like-you/</link>
		<comments>http://panopticoncentral.net/2012/02/22/i-used-to-be-a-blogger-like-you/#comments</comments>
		<pubDate>Wed, 22 Feb 2012 23:52:12 +0000</pubDate>
		<dc:creator>paulv</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[new job]]></category>

		<guid isPermaLink="false">https://panopticoncentral.wordpress.com/?p=38</guid>
		<description><![CDATA[…until, well, you know. I realize it’s been quiet around here. Sorry about that. At any rate, after about 18 months in the SQL engine, I’ve moved yet again. I think I gave a good run at it, but in the end I decided that it wasn’t working and that it was time to do [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=38&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>…until, well, <a href="http://knowyourmeme.com/memes/i-took-an-arrow-in-the-knee">you know</a>. I realize it’s been quiet around here. Sorry about that.</p>
<p>At any rate, after about 18 months in the SQL engine, I’ve moved yet again. I think I gave a good run at it, but in the end I decided that it wasn’t working and that it was time to do something different. Ironically, I think the biggest reason SQL ended up not working out for me was something that the team decided to do <em>right</em>, namely going all-in on the cloud (i.e. SQL Azure). The problem was that when I originally joined the team, they weren’t quite there yet. The SQL organization was just starting to look beyond SQL Server 2012, all options were on the table, and one of those options was that the team might be willing to take a harder look at the language processing parts of the engine and their future. Then, about a month or so after I moved over the team coalesced around the decision to go all-in on the cloud and make SQL Azure the most amazing cloud data platform possible. And while I think that was totally the right call, it did mean that priorities got shifted and there just wasn’t going to be the kind of headroom to do the kinds of things that I was interested in doing. So instead I got to spend about a year and a half learning a lot of interesting things about the cloud and running a service in the cloud. But in the end, that’s not where my heart lay and so I decided to try something new.</p>
<p>Well, sort of new.</p>
<p>You see, I was chatting with some of my old compatriots back in the Developer Division (including some people I’d spent a <em>lot</em> of time working with on VB) and found that they were doing all kinds of interesting things with this weird little language that apparently a lot of people think sucks. It turns out that somewhere along the line this language that a lot of people think sucks somehow became this totally important language that lots of people were very, very interested in. And they were looking for some more people to work on it. And would I be interested? After thinking about it a bit, I decided that it could possibly be a lot of fun to work on a language that most people deride as a horrible language but which somehow is the crucial underpinning of lots of important things. (Reminded me of some stuff I worked on a few jobs back.) So I decided, why the heck not?</p>
<p>So, I’m now a newly-minted member of the Javascript team. Part of my job is just contributing in any way that’s useful to all the cool stuff that we’re already doing (yay Windows!). Part of my job is to do some looking forward as to where we might go with Javascript. After all, there’s lots of interesting things being done with Javascript beyond just running web pages.</p>
<p>So now you know.</p>
<p><em>You should also follow me on Twitter </em><a href="http://twitter.com/panopticoncntrl"><em>here</em></a><em>.</em></p>
<br />Filed under: <a href='http://panopticoncentral.net/category/javascript/'>Javascript</a>, <a href='http://panopticoncentral.net/category/microsoft/'>Microsoft</a> Tagged: <a href='http://panopticoncentral.net/tag/javascript-2/'>javascript</a>, <a href='http://panopticoncentral.net/tag/new-job/'>new job</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/panopticoncentral.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/panopticoncentral.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/panopticoncentral.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/panopticoncentral.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/panopticoncentral.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/panopticoncentral.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/panopticoncentral.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/panopticoncentral.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/panopticoncentral.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/panopticoncentral.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/panopticoncentral.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/panopticoncentral.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/panopticoncentral.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/panopticoncentral.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=38&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://panopticoncentral.net/2012/02/22/i-used-to-be-a-blogger-like-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1e95163b64132ba770018919261a2342?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paulvick</media:title>
		</media:content>
	</item>
		<item>
		<title>Software patents, revisited</title>
		<link>http://panopticoncentral.net/2012/02/16/software-patents-revisited/</link>
		<comments>http://panopticoncentral.net/2012/02/16/software-patents-revisited/#comments</comments>
		<pubDate>Thu, 16 Feb 2012 18:23:15 +0000</pubDate>
		<dc:creator>paulv</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[IsNot]]></category>
		<category><![CDATA[Software Patents]]></category>

		<guid isPermaLink="false">https://panopticoncentral.wordpress.com/?p=36</guid>
		<description><![CDATA[So, seven years after I managed to make slashdot, now I’ve managed to make the front page of Hacker News. I have to say, the IsNot patent is the gift that just keeps on giving. I think my comments from the original patent discussion still apply, quoted here since the original post has been lost: [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=36&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So, seven years after I managed to make <a href="http://yro.slashdot.org/story/05/02/22/1310232/Microsofts-IsNot-Patent-Continued">slashdot</a>, now I’ve managed to make the front page of <a href="http://news.ycombinator.com/item?id=3598965">Hacker News</a>. I have to say, the IsNot patent is the gift that just keeps on giving. I think my comments from the original patent discussion still apply, quoted here since the original post has been lost:</p>
<blockquote><p>In the wake of the IsNot patent brouhaha, aside from the &quot;you are scum&quot; comments, people have had several reasonable questions about my own feelings about the situation. So let me pause and talk about software patents for a moment. Lest there be any question about this, what follows are my own personal feelings about the matter and have nothing to do with official Microsoft policy.</p>
<p>Personally, I don&#8217;t believe software patents are a good idea. I realize that algorithms lie in that grey area between a mechanical process (which is patentable) and an abstract idea (which is not), but at a purely practical level I think that software patents generally do much more harm than good. As such, I&#8217;d like to see them go away and the US patent office focus on more productive tasks. I have nothing but contempt for any company that tries to use patents to achieve what they could not through purely competitive means. This includes Microsoft, should they ever choose to do so or have they ever chosen to do so. (I&#8217;m not aware of any such situation, but I&#8217;m hardly omniscient.)</p>
<p>However, software patents do exist. So while the good fight goes on to get rid of them, I also believe that it would be dangerously naive to not play the game as best we can in the meantime in as principled a way as possible. There are a lot of people who would love nothing more than to just take a piece out of Microsoft either because they can or because they want to get rich and not for any better reason than that. I&#8217;ve been around long enough to see the kind of trouble that patents can cause us, and so I believe the best defense is a good offense. While I don&#8217;t believe in using patents in an unprovoked way, I do believe in having a robust patent arsenal with which to defend ourselves should someone get it in their head that they want to hold our products hostage for money or just to cause trouble.</p>
<p>One of the most unfortunate aspect of the software patent system is that there is a distinct advantage, should you have the money to do so, to try and patent everything under the sun in the hopes that something will stick. If someone has a patent on &quot;a biological system used to aspirate oxygen gases to fuel biological processes&quot; (i.e. lungs), I wouldn&#8217;t be surprised. (If there isn&#8217;t, no fair submitting the patent before me!) This is bad both because it jams up a system that&#8217;s not really equipped to handle software patents well in the first place and because it increases the likelihood of broad, random patents slipping through the system. Microsoft has been as much a victim of this as anyone else, and yet we&#8217;re right there in there with everyone else, playing the game. It&#8217;s become a Mexican standoff, and there&#8217;s no good way out at the moment short of a broad consensus to end the game at the legislative level.</p>
<p>So that&#8217;s how I feel about software patents in general. As far as the specific IsNot patent goes, I will say that at a personal level, I do not feel particularly proud of my involvement in the patent process in this case. Beyond that, there&#8217;s not much to say: many comments addressed legal questions which I am woefully unqualified to comment on and for which speculation would be very </p>
</blockquote>
<p>To my original blog post, I would add a few things. The first thing is that, thankfully, I believe the IsNot patent has long since either been rejected or abandoned, and in this things are exactly as they should be. The second thing is that while I still continue to hope that we will rid ourselves of software patents, I recognize now in hindsight that the general problem of patents—that there is a strong financial incentive to patent everything under the sun—is an inherent trait of a game that gives the “winners” huge economic advantages. Even if software patents disappeared tomorrow, there’d still be lots of stupid and silly patent applications in non-software areas. Since I think that, overall, the patent system is a good idea, this means some aspects of this are simply inevitable. (Still doesn’t justify the IsNot patent application, though. That was just dumb.)</p>
<p>My final comment regards my assertion that I would hold “nothing but contempt” for any company that used software patents in an offensive, rather than a purely defensive, manner. That is still the case and, sadly, I am profoundly disappointed with some of the things that Microsoft has done in this area since I wrote that post in 2005. The best I can say is that I continue to hope that we will do better in the future.</p>
<p><em>You should also follow me on Twitter </em><a href="http://twitter.com/panopticoncntrl"><em>here</em></a><em>.</em></p>
<br />Filed under: <a href='http://panopticoncentral.net/category/microsoft/'>Microsoft</a> Tagged: <a href='http://panopticoncentral.net/tag/isnot/'>IsNot</a>, <a href='http://panopticoncentral.net/tag/microsoft/'>Microsoft</a>, <a href='http://panopticoncentral.net/tag/software-patents/'>Software Patents</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/panopticoncentral.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/panopticoncentral.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/panopticoncentral.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/panopticoncentral.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/panopticoncentral.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/panopticoncentral.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/panopticoncentral.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/panopticoncentral.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/panopticoncentral.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/panopticoncentral.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/panopticoncentral.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/panopticoncentral.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/panopticoncentral.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/panopticoncentral.wordpress.com/36/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=36&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://panopticoncentral.net/2012/02/16/software-patents-revisited/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1e95163b64132ba770018919261a2342?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paulvick</media:title>
		</media:content>
	</item>
		<item>
		<title>Black Hole Projects</title>
		<link>http://panopticoncentral.net/2011/08/01/black-hole-projects/</link>
		<comments>http://panopticoncentral.net/2011/08/01/black-hole-projects/#comments</comments>
		<pubDate>Mon, 01 Aug 2011 21:52:30 +0000</pubDate>
		<dc:creator>paulv</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[black hole projects]]></category>
		<category><![CDATA[project management]]></category>

		<guid isPermaLink="false">https://panopticoncentral.wordpress.com/2011/08/01/black-hole-projects/</guid>
		<description><![CDATA[OK, so I may have reset my blog, but there were some interesting posts that probably shouldn’t disappear totally down the memory hole. This is one of them, which I am rescuing from back in 2004 because of it’s continuing relevance. It seems that six months can’t go by without something I hear making me [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=33&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>OK, so I may have <a href="http://panopticoncentral.net/2011/03/18/hitting-the-big-red-switch-2/">reset my blog</a>, but there <span style="text-decoration:underline;">were</span> some interesting posts that probably shouldn’t disappear totally down the memory hole. This is one of them, which I am rescuing from back in 2004 because of it’s continuing relevance. It seems that six months can’t go by without something I hear making me think of this. Edited from the original for clarity and to bring it up-to-date.</em></p>
<p>Many, many years ago, <a href="http://hyperthink.net/blog/">Steve Maine</a> took the <a href="http://hyperthink.net/blog/CommentView,guid,f29fd231-43c1-4f8a-9fee-8ba87b1ef241.aspx">opportunity to reminisce</a> about a project at Microsoft that was being worked on while he was an intern. He says:</p>
<blockquote><p>[ When I was an intern… ] there was this mythical project codenamed “Netdocs”, and it was a black hole into which entire teams disappeared. I had several intern friends who got transferred to the Netdocs team and were never heard from again. Everyone knew that Netdocs was huge and that there were a ton of people working on it, but nobody had any idea what the project actually did.</p></blockquote>
<p>I also knew a few people who invested quite a few years of their lives into “Netdocs” and it got me thinking about the phenomenon of &#8220;black hole projects&#8221; at Microsoft (and elsewhere, I’ll wager). There was one I was very close to very early in my career that I managed to avoid, many others that I just watched from afar, and one or two that I got dragged into despite my best intentions. I can’t really talk about most of them since most never saw the light of day, but it did get me thinking about the peculiarly immutable traits of a black hole project. They seem to be:</p>
<ul>
<li>They must have absurdly grandiose goals. Something like &#8220;fundamentally reimagine the way that people work with computers.&#8221; Nobody, including the people who originate the goals, has a clear idea what the goals actually mean.</li>
<li>They must involve throwing out some large existing codebase and rewriting everything from scratch, &#8220;the right way, this time.&#8221;</li>
<li>They must have completely unrealistic deadlines. Often this is because they believe that they can rewrite the original codebase in much, much less time than it took to write that codebase in the first place.</li>
<li>They must have completely unrealistic beliefs about compatibility. Usually this takes the form of believing you can rewrite a huge codebase and preserve all of its little quirks without a massive amount of extra effort.</li>
<li>They are always &#8220;six months&#8221; from from major deadlines that never seem to arrive. Or, if they do arrive, another milestone is added on to the end of the project to compensate.</li>
<li>They must consume huge amounts of resources, sucking the lifeblood out of one or more established products that make significant amounts of money or have significant market share.</li>
<li>They must take over any group that does anything that relates to their absurdly broad goals, <em>especially</em> if that group is small, focused, has modest goals, and actually has a hope of shipping in a reasonable timeframe.</li>
<li>They must be prominently featured as demos in public settings such as company meetings, all-hands, conferences, etc. to the point where people groan &#8220;Oh, god, not <em>another</em> demo of this thing. When is it ever going to ship?&#8221;</li>
<li>They usually are prominently talked up publicly by high level executives for years before dying a quiet death.</li>
<li>They usually involve &#8220;componentizing&#8221; some monolithic application or system. This means that not only are you rewriting a huge amount of code, you&#8217;re also splitting it up across one or more teams that have to all seamlessly work together.</li>
<li>As a result of the previous point, they also usually involve absolutely massive integration problems as different teams try madly to get their components working with each other.</li>
<li>They usually involve rewriting the application or system on top of brand-new technology that has not been proven at a large scale yet. As such, they get to flush out all the scalability problems with the new technology.</li>
<li>They are usually led by one or more Captain Ahabs, madly pursuing the white whale with absolute conviction, while the deckhands stand around saying &#8220;Gee, that whale looks awfully big. I&#8217;m not sure we can really take him down.&#8221;</li>
<li>Finally, 90% of the time, they must fail and die a flaming death, taking down other products with it (or at least severely damaging them). If they do ship, they must have taken at least 4-5 years to ship and be at least 2 years overdue.</li>
</ul>
<p>It’s kind of frightening how easy it is to come up with this list &#8211; it all kind of just poured out. Looking back over 19 years at Microsoft, I&#8217;m also kind of frightened at how many projects this describes. Including some projects that are ongoing at the moment&#8230;</p>
<p><em>You should also follow me on Twitter </em><a href="http://twitter.com/panopticoncntrl" target="_blank"><em>here</em></a><em>.</em></p>
<br />Filed under: <a href='http://panopticoncentral.net/category/microsoft/'>Microsoft</a>, <a href='http://panopticoncentral.net/category/programming/'>Programming</a> Tagged: <a href='http://panopticoncentral.net/tag/black-hole-projects/'>black hole projects</a>, <a href='http://panopticoncentral.net/tag/microsoft/'>Microsoft</a>, <a href='http://panopticoncentral.net/tag/project-management/'>project management</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/panopticoncentral.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/panopticoncentral.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/panopticoncentral.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/panopticoncentral.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/panopticoncentral.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/panopticoncentral.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/panopticoncentral.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/panopticoncentral.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/panopticoncentral.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/panopticoncentral.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/panopticoncentral.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/panopticoncentral.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/panopticoncentral.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/panopticoncentral.wordpress.com/33/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=33&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://panopticoncentral.net/2011/08/01/black-hole-projects/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1e95163b64132ba770018919261a2342?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paulvick</media:title>
		</media:content>
	</item>
		<item>
		<title>Seven Rules for Beginning Programmers</title>
		<link>http://panopticoncentral.net/2011/05/16/seven-rules-for-beginning-programmers/</link>
		<comments>http://panopticoncentral.net/2011/05/16/seven-rules-for-beginning-programmers/#comments</comments>
		<pubDate>Mon, 16 May 2011 18:14:00 +0000</pubDate>
		<dc:creator>paulv</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[advice]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">https://panopticoncentral.wordpress.com/2011/05/16/seven-rules-for-beginning-programmers/</guid>
		<description><![CDATA[A little while ago Phil Wadler posted “VS Naipaul’s Rules for Beginners,” listing the famous author’s seven rules for beginning writers. Upon reading them it occurred to me that, with a little adaptation, they could equally apply to beginning programmers. So, with apologies to Mr. Naipaul, here are my “Rules for Beginners:” Do not write [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=28&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A little while ago <a href="http://wadler.blogspot.com/">Phil Wadler</a> posted “<a href="http://www.indiauncut.com/iublog/article/vs-naipauls-advice-to-writers-rules-for-beginners/">VS Naipaul’s Rules for Beginners</a>,” listing the famous author’s seven rules for beginning writers. Upon reading them it occurred to me that, with a little adaptation, they could equally apply to beginning programmers. So, with apologies to Mr. Naipaul, here are my “Rules for Beginners:”</p>
<ol>
<li>Do not write long procedures. A procedure should not have more than ten or twelve lines. </li>
<li>Each procedure should have a clear purpose. It should not overlap in purpose with the procedures that went before or come after. A good program is a series of clear, non-overlapping procedures. </li>
<li>Do not use fancy language features. If you’re using something more than variable declarations, procedure calls, control flow statements and arithmetic operators, there is something wrong. The use of simple language features compels you to think about what you are writing. Even difficult algorithms can be broken down into simple language features. </li>
<li>Never use language features whose meaning you are not sure of. If you break this rule you should look for other work. </li>
<li>The beginner should avoid using copy and paste, except when copying code from one program they have written to a new one they are writing. Use as few files as possible.</li>
<li>Avoid the abstract. Always go for the concrete. [<em>Ed. note: This one applies unchanged.</em>]</li>
<li>Every day, for six months at least, practice programming in this way. Short statements; short, clear, concrete procedures. It may be awkward, but it’s training you in the use of a programming language. It may even be getting rid of the bad programming language habits you picked up at the university. You may go beyond these rules after you have thoroughly understood and mastered them.</li>
</ol>
<p><em>You should also follow me on Twitter </em><a href="http://twitter.com/panopticoncntrl" target="_blank"><em>here</em></a><em>.</em></p>
<br />Filed under: <a href='http://panopticoncentral.net/category/programming/'>Programming</a> Tagged: <a href='http://panopticoncentral.net/tag/advice/'>advice</a>, <a href='http://panopticoncentral.net/tag/programming-2/'>programming</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/panopticoncentral.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/panopticoncentral.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/panopticoncentral.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/panopticoncentral.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/panopticoncentral.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/panopticoncentral.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/panopticoncentral.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/panopticoncentral.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/panopticoncentral.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/panopticoncentral.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/panopticoncentral.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/panopticoncentral.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/panopticoncentral.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/panopticoncentral.wordpress.com/28/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=28&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://panopticoncentral.net/2011/05/16/seven-rules-for-beginning-programmers/feed/</wfw:commentRss>
		<slash:comments>59</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1e95163b64132ba770018919261a2342?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paulvick</media:title>
		</media:content>
	</item>
		<item>
		<title>Why every language needs a language specification&#8230;</title>
		<link>http://panopticoncentral.net/2011/04/19/why-every-language-needs-a-language-specification/</link>
		<comments>http://panopticoncentral.net/2011/04/19/why-every-language-needs-a-language-specification/#comments</comments>
		<pubDate>Tue, 19 Apr 2011 19:02:28 +0000</pubDate>
		<dc:creator>paulv</dc:creator>
				<category><![CDATA[Language Design]]></category>
		<category><![CDATA[TSQL]]></category>
		<category><![CDATA[language design]]></category>
		<category><![CDATA[language specification]]></category>
		<category><![CDATA[tsql]]></category>

		<guid isPermaLink="false">https://panopticoncentral.wordpress.com/2011/04/19/why-every-language-needs-a-language-specification/</guid>
		<description><![CDATA[One of the things that I discovered when I started working on SQL Server is that T-SQL, like VB prior to .NET, has no language specification. This continues to mystify me—how language teams get away without having a language specification for so long. I should probably back up for a moment and explain what I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=26&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>One of the things that I discovered when I started working on SQL Server is that T-SQL, like VB prior to .NET, has no language specification. This continues to mystify me—how language teams get away without having a language specification for so long. I should probably back up for a moment and explain what I mean when I say “language specification.” I mean a document that:</p>
<ul>
<li>Is public. </li>
<li>Is kept up to date. </li>
<li>Describes the entire language (syntax, semantics, type system, etc.). </li>
<li>Is produced by the team that produces the language itself. </li>
</ul>
<p>An initial spec that was allowed to lapse doesn’t count, for obvious reasons. Books written by people outside of the team/company don’t count because there’s no way someone who doesn’t live and breath the language every single day can possibly hope to shoot for completeness. Documents that just describe syntax or sort-of describe the language (SQL Server’s Books Online falls into this category) don’t count because often what you need is a holistic description of the language, and for that you need, well, the <em>whole</em> language described. And documents that aren’t public don’t count because what good is a document that no one reads? (Not that many people read language specifications anyway, unless the author’s name happens to be <a href="http://www.amazon.com/exec/obidos/ASIN/0321562992/panopticoncen-20">Hejlsberg</a> or <a href="http://www.amazon.com/exec/obidos/ASIN/0321349806/panopticoncen-20">Gosling</a>.)</p>
<p>I think the reason that language specifications often don’t get written is that they are a huge amount of work and an incredible pain in the ass. Writing the Visual Basic Language Specification was no mean feat and consumed a whole lot of time that I could have productively spent elsewhere. But I do think that every programming language needs one, for a variety of reasons:</p>
<ol>
<li><strong>Languages are not algorithms.</strong> Although many programs of some sort or another could use a good specifications written down, the reality is that many don’t need one because the code is the specification. For example, I can imagine that there might be some specification written down about how the Excel recalc engine works, but it’s probably not <em>that</em> useful because, well, you could just go look at that code itself if you want to know how the recalc engine works. Most pieces of code can be more easily understood by tracing through the code than by reading a description of them. Languages, however, are a special case—they are an emergent property of the compiler, and although there are various algorithms that contribute to a language (say, the binding rules), much of the most important parts of the language arise from the interplay of the various algorithms. Thus, just having the code often is not really enough to understand what a language is or does. </li>
<li><strong>Specifications keep you honest.</strong> And honesty is important when it comes to programming languages. You can cheat like hell when it comes to user interfaces, and most of the time you can get away with it—extraneous menu items or options or notifications or other junk may clutter the UI up a bit but by and large you can deal with it, and you can always “clean up” a UI without too much trouble. You can cheat less with libraries and APIs, but even there you can always come up with a new version of the interface or library and gradually move people. With a language, however, it’s nearly impossible to fix something once it’s in the language. SQL Server’s own deprecation process takes three major releases, which means that a mistake you make in the language will take well over a decade to get rectified, if at all. Having a central language specification helps the team monitor what’s really going in the language and helps keep the team honest about what they’re doing. </li>
<li><strong>Having to explain things forces you to actually try and understand what your language does.</strong> I was continually amazed when writing the Visual Basic language specification how superficially I actually understood some features until I tried to write them down and explain them. Features that had been extensively discussed in design meetings and were already prototyped, even. In this way, it’s somewhat analogous to coding—how often I think I understand the solution to a problem until I sit down to write the code and realize how foolish I have been to think I really understood the problem! </li>
<li><strong>You need some kind of institutional memory.</strong> It’s all well and good to rely on the one guy who knows everything about everything in the language, but what happens when they retire/quit/move on/get hit by a bus? Now all you’re left with is a mass of language rules and often no idea why things were done one particular way or another. This is not an uncommon problem in general with programming, but it’s even more acute with language design. When I was a young, naïve language designer, there were a number of times when I looked at existing languages and the choices they made and thought to myself, “Boy, is <em>that</em> a dumb design decision.” Then, a couple of years down the road, having ignored some of the wisdom of those who came before me and having run into a brick wall at full speed, I would think, “Oh, I see, <em>that’s</em> why they did that…” </li>
</ol>
<p>Anyway, I’m not planning on just complaining about this and not doing anything about it. Stay tuned…</p>
<p><em>You should also follow me on Twitter </em><a href="http://twitter.com/panopticoncntrl" target="_blank"><em>here</em></a><em>.</em></p>
<br />Filed under: <a href='http://panopticoncentral.net/category/language-design/'>Language Design</a>, <a href='http://panopticoncentral.net/category/tsql/'>TSQL</a> Tagged: <a href='http://panopticoncentral.net/tag/language-design-2/'>language design</a>, <a href='http://panopticoncentral.net/tag/language-specification/'>language specification</a>, <a href='http://panopticoncentral.net/tag/tsql-2/'>tsql</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/panopticoncentral.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/panopticoncentral.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/panopticoncentral.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/panopticoncentral.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/panopticoncentral.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/panopticoncentral.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/panopticoncentral.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/panopticoncentral.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/panopticoncentral.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/panopticoncentral.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/panopticoncentral.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/panopticoncentral.wordpress.com/26/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/panopticoncentral.wordpress.com/26/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/panopticoncentral.wordpress.com/26/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=26&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://panopticoncentral.net/2011/04/19/why-every-language-needs-a-language-specification/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1e95163b64132ba770018919261a2342?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paulvick</media:title>
		</media:content>
	</item>
		<item>
		<title>&#8220;I Didn&#8217;t Quit.&#8221;</title>
		<link>http://panopticoncentral.net/2011/04/04/i-didnt-quit/</link>
		<comments>http://panopticoncentral.net/2011/04/04/i-didnt-quit/#comments</comments>
		<pubDate>Mon, 04 Apr 2011 18:16:44 +0000</pubDate>
		<dc:creator>paulv</dc:creator>
				<category><![CDATA[Philosophy]]></category>
		<category><![CDATA[leadership]]></category>
		<category><![CDATA[philosophy]]></category>

		<guid isPermaLink="false">https://panopticoncentral.wordpress.com/2011/04/04/i-didnt-quit/</guid>
		<description><![CDATA[I ran across this great blog entry today called “What’s The Most Difficult CEO Skill? Managing Your Own Psychology”. I don’t expect to ever, ever, ever be a CEO, but I think a lot of the lessons that Ben Horowitz talks about apply to just about any leadership position you might ever find yourself in, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=25&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I ran across this great blog entry today called “<a href="http://bhorowitz.com/2011/04/01/what%e2%80%99s-the-most-difficult-ceo-skill-managing-your-own-psychology/">What’s The Most Difficult CEO Skill? Managing Your Own Psychology</a>”. I don’t expect to ever, ever, ever be a CEO, but I think a lot of the lessons that Ben Horowitz talks about apply to just about any leadership position you might ever find yourself in, from team lead to Little League Coach. Thing like needing to learn to handle stress, needing to take the responsibility seriously but not <em>too</em> seriously, needing to cope with loneliness, etc. But the thing that caught my eye was the end of the entry:</p>
<blockquote><p>Whenever I meet a successful CEO, I ask them how they did it. Mediocre CEOs point to their brilliant strategic moves or their intuitive business sense or a variety of other self-congratulatory explanations. The great CEOs tend to be remarkably consistent in their answers. They all say: “I didn’t quit.”</p>
</blockquote>
<p>In my experience, this one phrase—“I didn’t quit.”—is <strong>the</strong> dividing line between success and failure. A few of the successes that I’ve had in my life (such as they are) can be attributed to dumb luck or raw talent. But most, and certainly the most satisfying ones, were primarily attributable to the fact that I didn’t give up even though I often might have wanted to.</p>
<p>The hard part is that it’s often impossible to know whether you’re on the right path or not. Sure things may turn out to be dead ends. Things that people say cannot be done may turn out to be golden opportunities. The best thing you can do is be clear on what’s important to you, follow your gut, and… don’t quit.</p>
<p><em>You should also follow me on Twitter </em><a href="http://twitter.com/panopticoncntrl" target="_blank"><em>here</em></a><em>.</em></p>
<br />Filed under: <a href='http://panopticoncentral.net/category/philosophy/'>Philosophy</a> Tagged: <a href='http://panopticoncentral.net/tag/leadership/'>leadership</a>, <a href='http://panopticoncentral.net/tag/philosophy-2/'>philosophy</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/panopticoncentral.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/panopticoncentral.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/panopticoncentral.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/panopticoncentral.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/panopticoncentral.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/panopticoncentral.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/panopticoncentral.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/panopticoncentral.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/panopticoncentral.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/panopticoncentral.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/panopticoncentral.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/panopticoncentral.wordpress.com/25/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/panopticoncentral.wordpress.com/25/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/panopticoncentral.wordpress.com/25/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=25&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://panopticoncentral.net/2011/04/04/i-didnt-quit/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1e95163b64132ba770018919261a2342?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paulvick</media:title>
		</media:content>
	</item>
		<item>
		<title>External Requests Versus Internal Requirements</title>
		<link>http://panopticoncentral.net/2011/03/29/external-requests-versus-internal-requirements/</link>
		<comments>http://panopticoncentral.net/2011/03/29/external-requests-versus-internal-requirements/#comments</comments>
		<pubDate>Tue, 29 Mar 2011 19:28:54 +0000</pubDate>
		<dc:creator>paulv</dc:creator>
				<category><![CDATA[Meta]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[meta]]></category>

		<guid isPermaLink="false">https://panopticoncentral.wordpress.com/2011/03/29/external-requests-versus-internal-requirements/</guid>
		<description><![CDATA[A commenter observed that a side-effect of my blog reset is that now any answers on Stack Overflow that pointed to my blog are broken. This is an unfortunate situation that I didn’t consider when I decided to reset my blog, and it did give me some pangs of regret when I looked at the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=24&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A commenter <a href="http://panopticoncentral.net/2011/03/18/hitting-the-big-red-switch-2/#comment-6" target="_blank">observed</a> that a side-effect of my blog reset is that now any answers on <a href="http://stackoverflow.com" target="_blank">Stack Overflow</a> that pointed to my blog are broken. This is an unfortunate situation that I didn’t consider when I decided to reset my blog, and it did give me some pangs of regret when I looked at the <a href="http://www.bing.com/search?q=http%3A%2F%2Fpanopticoncentral.net+site%3Astackoverflow.com" target="_blank">list of answers that referred to me</a>. It also got me thinking about the inevitable conflict in life between external requests (i.e. things other people want from me) and internal requirements (i.e. things that I want for myself).</p>
<p>From the Internet’s perspective, it would be happy if every piece of information that ever appears on the web would: a) stay on the web forever, and b) stay in exactly the same place forever. This makes total sense from the collective perspective—I’ve been amazed by the number of times that I’ve gone to research some obscure thing (such as how to unbind a DOS executable from a DOS 4/GW extender… don’t ask me why) and found some answer from back in the dark ages (like, 1996). Information disappearing, from a public utility standpoint, is a Very Bad Thing because you never know how useful that information might be some day. In college I was always amazed at the variety of interesting historical information that could be deduced from everyday things like private letters, diaries, commercial correspondence, etc. The true enemy of the scholar indeed is people who throw away… well, anything, really.</p>
<p>But from <strong>my</strong> perspective, it’s a lot of dead weight. I mean, a lot of the stuff I dumped off my blog was written five or six years ago. Some of it was wrong and a lot of it was irrelevant when looked at through the lens of later events. Some of it reminded me of things that I’d rather forget all about. And some of it was, frankly, embarrassing. One could say, “Well, then, just don’t look at it!” And, most of the time, I didn’t. But, you know, it was still <em>there</em>, taunting me from the archive list on the right hand side of the blog.</p>
<p>Some changes in my personal life recently motivated me to go through a bunch of boxes that had been sitting in storage for years. They were mostly full of stuff from my high school and college years—old papers, letters, other random stuff. I’d been holding on to a lot of it because, well, it was <em>my</em> stuff. But in looking through it, I realized how much of a burden most it had become. Like the blog, I didn’t look at the boxes very often, but there they always were, taking up space, having to be moved around, making me keep track of them. So I decided to go through and throw away anything that didn’t have a strong, tangible, positive, personal meaning to me. I’d say I threw away about 90% of what I had stored in those boxes, tons of stuff I no longer even remembered anything about. And the wonderful thing? Once I was over the initial trauma, I felt a lot better, freer, and lighter. It’s amazing what wonders getting rid of old stuff can do for you, even if it does make my theoretical future biographer’s job harder.</p>
<p>So my apologies to the Internet: I realize that losing my miniscule contributions to global knowledge might make life a little more difficult, and I’m sorry about that. But I have to say: I feel a whole lot better letting go of that stuff. I’m sure it’s going to cost me some (or even a lot) of visitors, but it seems like a small price to pay. At least, for me.</p>
<p><em>You should also follow me on Twitter </em><a href="http://twitter.com/panopticoncntrl" target="_blank"><em>here</em></a><em>.</em></p>
<br />Filed under: <a href='http://panopticoncentral.net/category/meta/'>Meta</a> Tagged: <a href='http://panopticoncentral.net/tag/blogging/'>blogging</a>, <a href='http://panopticoncentral.net/tag/meta-2/'>meta</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/panopticoncentral.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/panopticoncentral.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/panopticoncentral.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/panopticoncentral.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/panopticoncentral.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/panopticoncentral.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/panopticoncentral.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/panopticoncentral.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/panopticoncentral.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/panopticoncentral.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/panopticoncentral.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/panopticoncentral.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/panopticoncentral.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/panopticoncentral.wordpress.com/24/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=24&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://panopticoncentral.net/2011/03/29/external-requests-versus-internal-requirements/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1e95163b64132ba770018919261a2342?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paulvick</media:title>
		</media:content>
	</item>
		<item>
		<title>Landed&#8230;</title>
		<link>http://panopticoncentral.net/2011/03/25/landed/</link>
		<comments>http://panopticoncentral.net/2011/03/25/landed/#comments</comments>
		<pubDate>Fri, 25 Mar 2011 17:43:42 +0000</pubDate>
		<dc:creator>paulv</dc:creator>
				<category><![CDATA[Meta]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[meta]]></category>

		<guid isPermaLink="false">https://panopticoncentral.wordpress.com/2011/03/25/landed/</guid>
		<description><![CDATA[As I warned last week, I’ve moved my blog entirely over to WordPress now. Please let me know if you encounter any difficulties. Filed under: Meta Tagged: blogging, meta<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=16&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>As I <a href="http://panopticoncentral.net/2011/03/18/hitting-the-big-red-switch-2/" target="_blank">warned</a> last week, I’ve moved my blog entirely over to <a href="http://wordpress.com/" target="_blank">WordPress</a> now. Please let me know if you encounter any difficulties.</p>
<br />Filed under: <a href='http://panopticoncentral.net/category/meta/'>Meta</a> Tagged: <a href='http://panopticoncentral.net/tag/blogging/'>blogging</a>, <a href='http://panopticoncentral.net/tag/meta-2/'>meta</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/panopticoncentral.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/panopticoncentral.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/panopticoncentral.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/panopticoncentral.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/panopticoncentral.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/panopticoncentral.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/panopticoncentral.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/panopticoncentral.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/panopticoncentral.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/panopticoncentral.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/panopticoncentral.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/panopticoncentral.wordpress.com/16/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/panopticoncentral.wordpress.com/16/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/panopticoncentral.wordpress.com/16/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=16&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://panopticoncentral.net/2011/03/25/landed/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1e95163b64132ba770018919261a2342?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paulvick</media:title>
		</media:content>
	</item>
		<item>
		<title>Hitting the Big Red Switch</title>
		<link>http://panopticoncentral.net/2011/03/18/hitting-the-big-red-switch-2/</link>
		<comments>http://panopticoncentral.net/2011/03/18/hitting-the-big-red-switch-2/#comments</comments>
		<pubDate>Fri, 18 Mar 2011 16:58:20 +0000</pubDate>
		<dc:creator>paulv</dc:creator>
				<category><![CDATA[Meta]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[meta]]></category>

		<guid isPermaLink="false">https://panopticoncentral.wordpress.com/2011/03/18/hitting-the-big-red-switch-2/</guid>
		<description><![CDATA[As you&#8217;ve probably noticed (and I&#8217;ve commented on from time to time) my blogging output over the past several years has fallen off precipitously, to the point where there has basically been nothing written on the blog at all in the past six months. I spent a while debating whether it was just time to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=15&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>As you&#8217;ve probably noticed (and I&#8217;ve commented on from time to time) my blogging output over the past several years has fallen off precipitously, to the point where there has basically been nothing written on the blog at all in the past six months. I spent a while debating whether it was just time to go ahead and shut Panopticon Central down but in the end I decided that it&#8217;s likely that I&#8217;m going to have a few more things to say as I start to really settle in to the SQL Server team.</p>
<p>One thing I did decide I wanted to do was get out of the blog hosting business entirely. Those of you who have been exceptionally loyal readers may remember that this blog started off with a hand-built engine running on a server in my basement and has steadily moved in the direction of requiring less and less of my time to administer it and keep it running: first to using standard software (.TEXT and then <a href="http://www.subtextproject.com/" target="_blank">SubText</a>), then to a hosting provider (<a href="http://serverintellect.com/" target="_blank">Server Intellect</a>). To be honest, though, even administering a standard blog package on a hosting provider is more than I want to be doing. So after a lot of thinking I’ve decided to move wholesale to <a href="http://wordpress.com/" target="_blank">WordPress</a> in the hopes that I can forever be done with such fun and exciting tasks as upgrading my blogging engine database.</p>
<p>That leaves the question, though, as to what to do with the large amount of previous stuff on the blog. Reading through the archives, most posts seemed to fall into the following categories, in order of frequency:</p>
<ol>
<li>Inside baseball discussions of the design/shipping process for previous versions of Visual Basic. </li>
<li>Highly technical discussions of design decisions for features shipped in previous versions of Visual Basic. </li>
<li>Random moment-in-time personal commentary. </li>
<li>Highly confused (and often very inaccurate) discussions of now-cancelled or re-directed projects. </li>
</ol>
<p>After some serious consideration, I’ve decided that rather than trying to bring all the past posts and comments over to WordPress, I’m going to wipe the slate clean and start over with a fresh, clean blog. It was surprisingly difficult to decide to toss out eight years of accumulated blogging detritus, but as I started to look through some of my old posts, I was convinced it was time. There just wasn’t much there that seemed particularly important to save for posterity. OK, maybe posts that fall into category #2 above might provide some value for people, but even a lot of that information is quietly starting to rot or become irrelevant. And, to be honest, I&#8217;d rather just expunge some of the things I talked about regarding future plans for Visual Basic (most of which haven’t turned out to be true) or Oslo/&quot;M&quot; (ditto), to the degree that&#8217;s possible in today&#8217;s Internet.</p>
<p>If you’re seeing this in a RSS reader, then you’ve probably got a narrow window of opportunity to grab what you want off the old blog, as the first step of the move is going to be redirecting my RSS feed to my WordPress blog but not moving anything else. After that’s been given a little while to settle, I’ll move the entire domain over and the old blog will be decommissioned. I will dump all of the old blog into a database, so if you find yourself missing some pearl of my wisdom, let me know and I can probably dig it up for you. There might also be some select gems that I might republish, but we’ll just have to see.</p>
<p>So thanks for still being a reader, and look for newer and fresher content soon! And you should also follow me on Twitter <a href="http://twitter.com/panopticoncntrl" target="_blank">here</a>.</p>
<p>[<em>Ed note—in case you’re too young to remember it, the “big red switch” was the power switch on the back of the original IBM PC. With only floppy drives, turning off the power meant resetting the machine entirely and starting fresh.</em>]</p>
<br />Filed under: <a href='http://panopticoncentral.net/category/meta/'>Meta</a> Tagged: <a href='http://panopticoncentral.net/tag/blogging/'>blogging</a>, <a href='http://panopticoncentral.net/tag/meta-2/'>meta</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/panopticoncentral.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/panopticoncentral.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/panopticoncentral.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/panopticoncentral.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/panopticoncentral.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/panopticoncentral.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/panopticoncentral.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/panopticoncentral.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/panopticoncentral.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/panopticoncentral.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/panopticoncentral.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/panopticoncentral.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/panopticoncentral.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/panopticoncentral.wordpress.com/15/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=panopticoncentral.net&amp;blog=20188971&amp;post=15&amp;subd=panopticoncentral&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://panopticoncentral.net/2011/03/18/hitting-the-big-red-switch-2/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1e95163b64132ba770018919261a2342?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paulvick</media:title>
		</media:content>
	</item>
	</channel>
</rss>
