It’s Microsoft Monday at Packt Publishing

Packt Publishing printed my book on Microsoft’s Azure (http://bit.ly/msazurebook), and to show their commitment to Microsoft technologies, today is Microsoft Monday, with two special offers:

To mark Microsoft Monday, Packt is highlighting five new Microsoft books:

And, of course:

Posted in Azure, Catchall | 1 Comment

Having multiple domains point to the same WordPress blog

We’re making some business changes to The Bloomery, and combining two different sites into a single WordPress blog.  The outcome we want is multiple domains all pointing to the main blog.  And we want to run it on Windows/IIS.  Out of the box, WordPress is designed for a single blog with a single domain, but there are a number of settings and plugins that we used to end up with what we wanted.

With WordPress 3.0, there is a new Multisite Network option, where multiple blogs can be created in the context of a single installation, and different domains can map to each of the child blogs.  There is the option of using subdomains (blog1.mysite.com, blog2.mysite.com) or subdirectories (mysite.com/blog1/, mysite.com/blog2/).  When you set up Multisite, you have to choose one or the other, and you can’t change once you’ve made your choice.  In either case, you have to make some edits to the .htaccess file for URL redirects/rewrites.  On IIS 7, there is no .htaccess file, but we can accomplish the same thing with the web.config and the URL Rewrite Module.

Make sure all your domains point to the correct hosting account, and install WordPress.  After installing WordPress, here’s what needs to be done:

1. Set up a Multisite Network using subdirectories; follow the steps at http://www.lauragentry.com/wordpress/?p=517.

2. Install the WordPress MU Domain Mapping plugin, from http://wordpress.org/extend/plugins/wordpress-mu-domain-mapping/.  You need to do a manual installation, but it’s easy.  For some additional information on this plugin, see http://ottopress.com/2010/wordpress-3-0-multisite-domain-mapping-tutorial/.

3. The main site is assigned a site ID of 1.  From the main site’s control panel, under the Super Admin, you want to add all your domains with a site ID of 1.  They won’t show up in the mapping, so just try and visit each of your domains to see if they all point to the main site.

Posted in Blogging, WordPress | 1 Comment

Salesforce Chatter’s Misleading Ad

The ad below has run on the front page of the Wall Street Journal on a number of occasions, and it’s one I find very misleading.  Salesforce compares itself to Lotus Notes and SharePoint, and  undercredits SharePoint’s features.  In my career, I’ve implemented SharePoint 2003 and 2007 from bare metal servers to fully functioning portals, and I’m and end user on our SP 2010 portal.  Here’s where I disagree:

Social Networking

In SharePoint 2007, Microsoft introduced a number of features that we take for granted in today’s social media, most notably friends, likes and alerts.  These features aren’t implemented exactly like Facebook or Twitter, but they have the same result—end users can self-build their social circles and easily stay in touch with the people around them.

Cloud Computing

This is patently false, and has been for several years.  See SharePoint Online at http://www.microsoft.com/online/sharepoint-online.aspx.  Add in the other BPOS offerings, and you have a cloud suite that has been adopted by an impressive customer list.

Mobile

This might be truth-by-degrees.  Notice they don’t list Windows Phone 7?  WP7 and SP 2010 are a pretty good match, and I’ve used my Droid with SP 2010—that could be better.

Development Tools

I doubt Salesforce has a richer development environment than SharePoint.  From building native web parts in Visual Studio, to a market of pre-built web parts, to InfoPath, there are many options to expand SharePoint, all of which leverage existing Microsoft development skills (which is a large pool of talent).

What did Saleforce skip?

When it comes to ads, oftentimes the silence is deafening.  Since it’s their ad, Salesforce doesn’t have an obligation to list areas where they are weak and SP is strong.  I’d include seamless network authentication (meaning users don’t have to remember additional passwords), workflow, and translation services as some big features SharePoint has that Salesforce left off.  And let’s not forget integration with Exchange and SQL Server Reporting Services.  In these features, I think we can assume at least parity between the two, perhaps SharePoint leading.

WP_000033

Lotus Notes, you’re on your own here.  Other than Ray Ozzie being involved, I know very little about the platform.

Posted in SharePoint | 1 Comment

Configuring DiscountASP.NET IMAP Email on Android

[update: 2011-12-19 DiscountASP.NET has recently upgraded their SmarterMail system.  The latest version has sync capabilities beyond IMAP and POP/SMTP.  Options include SyncML or a SmarterMail Sync app-Exchange ActiveSync is not supported.  I recommend logging in to your webmail account and looking through the Synchronization Center to see if there is an option that might work better for you.]

Some combination of key words on my blog is bringing a bunch of people to my blog seeing how to configure DiscountASP.NET IMAP email with their Android phones.  It’s actually quite easy

First step—ignore the email app that comes with Android.  Pretend it doesn’t exist.  It stinks.  If Google knew shame, I’d say they should be ashamed for producing it.  Instead, you want to get K-9 Mail.  K-9 Mail is available in the Marketplace, or you can see it on AppBrain (speaking of things Google could do better…anyhow: http://www.appbrain.com/app/k-9-mail/com.fsck.k9).  K-9 Mail is apparently a fork of the original Email app, but is vastly improved.  It is the best email client I’ve seen on a mobile device (by my count, 12 apps on 6 devices in 13 years).  Kudos to the K-9 Dog Walkers!

Here are the settings you’ll need to know:

Incoming server

Username = your full email address
IMAP server = imap.<yourdomain>.<yourtld>
Security Type = None
Authentication Type = PLAIN
Port = 143

Outgoing Server

SMTP Server = smtp.<yourdomain>.<yourtld>
Security Type = None
Port = 25
Require sign-in = check
Authentication type = PLAIN
Username = your full email address

Beyond the basic settings, there are a gazillion additional settings–you can choose to subscribe to certain folders, automatically delete messages, push notifications, etc.  Spend a little time exploring the settings so you can take full advantage of the application.

Posted in Android | 7 Comments

Yahoo closing Delicious? What next?

First of all, the fact that Yahoo is closing the social bookmarking site Delicious cements Yahoo’s reputation as having the uncanny ability to become completely irrelevant.  Let’s take a walk down memory lane.

Yahoo started as a human-edited directory of links to websites.  Back in the mid-90s, that was easy to keep up with.  There weren’t that many sites.  What started out as a free listing, then became paid-for-faster-inclusion, and finally became pay-for-inclusion.

Just as the proliferation of sites was making human editable directories cumbersome to both edit as well as use, search engines began to be developed.  First up was AltaVista, from DEC (Digital Equipment Corporation).  AltaVista was basically word matching to show how fast DEC’s new AltaVista chips were.  Everyone was impressed, but not as much with the chips as with the service.  DEC didn’t stray from its core purpose, and now AltaVista is part of Yahoo (also on the chopping block) and DEC was consumed by Compaq, which was then consumed by HP.  The same year Compaq bought DEC, a research project known as Google was launched.  To supplement its directory results (which you can still find at http://dir.yahoo.com/), Yahoo began serving search results from AltaVista, and later, Google.

The short history of the Internet is littered with stories of companies that “get it”, and companies that don’t/didn’t.  Yahoo has shown, time and again, it doesn’t “get it”.  Despite having a stable of awesome web properties (like Delicious and Flickr), Yahoo just can’t figure out what to do.  That’s kind of pathetic, really.  Think of it this way–Delicious was a human edited directory of websites.  Instead of single entries, a site could be submitted as many times by many people.  What more zeitgeist do you need?  These data are a gold mine of trend analysis.  No one wants Yahoo to reveal the specific user information, but few people would care if Yahoo said (or sold) the aggregate facts—1000 people linked to Site A in the 12 hours after a story about it was posted; over time, 350 people have visited the site more than once, and 50 repeatedly visit the site.  Like Pecos Bill used to day, there’s gold in them thar hills!

Well, too bad for us Delicious users.  So what’s next?  This falls in line with my belief that you, and you alone, need to be in control of your data.  I broke this rule with Delicious, and now I’m paying the price.  The export functionality does not produce well formed or valid XML, so the output will be difficult to work with.  In the end, I want to control my own data again, so I’m looking for a Delicious-style script or site to use.

One option is PressMark, an older WordPress-based bookmarking site you can host yourself (bonus if there is an Android client) or is a cheap fees.  Sabros and Scuttle are open-source pojects which claim to be similar to Delicious.  Akarru, GetBoo and Feed Me Links also make similar claims.  The website Diigo is sort of a combination of Delicious and Evernote.  I’m not sure which way I’m going yet, so drop me a line if you have experience in one of these products, or in such a similar situation.

[update]

Lifehacker has a couple more options listed at http://lifehacker.com/5714329/the-best-services-for-migrating-your-delicious-bookmarks.

Posted in Blogging | 2 Comments

Our Book is Officially Published!

Nate and I received the official word earlier today:

Hi Guys,

I am delighted to say I have just clicked some mouse buttons, and officially published your book.

Congratulations!

The book will become available on Packtpub.com in the next hour or so, and channel feeds will kick in soon (Amazon, for example, is currently taking around 3 days).

Well done on all your hard work! It looks fantastic.

The direct link to the book on Packt is http://bit.ly/msazurebook.

Right now, I’mfeeling a great deal of excitement and a great deal of relief.  What an awesome experience.  Packt Publishing was fantastic to work with, we had total freedom to develop the book as we saw fit, and I’m proud of how it turned out.  We worked our tails off to make this happen, and I hope everyone who reads the book finds it very useful.

Posted in Azure | Tagged | Leave a comment

Installing WordPress on DiscountASP.NET

Background

I’ve had personal and client sites hosted on DiscountASP.NET for 5 or 6 years now, and I’ve been very happy with them as a host.  I’ve found the first annoyance recently—despite being the most popular blogging platform in the world, running just fine on IIS, and being included in the Web Platform Installer, DiscountASP.NET does not have a one-click installation for WordPress.  Not a big deal, the installation is really easy.

This process assumes you’re doing a new installation, and that there is no content to migrate.  I’ll cover content migration options in the next post.

What you’ll need

  1. Hosting account
  2. Add MySQL option to your hosting account.
  3. WordPress download, from http://wordpress.org/
  4. FileZilla FTP program, from http://filezilla-project.org/.  FileZilla is the best FTP program to use with DiscountASP.NET.  I’ve tried others, but they hold connections open making directory manipulation impossible.

The Process

Provision a MySQL Database

First step—log in to your hosting control panel, and add a new MySQL database.  After you log in, go Database Management >> MySQL Manager.  If you don’t see MySQL Manager, you need to add MySQL to your hosting account.

The first options you’ll set are the database name, the username, and the amount of disk space to allocate (you add the password in the next step).  Click Create.

image

Once the database has been created, it will be listed with any other MySQL databases you have.  To change the password, click Manage.

image

Click Update Password, enter the new password, and click Update Password.  The database is now configured.  You’ll need this configuration information in the next step.image

Add a Default Document

While you’re still in the Control Panel, go Tools & Utilities >> IIS Tools, and click on the Default Documents tab.  Add index.php to the list.  This allows visitors to browse your blog without specifying the file name in the URL.

image

Installing WordPress

Unzip WordPress, and follow the 5-Minute Install instructions.  The important part is the second step, where you rename the config file and edit the database information (see http://codex.wordpress.org/Editing_wp-config.php).  Edit the file with Notepad or your favorite text editor.  You only need to change the four settings listed at the top of the help page.

Once that is done, connect to your site with FileZilla.  If you want to install WP in a subdirectory (such as www.mysite.com/blog), create the subdirectory.  Otherwise, delete the files in the root.  Then, upload all of the WordPress files to your site.

In order to populate the database tables, run the installer at www.mysite.com/wp-admin/install.php (or www.mysite.com/blog/wp-admin/install.php).  On the first page, you’ll set your blog’s title and create the initial user.  Make sure you keep track of this password!

image

If all goes well, you’ll see this:

image

You’re now ready to log in and start using your blog!

Posted in WordPress | Tagged | 4 Comments

Just migrated to WordPress

I’ve just migrated my blog from DotNetBlogEngine to WordPress, and I’m so happy about it.  This is the way blogging should be.  What a great ecosystem WordPress has.

My blog is hosted on DiscountASP.NET, and runs on Windows 2008 and IIS7, with MySQL as the database.  I’ll document my experience, it was very easy but not straightforward.

Posted in About RJ Dudley | Tagged | Leave a comment

Microsoft releases Visual Studio Scrum Templates 1.0 for TFS

Microsoft has released a new Scrum process template for TFS 2010, their first process template since Agile and CMMI in TFS 2005.  It’s completely new, and is supposed to follow the Scrum methodology from top to bottom:
 
So, why a new template?  Scrum has become one of the dominant project management methodologies in recent years and is quickly becoming a default choice for new teams as well as teams looking to improve their existing processes.  While the MSF Agile template can be used effectively by Scrum teams, we found that there was strong demand for a prescriptive Scrum template – a template that follows the Scrum methodology from top to bottom that uses Scrum terminology throughout. 
 
Posted in TFS, Visual Studio 2010 | Tagged | 1 Comment

Speaking at Aug 10 2010 Pgh .NET, with swag!

Five great sessions this time (#1 is sure to be the best, though).  This will be my first talk as a Technical Evangelist for ComponentOne.  And, I'm bringing C1 swag.  

 August PGHDOTNET Meeting - 5 Guys with Code (plus Swag-a-palooza)

 Tuesday, August 10th, 2010
 5:30 PM – 7:30 PM
 Microsoft Offices, 30 Isabella St., Pittsburgh, PA 15212
 Registration details :
http://www.pghdotnet.com/201008.aspx
 
Join us for a fun-filled evening as 5 developers present for 15 minutes on a topic of their choice.  In between each session we'll be giving away all sorts of swag.  This is the can't-miss event of the year!!
 
Session 1
  A Quick Look at the new SQL CE Engine
  Rich Dudley
 
Session 2
  Layout Controls for XAML
  John Hidey
 
Session 3
  jQuery Code Snippets in Visual Studio 2010
  David Hoerster
 
Session 4
  Bowling for TDD
  Eric Kepes
 
Session 5
  Table Value Parameters with SQL Server 2008 and Microsoft .NET

  John Sterrett 

Posted in PGH.NET, SQL Server | Leave a comment