“Programming is not a craft” and other links…

Dan North: “So what does this have to do with software? Well it seems to me the most [successful] programmers I’ve encountered don’t craft software; they write software in order to move information around, in order to get something done. Information is the real deal—the software just defines the space that it moves around in. For those programmers, success is about getting information from point A where it’s currently languishing to point B where it’s going to actually be useful, as quickly and effectively as they can. Success in a UI is about rendering or capturing exactly the information that will be useful —no less and certainly no more—in a succinct, obvious way. The software is incidental, a detail, hidden away in the wings, and it is ultimately entirely disposable.”

“More on Microsoft ‘Jupiter’ and what it means for Windows 8”

Mary Jo Foley: “One of my contacts described Jupiter this way: ‘It has to do with XAML + Native Code on slate/iPad-like devices. I think this is Microsoft’s approach for putting Windows on the smaller device without the bloat.’”

“Navigate the Perilous World of Online Communities… With a Map?”

Terry Walsh: “Charting such perilous, changing seas requires constant vigilance, and as reported by TechCrunch, the XKCD cartographers have been busy updating their maps, releasing an all new view of the globe as it appears here in 2010. Dominated by the lands of Facebook, Twitter and yes, Farmville(!) the world is a very different place three years on, and is even more dangerous.”

“Introducing Moncai”

“Our plan is to release the service in stages, by first having a private beta, where we can control the initial load and work out the issues. From there, we will do a public beta, although this stage will not be very long. Our hope is to do the majority of the work during the private beta. Then, once the public beta is complete, we will release. We will be offering incentives during the beta periods by giving out credits to be applied to your accounts or by sending out swag, like stickers and t-shirts, based on the level feedback and involvement.”

“C++ Fake Interview”

Not Bjarne Stroustrup: “Well, one day, when I was sitting in my office, I thought of this little scheme, which would redress the balance a little. I thought ‘I wonder what would happen, if there were a language so complicated, so difficult to learn, that nobody would ever be able to swamp the market with programmers?’”

“Back to (Parallel) Basics: Don’t Block Your Threads, Make Async I/O Work For You”

Scott Hanselman via Chris Alcock: “I’m no expert in parallelism (I’ve read a great whitepaper…) but I asked Stephen Toub if this was the best and recommended way to solve this problem. Stephen responded from a plane using (his words) ‘email compiled and tested’ examples. With his permission, I’ve included a derivation of his response here in this blog post for my own, and possibly your, edification.”

“The rsync algorithm”

Andrew Tridgell and Paul Mackerras: “The algorithm identifies parts of the source file which are identical to some part of the destination file, and only sends those parts which cannot be matched in this way. Effectively, the algorithm computes a set of differences without having both files on the same machine. The algorithm works best when the files are similar, but will also function correctly and reasonably efficiently when the files are quite different.” Why doesn’t Microsoft implement this algorithm in Windows?

RestSharp

John Sheehan: “I was recently a guest on the Herding Code podcast to talk about RestSharp. The episode also covers my new job at Twilio, the .NET OSS landscape and me mentioning Bing two too many times. The episode was a lot of fun to record. Thanks to Jon Galloway, Kevin Dente, K. Scott Allen and Scott Koon for having me on!”

Wikipedia.org Moment: Paul Feyerabend

“Starting from the argument that a historical universal scientific method does not exist, Feyerabend argues that science does not deserve its privileged status in western society. Since scientific points of view do not arise from using a universal method which guarantees high quality conclusions, he thought that there is no justification for valuing scientific claims over claims by other ideologies like religions. Feyerabend also argued that scientific accomplishments such as the moon landings are no compelling reason to give science a special status. In his opinion, it is not fair to use scientific assumptions about which problems are worth solving in order to judge the merit of other ideologies. Additionally, success by scientists has traditionally involved non-scientific elements, such as inspiration from mythical or religious sources.”

Today’s Google-Starred Items: “33 Developers Leave OpenOffice.org”

Slashdot: “We all knew it would come to this, and it has finally happened — 33 developers have left OpenOffice.org to join The Document Foundation, with more expected to leave in the next few days. After Oracle acquired Sun Microsystems, OpenOffice.org fell into the hands of Oracle, as did a lot of other products. So, last month a few very prominent members of the OpenOffice.org community decided to form The Document Foundation and fork OpenOffice.org as LibreOffice, possibly fearing that it could go the OpenSolaris way.”

“Silverlight *versus* HTML5? Really?”

Mike Taulty: “My tower of blocks above are meant to indicate that an HTML client gives you very little access to the underlying platform. There’s some things you can do but not so much. HTML5 does add a bit more into the mix which is only to be welcomed. …This means that an HTML client won’t always get you to where you need and if you need more access to the underlying platform then you might consider something like Silverlight.”

“XHTML in IE9”

ieblog: “One of the most notable differences between XHTML and HTML is how parsing errors are handled. Any parsing error in an XHTML document will cause parsing to stop; no fix-up rules are applied. IE9 displays content parsed up until the point at which the error occurred. This is useful during development to catch errors quickly. You can find parsing error details in the ‘Console’ tab of the developer toolbar (note you’ll need to refresh the page to see the error if you opened the developer toolbar after the page loaded).”

“Why I hate implementing Linq”

Ayende Rahien via Chris Alcock: “The other side is the one that is shown only to the few brave souls who dare contemplate the task of actually writing a Linq provider. The real problem is that the sort of data structure that a Linq query generates has very little to the actual code that was written. That means that there are multiple steps that needs to be taken in order to actually do something useful in a real world Linq provider.”

“HTML5 Audio and Video: What you Must Know”

Bruce Lawson and Remy Sharp: “Copy protection is one area not dealt with by HTML5—unsurprisingly, given that it’s a standard based on openness. So people who need DRM are probably not going to want to use HTML5 video or audio…”

“Mono 2.8 is  out”

Miguel de Icaza: “We have just released Mono 2.8 a major upgrade to the Mono developer platform. This release contains ten months worth of new features, stability fixes, performance work and bug fixes.” Mono is C#4.0 compliant!

“The Future of Silverlight”

Silverlight Show: “There’s been a lot of discussion lately around web standards and HTML 5 in particular. People have been asking us how Silverlight fits into a future world where the <video> tag is available to developers. It’s a fair question—and I’ll provide a detailed answer—but I think it’s predicated upon an oversimplification of the role of standards that I’d like to clear up first. I’d also like to delineate why premium media experiences and ‘apps’ are better with Silverlight and reveal how Silverlight is going beyond the browser to the desktop and devices.”

Today’s Google Starred Items: “Streaming Blobs To and From SQL Azure”

Wayne Walter Berry: “This article provides a SqlStream class written in C# code. The class implements the abstract Stream class for the varbinary(max) data type on SQL Azure; Stream is an abstract class defined in the .NET CLR that is well supported and very versatile. The SqlStream class provided when used with SQL Azure allows you to manipulate a single blob a chunk at a time.”

“Getting Started With PowerPivot and SQL Azure”

Wayne Walter Berry: “One big advantage of using SQL Azure as a data source is that it can be accessed anywhere there is Internet connectivity, and you can store large amounts of data securely and with high availability. Your PowerPivot users can run their reports on the road, without having to VPN into your datacenter. Also, they do not have to travel with a snapshot of data, which is outdated the minute after the snapshot.”

“WordPress Now Runs on SQL Server and SQL Azure”

Sarah Perez: “To get started with WordPress on SQL Server or SQL Azure, you need to download the SQL Server distro or patch. Then you can check out the Getting Started page to get everything properly set up. ”

“Optical character recognition (OCR) in Google Docs”

Jaron Schaeffer: “For the technically curious: we’re using Optical Character Recognition (OCR) that our friends from Google Books helped us set up. OCR works best with high-resolution images, and not all formatting may be preserved. The original images will be included in the new document to make it easier for you to correct mistakes. Supported languages include English, French, Italian, German and Spanish, with more languages and character sets on their way. We’re looking forward to get feedback from you while we keep improving the feature over the next months.”

“Google releases command line tool for accessing Web services”

Ryan Paul: “Although modern desktop computing is increasingly dominated by graphical user interfaces, command line tools are still extremely useful for rapid interaction, simple programmatic automation, and remote system management. GoogleCL will make Google-hosted data more accessible to common command-line workflows. The GoogleCL tool offers an easy way to pipe your GMail contact list into sed and awk, or use a shell glob to specify which photos and movies to batch upload to Picasa and YouTube. It also supports Blogger, Google Calendar, and Google docs.”

“Pivot, OData, and Windows Azure: Visual Netflix Browsing”

Steve Marx: “I’ve put together my own example of using the new PivotViewer control at http://netflixpivot.cloudapp.net. It lets you browse the top ~3,000 movies that Netflix has available to stream online. I really encourage you to click through to the demo… it’s a fantastic way to find a movie to watch.”

“Installing, Configuring and Using Windows Server AppFabric and the ‘Velocity’ Memory Cache in 10 minutes”

Scott Hanselman via Chris Alcock: “The Velocity Caching Service needs to know where to get its configuration and it can get it from one of two places – either a database or an XML file on a share. If you use the XML file on a share, you’ll need to make sure the service account has access to the share, etc. I’ll use a database. The config wizard can make it for you as well. Click Next then Finish up the configuration.”

“SQL Azure and Windows Azure”

Wayne Walter Berry: “SQL Azure is independent from Windows Azure. You don’t need to have a Windows Azure compute instance to use SQL Azure. However, SQL Azure is the best and only place for storing relational data on the Windows Azure Platform. In other words, if you are running Windows Azure you probably will have a SQL Azure server to hold your data. However, you don’t need to run your application within Windows Azure account just because you have your data stored in SQL Azure. There are a lot of clients and platforms other than Windows Azure that can make use of SQL Azure, including PowerPivot, WinForms applications (via ADO.NET), JavaScript running in the browser (via OData), Microsoft Access, and SQL Server Reporting Services to name a few.”