Thursday, March 24, 2005

My good friend Josh Evitt has started a new blog at www.TheGuitarBlog.com.  It's been my experience that there is a high correlation of people who are software developers (or are really "into" computers) and are also musicians.  Especially guitarists.

Crank it to 11, Josh!

Thursday, March 24, 2005 12:08:00 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [3]  | 
 Monday, March 07, 2005
Mike Gunderloy of Larkware "Daily Grind" fame has written a positive review of Paul Wilson's UIMapper.  If you don't already subscribe to the Daily Grind, you should.  Now.
Monday, March 07, 2005 10:40:00 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Monday, February 28, 2005

Paul Wilson has released his UI Mapper.

A UI Mapper is a library and set of controls that allows your UI to be dynamically created at run-time, loaded from your business entity objects, as well as to persist the UI changes back to your entities. It also allows you to use your own DAL, Framework (like CSLA), or O/R Mapper (like NHibernate, LLBLGen Pro, WilsonORMapper) to transparently load and persist your business entity objects to a relational database.

The UI Mapper supports both Web and Windows applications, and ships with several UI Mapper-aware controls.  The UI Mapper allows you to create your own controls, or wrap 3rd-party controls.  I commend Paul for not only developing and releasing this product to the public, but also creating a flexible framework that allows you to plug in your own components and your own data access layer, including other O/R mappers.

http://weblogs.asp.net/pwilson/archive/2005/02/28/382090.aspx

http://www.uimapper.net/

Monday, February 28, 2005 10:53:00 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Monday, February 21, 2005

Can't work with 'em...

Can't blue-screen without 'em.

Monday, February 21, 2005 7:25:00 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Monday, February 14, 2005

Eric Wise has put together a overview of object oriented programming (OOP) concepts for VB.NET.  Please read if you're new to .NET or not sure you understand what OOP is.  Anything you can do to improve your OOP knowledge and skills will have a direct impact on your effectiveness and enjoyment of .NET (or any OOP language, for that matter).

If you prefer C#, use a VB.NET/C# syntax comparison to help you translate Eric's VB.NET code examples and list of declaration options.

Monday, February 14, 2005 11:04:00 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 
 Saturday, February 12, 2005

Inspired by Joe Audette's presentation at the Nashville .NET Users Group meeting last night, I've been on a mission to learn more about MySQL.  I downloaded the database server, administrator, query browser and the .NET data provider "MySQL Connector/Net" (formally ByteFX, I believe).  After installing all the goodies, I fired up MySQL Administrator and created a new database ...er... schema, and added a couple of tables.

Setting up a "hello world" test was a breeze.  MySql.Data.MySqlClient includes a MySqlHelper class, which is equivalent to the SqlHelper class found in the Microsoft Application Blocks for Data (now in the Enterprise Library).  Within just a few lines of code, I had a DataGrid populated from my new database...uh...schema.

string cnnString = "Server=localhost;Port=3306;Database=mydb;Uid=myusr;Pwd=mypwd";
MySqlConnection cnx = new MySqlConnection(cnnString);
cnx.Open();

DataSet ds = MySqlHelper.ExecuteDataset(cnx, "SELECT * FROM favorite");
dgFavorite.DataSource = ds;
dgFavorite.DataBind();

But, I didn't stop there.  Oh, no.  My new mission was to see if I could get Paul Wilson's ORMapper to talk to MySQL.  It took some Googling and a couple of good resources, but I was eventually able to do it.

// Retrieve a single object using GetObject()
Favorite fav = (Favorite) DataManager.ObjectSpace.GetObject(typeof(Favorite), 1);
lblResults.Text = "Retrieved Favorite: " + fav.Text;

// Retrieve all objects using Paul Welter's RetrieveAll() static method
dgFavorite2.DataSource = Favorite.RetrieveAll();
dgFavorite2.DataBind();

Of course, there are a lot of details I'm leaving out.  I may use this experience as a starting point for a tutorial or two for my "Learn ASP.NET" section.

By the way, I'm using Paul Welter's latest CodeSmith templates for the ORMapper, which automatically sets up static methods on the generated entity classes such as Retrieve(), RetrieveAll(), RetrievePage(), RetrieveQuery(), Save() and Delete().  Very cool.

What a rush... this is why I became a developer.

Saturday, February 12, 2005 1:09:00 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [9]  | 
 Friday, February 11, 2005

Today's Dilbert just cracked me up.  That's me holding my Windows Mobile 2003 phone.  Wait... maybe this is too true to be funny...

Friday, February 11, 2005 8:48:00 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 

The most frequent question I'm asked about hosting at ChristianASP.NET is database support.  I love Microsoft SQL Server and have used it for years.  (Since version 4.2!)  Obviously, I can't afford what it would take to license SQL Server in a hosted environment.  I have a few users who are using Access or MSDE.  I know that MySQL and PostgreSQL may be viable solutions, but I've never used them.  I know absolutely nothing about setting them up, or hosting them so that they would be secure and properly maintained. 

Anyone have experience with either MySQL or PostgreSQL?  Any advice or resources you'd recommend?

Friday, February 11, 2005 8:43:00 AM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [4]  | 
 Wednesday, February 09, 2005

If you use .Text, you may want to check out Joey's new Watercolor skins

Wednesday, February 09, 2005 3:20:00 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [0]  | 

When GoDaddy.com's ad came on during the SuperBowl, my wife turned to me and asked, "Isn't that the company you use?"

"Unfortunately," I replied.

I've purposefully waited to talk about this.  I'm still not sure exactly what to say, other than I'm extremely disappointed.  Betrayal might be a better word to use.  Because of Bob Parson, GoDaddy.com's owner, and his association with QuickVerse (Bob started Parson's Technology), I felt confident I'd been dealing with a company that would have the utmost integrity.  Apparently, I was wrong.

GoDaddy.com has received a lot of publicity over this, so I suppose they feel like their ad was an enormous success.  To the rest of the world, it may seem like this was a brilliant marketing strategy.  I think it's a disgrace.

My apologies to those of you who have registered domains at GoDaddy.com based on my recommendation.

Wednesday, February 09, 2005 1:56:00 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [5]  | 
 Tuesday, February 08, 2005

I've renamed the "Articles" section to "Learn ASP.NET," and created a new page named Online Resources for listing recommended links.  It's far from comprehensive, and I haven't finished going through my bookmarks.  Please post your favorite sites and articles. 

Also, I plan to add a group of links for e-Ministry.  I've seen a couple, like Church Marketing Sucks and Online Evangelism, and there are some great blogs I've discovered recently.  Know of any others?

Tuesday, February 08, 2005 9:58:00 PM (Central Standard Time, UTC-06:00)  #    Disclaimer  |  Comments [6]  |