Project Server 2003 - the database from hell

22 November, 2007 (08:52) | General | No comments

Been doing some work against the db that ships with Project Server 2003. Oh boy! Count your lucky stars if you don’t have to touch that thing. Its awful. Anyway, my customer was kind enough to send this link to a series of steps to configure a VM of Project Server 2007 ( VPC Image ) . That’s useful. PSS 2007 has a somewhat better structure in its db than 2003 but its still a big buggah (and that’s a technical term right there).

Connecting the data access technology dots

11 November, 2007 (15:53) | General | 1 comment

Both Roger Jennings and Rick Strahl are pointing out, each in his own way, that LINQ isn’t getting a lot of love in some quarters.  Roger connects the dots for slow thinkers like myself and points out that Rob Connery’s contribution of SubSonic to the ASP.NET team actually means that there is a real honest to goodness trend toward using an OSS based tool. And that this choice actually shows a preference of sorts. It would not be suprising if ScottGu denies that connection . But it doesnt matter. What matter is that he took steps to hire Rob and to get people like Phil and Hanselman on his team. Good stuff.

I love SubSonic and have cheered Rob on from afar for as long as he has been toiling on it. At the same time I have not been the biggest fan of LINQ simply because in comparison to other tools it just seems rather lacking. To me. My opinion. Yes its subjective I know. But one reason why I like it when opinion makers like Roger and Rick mention alternate technologies is simply that it helps me when I try to convince a customer to use a particular non-MS tool. I am still amazed on a daily basis how many IT Managers will not consider any tools that don’t come from Redmond. Wow. Talk about drinking the kool-aid. Anyway. Time will tell. For the moment I am excited about the changes taking place in the ASP.NET group.

Of course having some sort of LINQ compatibility is probably in the cards for many tool vendors out there. But in the end, as Roger points out, the fact that LINQ is lacking some very necessary aspects for an ORM just means the alternate solutions will hopefully end up winning the day.

Update: Rocky Lhotka has a way with words and explains in one short paragraph what the core problem with LINQ is - it produces IEnumerable resultsets that are not live updateable. His CSLA framework has been one of the most widely used business object architectures in the .NET industry. He knows what he is talking about.

Oooops

8 November, 2007 (08:37) | General | 1 comment

Yesterday I took part in a meeting with the technical management team of a customer. Picture a room full of about 12 people. Programmers, PM’s, Managers and even the CIO of the company in attendance. The purpose of the meeting was a presentation on the architecture and design of an application we are producing for this company.

I went through the slide deck and explained various aspects such as WCF, Dependency Injection etc. just humming right along.  Part of the presentation dealt with the notion of entities and object relational mapping. In a previous meeting I mentioned that a generic datatable or dataset is not the same as a business object. Companies derive a lot of value by modeling the intelligence and domain knowledge of their organization in the form of business objects.

The CIO stirred in his seat and became visibly agitated. He jumped in and made a bit of speech to the effect of ” I don’t care about business objects because they take so long to produce. Most of the time its much faster and efficient to produce a resultset and hand that resultset back from the database to the front end. “

This was my very next slide in the deck. Talk about irony.  But it also illustrates some of the difficulties faced by development teams who report to management that was raised on the predominant data access technology produced by Microsoft over the past 15 years. These are the fruits of sowing the seeds of Dynasets, Recordsets and Datasets. Life is funny though.

Anyway, I hope to convince this gentleman just through sheer productivity that there is another way…..

ScreenShot055

Everyone is a Vice President - Completely Agreed

1 November, 2007 (16:10) | General | No comments

Wes has a neat post about the “Title Wave” that is sweeping the country.  In short, it points to a strange demographic that shows an absolute abundance of VP’s.

Well, I can personally attest to that. Having been a VP of Server Dev and a Sr. VP of Technology, the interesting part of both positions was the fact that  I still coded my butt off whenever possible. And I hated endless meetings where PM types couldn’t figure out why software wasn?t being built faster.  

And while I may personally not give a lot of credence to titles, there are plenty of HR propeller heads that do. Therefore having a bona-fide honest to goodness record of holding a VP rank ( as opposed to the self-made CEO by filing corporate papers)  makes all sorts of difference when it comes to salary evals, job search engines and benefits negotiations. It is easier to jump from a start-up VP position to a different company VP level than it would be going from Architect or Director to the same destination. So yes there is a wave, but I don’t blame folks participating.

A good example of Moore’s Law

30 October, 2007 (17:04) | General | No comments

I was discussing the idea of maybe buying one of those fancy WD Terabyte External NAS drives with Jeff Gilbert today. A little while later I came across this image. Times have changed……

harddrive

If you could work anywhere in the world… where would you go?

29 October, 2007 (17:25) | General | 3 comments

Last night my wife and I were discussing the future. She brought up the idea that once our daughter goes to  college we could move somewhere else. She literally said ” well from the looks of your business, you could really work anywhere in the world…”

There is some truth to that. Have you noticed a trend in information workers in the past three years? Seems we are becoming more mobile. WebWorker Daily has some posts on this. And I noted with satisfaction that jobs are staying in the US but moving to smaller towns. lavender_rain_lrg

My knee-jerk reaction was that I would love to move to Maui. Rick Strahl shouldn’t be the only German expat .NET guy on the island. Besides he isn’t there half the year anyway :) 

Or maybe Kauai might be nice. If I understand it correctly there will be a .NET vacancy on that island in the near future….

The point is that I love the islands. Understandably so because I grew up in a very cold and winter oriented small town.

Well until that point in time when I can sit under the banyan tree in Lahaina with a laptop, I have a wonderful painting on my office wall that allows me to zone out and travel back to the islands as needed.

If you could work anywhere in the world, where would you go?

Hidden costs of offshore software development

28 October, 2007 (07:04) | General | 8 comments

map Rocky pointed to an article called “Considerations in Evaluating Onshore versus Offshore Software Development” which I wholeheartedly agree with.  Having led a distributed team in India and two time zones of the US, I can tell you that its not all cake.

Some of the problems we came across ranged from the typical cultural differences to actual management issues within the Indian company.

As far as cultural issues are concerned, it would be typical that the Indian team was given an unrealistic deadline ( mea culpa ) , and everyone would sign up for it without much feedback in terms of how possible the deadline was in the first place. I’ve seen this happen with several organizations and as best as I can tell, there is a real disconnect in the feedback cycle. So when asked ” Can you get this done” the answer was always “Yes”. No matter how ludicrous the schedule.

Another important aspect is the preference of Indian teams for very structured and requirements driven development. I have seen only 2 out of 20 developers who were able to incorporate agile methods. For the most part companies thrive on CMM certifications and “big design / big process up front” development. It is so much part of the culture that I had people leave my team to join CMM Level 5 companies.  In a way that is understandable, because being thousands of miles removed from the customer makes it hard to be agile, so big design up front goes a long way toward saving the programmers sanity.

Last but not least another cultural observation. This particular experience may have been due to our Indian vendor / partner having some pretty weak technical management. Whenever there was an unknown factor or an architectural decision, our team would debate as a group for hours on end to find an appropriate solution. That sort of discussion happened several times a week and impacted the schedule quite  a bit. I wonder if that something only germane to our specific partner org .

In any case, after months of schedule delays I decided to move the production of a particular piece back to our US team and had made more progress in 2 weeks with 5 developers locally than a team of 20 devs and qa people had made in India in 2.5 months.

Makes me wonder if my experience was just an extreme case.  If you have had successful offshore projects, I’d love to hear how it was done. And did you save money in the end ?

What a talent

24 October, 2007 (19:38) | General | No comments

Scott Hanselman pointed to a Silverlight demo of a Steely Dan song performed by Carl Franklin. Now there is a programmer rock star - literally. If you want to watch it, you need to install Silverlight. I am pretty much blown away by the amount of talent that Carl has. Its insane.

Some good news for our industry

22 October, 2007 (17:10) | General | No comments

The Los Angeles times in its Sunday Edition carried a front page article by Peter Pae entitled ” Some Firms Move Jobs Onshore “.

The gist of the article is that numerous large corporations are looking to send jobs to small town USA where overall savings can equal those of sending the work offshore.

This appears to be yet another indicator of a two-fold trend that came about in recent years. Numerous tech workers have moved to smaller rural communities in order to enjoy a better quality of life (and lower real estate costs), along with an overall trend in the US where companies are realizing that offshoring is not the panacea that it had been made out to be. Especially with the rise in offshore salaries over the past 3to 4 years.

I have some personal experience with this trend because members of Sequoia Services Group’s (site still under construction)  virtual team are located in small towns in Texas and Northern California. Hopefully this trend will continue. There is no reason that we can’t handle many of the projects and jobs currently shipped out of country.

When Visual Studio Cannot Publish a Website

22 October, 2007 (06:45) | General | No comments

If you ever come across a situation where VS does not properly publish a site, but also doesn’t give any reason why, it maybe a good idea to go to the command prompt instead of VS. At the command prompt use the following statement

aspnet_compiler -v /MyWebSite -p “{Root}” “{Target}” -errorstack

Root and Target are directory paths for the source of the build and the destination of the build. The best part is that this command will display a nice error stack showing the issue, which , depending on the problem at hand , maybe something that VS cannot show .

My personal record has been broken

14 October, 2007 (08:24) | General | No comments

kite runner At the age of 12-13 years old I spent a year reading my way through the science-fiction section of our local public library. I grew up in a very small mountain town in Germany so consequently there weren’t that many books in the sci-fi section. I would say right around 15 to 20.  I’ve always considered that some sort of accomplishment to have read and enjoyed all these books at that age. 

Well, this summer my record was broken. Turns out my 13 year old daughter read over 25 books in a three month period. Everything from John Grisham to Uncle Toms Cabin - and of course Harry Potter. With Potter she took her time and purposefully slowed down to deliciously stretch out the savor of the story line. At the moment she is reading the Kite Runner, which by all accounts has gotten a lot of acclaim.

I am a proud papa to be sure. Don’t know how much of the books she will remember. In my case there are one or two specific scenes that stuck with me all these years. One of them was about a hominoid population of a planet that had sharp bone ridges instead of teeth. No toothache, no dental problems. This book always comes back to me whenever I am in a dentist chair…..

How not to do business on the Internet - Part 5 - Don’t believe your own hype

12 October, 2007 (09:27) | General | No comments

I live in Los Angeles. Not far from Hollywood, Brentwood and Beverly Hills. In this town you frequently come across people who buy into their own hype and end up making fools of themselves.  Did anyone see Britney Spears at the VMA’s this year? I would ave missed it were it not for my daughter. Its a classic case of someone believing their own hype. It was horrible.  The landscape around here is littered with spectacular failures. Movies that get over-hyped, personalities - you name it.

With that in mind, somehow it really wasn’t as big of a surprise to find out that DHH believes his own hype. What’s a young man from a small Scandinavian country to do when he comes to the US and attains the programmer equivalent of rock-star status. It requires a whole lot more maturity than most of us had at that age to resist the temptations being thrown at him.

Rob Connery has a way with words and so often expresses ideas that have been percolating in the back of my consciousness and haven’t been formulated in a post because frankly half the time I don’t think my every idea or consideration is worth posting about. Here he is once again outlining in nicely researched detail some of my very own concerns. 

I’ve played with RoR. I have all the books published by the Pragmatic shop but I have yet to use RoR in a production setting.  I still think RoR is a great achievement and drove a considerable amount of change in the rest of our industry. But if I had one bit of advise for DHH it would - Dude don’t believe all the hype. Enjoy your moment in the sun but remember that moment will pass.

I’ve read the blogs and watched the many “oops” videos. What’s that old song ? ” Oh Lord its hard to be humble when your perfect in every way… “  I don’t want to take away from David’s achievements, but I completely agree with Rob’s post.  Thanks for being so eloquent Rob. His experience and  research parallels that of friends of mine who have actually worked on RoR production apps. In one case a very very very large enterprise put a stop to all RoR work - from what I have heard in part because of issues similar to the production problems outlined in Robs post.

Personally I would love to play with RoR as a front end to C# web services. Just to see how it works out. But from a business perspective, I have tools similar to SubSonic that allow me to be quite productive with ASP.NET, so I haven’t really gotten to the point where another technology was so disruptive as to make me change my tools of choice.

Now there is something interesting

8 October, 2007 (18:50) | General | No comments

Seems that the MVC framework that got Phil to move to Seattle was discussed at Alt.NET Jeffrey Palermo has a post about it. Its supposed to

  • Natively support TDD model for controllers.
  • Provide ASPX (without viewstate or postbacks) as a view engine
  • Provide a hook for other view engines from MonoRail, etc.
  • Support IoC containers for controller creation and DI on the controllers
  • Provide complete control over URLs and navigation
  • Be pluggable throughout
  • Separation of concerns
  • Integrate nicely within ASP.NET
  • Support static as well as dynamic languages
  •  

    Well - I can’t wait to see this. Hope it turns out great.

    Just a smorgasboard of notes

    7 October, 2007 (14:35) | General | 3 comments

    Have you ever had a smorgasboard? Probably if you live in parts of the country that were settled by Scandinavian immigrants. Its a lot of fun. In California I have only seen two restaurants in 20 years that offered it and both have long gone out of business.  A smorgasboard in this case simply means I am going to ramble on about some news and developments. A variety of things.

    First off - Halo 3. Every other programmer on the planet has probably posted about it now. I like the better rendering of people and some of the new weapons. I don?t like how much it runs on a guided path and the fact that the story line is pretty much the same as always. Including a mad dash run to the finale. It was fun to play in a sort of nostalgic sense but didnt give me the same thrill as Halo 1 did. Bummer.

    Table Size Guidelines Playing on the XBox brought a distinct yearning for a higher resolution TV with it. Lately I’ve been waffeling back an forth - plasma or lcd ? …. 720p or 1080p ? …. turns out there is a really nifty chart on this site here that helps to determine what maybe best.

    This week marked the 6 months anniversary of becoming an entrepreneur (again). Sequoia Services Group has been doing well. We have had a great variety of interesting projects to work on. From a one of kind “trail-blazing” web services to bread and butter ASP.NET work, its all good. Of course being as busy as all that, our own site has been suffering from neglect. I hope to be able to tweak a bit in the coming days.  In the meantime I want to relay an anecdote that is very telling of the times we live in. 

    I needed a logo for a business card. Basically its supposed to be a variation of the header image on our website.  Having had graphics artists working for me at SkillJam during my stint as VP of Server Development, I thought I could cut a deal with one of them. No dice. I must have really mistreated my people (I didn’t) -  because my former team-mate wanted to charge me $500 for a logo. Too rich for my blood. In a moment of inspiration I decided to post the request as a gig on craigslist, and promptly had my very first experience with the craigslist economy. It was pretty amazing. Within 3 minutes I had 7 email replies. After 15 minutes I had selected a good candidate and within 2 hours I had the final product - exactly what I wanted…. for - wait for it…… - for $45.00. Now that’s what I call e-commerce.

    SQL Server Reporting Services stream PDF to browser

    29 September, 2007 (09:32) | General | No comments

    SQL Server Reporting Services has become more and more popular, in no small measure due to the fact that it is free. When used in web applications, there is often an requirement to present the user a report as PDF file. For all of the obvious reasons (fidelity, print accuracy etc) .  One of our current projects had a similar  requirement  - but with a few added twists.

    Our customer requested the ability to generate a PDF in a web application and as a workflow queue , store the report in a database - and to top it all off - have the entire process wrapped in a web service. The customers business process dictated that a report is generated and then locked, pending a review . While the report is locked it can be reviewed by any number of users but not changed. Plus it has to be the original PDF that was created in the first place ( so no “locking of data” and re-running the report over and over).

    At first I wasn’t sure this was even possible. Can we render a PDF from SSRS by calling it directly without all the accoutrements of the SSRS web site etc. A quick email with Phil confirmed that in theory this can be done because in his words ” SSRS is just a web service itself. You don’t need the reporting services web site. ”

    imageWe ended up building a very interesting contraption. The web client calls a WCF web service that manages all interaction with SSRS and handles some parts of the queuing and workflow. 

    Yes the web client could call SSRS directly. The WCF piece is a wrapper that in the future will entail printing to other formats as well.

    Depending on the state of the report the WCF Service either hands processing off to SSRS or simply pulls a previously generated report out of the database.

    I have to give .NET a ton of credit here because this sort of approach would have been really difficult to deal with had it not been for the great serialization capabilities built into .NET.

    There are two big areas of concern that we dealt with in building this tool. One was the need to get a serialized copy of the PDF file out of SSRS into the WCF Service, and the second of course was rendering the same information in the browser as it is streamed from the WCF.

    Here is what the pertinent section of the WCF code looked like:

    ReportingService repService = new ReportingService();
    repService.Credentials = new NetworkCredential(Settings.Default.SSRSUsername,
                                                   Settings.Default.SSRSPassword,
                                                   Settings.Default.SSRSDomain);
    byte[] data;
    data = repService.Render(_reportName, “PDF”, null, null, parametersPassed, null, null, out encoding,
                             out mimetype, out parametersUsed, out warnings, out streamids);

     

    The Credential Settings pertain to a domain user with appropriate rights to SSRS. The important part here is the fact that this call returns a byte array that contains the PDF of the report.

    The technique of storing serialized data in a database has been around forever and I will not go into the details of that aspect of the system.

    The second piece of the puzzle was the ASP.NET web client. And here is the code that renders the PDF in the browser.  Notice that I am not listing the call to WCF that produces the rptresponse. Its simply the response object that contains the byte array written out in the example above.

            byte[] report = rptresponse.Report;

            Response.Clear();

            //Send the file to the output stream
            Response.Buffer = true;
           
            Response.AddHeader(“Content-Length”, report.Length.ToString());
            Response.AddHeader(“Content-Disposition”, “inline; filename= MyPdfTest”);

            Response.AddHeader(“Expires”, “0″);
            Response.AddHeader(“Pragma”, “cache”);
            Response.AddHeader(“Cache-Control”, “private”);

            //Set the output stream to the correct content type (PDF).
            Response.ContentType = “application/pdf”;

            //Output the file
            Response.BinaryWrite(report);

            //Flushing the Response to display the serialized data
            //to the client browser.
            Response.Flush();

    So there you have it. In brief highlights the way one can produce PDF’s  using SSRS via web services. I am sure there are other solutions to this problem, but in our case it was created reasonably quickly, it works well and runs surprisingly fast. Considering there is an entire extra step that pushes the report into a db, it seems very responsive.

     

    Reference Material: http://support.microsoft.com/default.aspx/kb/875447

    My fantastic new phone - the Blackberry Curve

    25 September, 2007 (18:58) | General | 7 comments

    Today was the T-Mobile release date of the new Blackberry 8330 Curve Smartphone. What a great deal. Now some might argue that the IPhone is the best cell phone on the market. I am not one of them. Yes, of course the bbcurvedesign factor of the IPhone is fantastic, but from a practical standpoint I think it lacks a few things. Nice to look at though.

    Scott blogged about his experience with the IPhone and coined an acronym I will gladly use wherever possible - the WAF (Wife Acceptance Factor). For those of us who are married the WAF is important, no doubt.

     The Curve is a breeze to set up. Gmail was connected in less than 5 minutes. So far its everything I had hoped for in a phone of this type - but here comes the clincher - if you are a T-Mobile customer you can sign up for Hotspots@Home (using a wireless router) and get unlimited nationwide phone usage of $10. And just to get the ball rolling, TMobile will throw in a Linksys Wireless G Band router for free.

    Now that is one fantastic phone deal.

    5_wifi1 And the phone automatically detects the presence of wifi and switches to that network.  I am a happy camper tonight. If you saw my cell bill you would understand. Ever since starting my consulting business again the cell phone usage has gone through the roof. So this deal is incredibly useful to me.  Heck maybe Scott will finally forsake his object d’lust and come over to the dark side :)

    Speaking of dark side, for some reason I get more and different ring-tones with the Blackberry Curve. My current selection is a geeky rendition of Darth Vader saying “The dark side is calling Luke”. This in honor of Jeff Gilbert, one of my colleagues on our current project, who loves Starwars avatars and general silliness like that.  Here’s looking at you Jeff !

    Benefits of being a hard working doctor

    19 September, 2007 (12:46) | General | 2 comments

    My wife has a colleague who is one of the hardest working doctors I have ever seen (or heard about). He works almost as hard as programmers :)

    One if the benefits that this gentleman allows himself as a result of all his hard work are a few very expensive cars. He owns several, but the ones that really stand out are a Lamborghini Murcielago,  and one of only five ever made Jaguars. The XJ220S was about a million dollars when it came out, but by now I hope it has gotten more affordable.

    So this gentleman lives every boys dream - well almost every boy - as far as the cars go. Hope he enjoys them and gets much pleasure out of driving them. The Jag is really kind of amazing especially when you look closer - it almost reminds me of a spaceship. Very cool. Wonder what one has to do to get this thing maintained. Who is qualified to work on it? Wow.

    112_0701_11z 2007_lamborghini_murcielago_lp640 rear_left_view 0505_07z Jaguar_XJ_220S Front_Side_2_Car

    Product Review: SQL Compare by Red Gate Software

    19 September, 2007 (07:23) | General | No comments

     ScreenShot027

     

    I have been a pretty stalwart RedGate customer for a number of years. Which means in practical terms my review of this product is born out of hard-core usage in real production settings.

    SQL Compare is one of those indispensable database utilities that most production shops absolutely swear by.  It sits in my tool belt right next to Lightspeed and Apex SQL Clean. Version Six of this product added some evolutionary changes that make a lot of sense considering the current market place and state of affairs.  But I get ahead of myself .

    SQL Compare - what ?

    It compares the objects of two SQL Server databases and tells you which are different. Then gives you the option to synchronize the two schemas. Big deal you might say. I can do that with [.. insert name of favorite stored proc or hand crufted utility program here .. ]  Actually to tell you the truth you probably can’t. Yes up to a point most DBA’s worth their paycheck have a set of scripts to help with synchronization and rollout tasks but I guarantee you that none of them would be as thorough, easy to use and low impact on your servers as this tool.

    During my time as VP of Server Dev for SkillJam we had a live database system that supported 17 million users. Yes you’ve read that correctly. 17 million users - later it grew to 25MM - out of which we had about 3000-5000 concurrent users at any time.  And SQL Compare was able to roll out changes to the database with an absolute minimum of impact. Now mind you, we weren’t making those changes live with a bunch of users logged in. Of course not. But even during maintenance windows with the db taken offline, SQL Compare made the job reliable and a breeze.

    In a large scale production environment the old saying that “time is money” really holds true. If we were down for an hour we lost real dollars. Several thousand. If we couldn’t send emails for a day we lost tens of thousands of dollars of revenue. So of course it becomes terribly important to roll out changes quickly and accurately. SQL Compare by virtue of its GUI and step driven approach made these changes literally childs-play.

    Other uses

    image

    One of the newer features added in version six is the notion of saving the output of SQL Compare to a file. This opens up all sorts of interesting opportunities. The most important of them being the idea of database versions.

    Yes I know Visual Studio and VSS allow you to version database objects already.

    But if you are one of the many thousands of developers who has turned his back on  Visual Source Safe in favor of a more enlightened tool like Subversion for example - what can you do for version control?

    Well here you have it. Just use SQL Compare.

    The folks at RedGate have outlined some of the concepts and ideas of version control using SQL Compare in a white paper.

    Of course Red Gate, the manufacturer of SQL Compare has a number of other tools available as well. One of these came in very handy in yet another scenario.

    During my time at Skillam our CEO decided to internationalize the business and make our site(s) available all over Europe. Before you could say “Gesundheit” the company had hired ten new employees - all of whom were from a variety of European countries. Germany, Denmark, France, Italy. You name it. 

    Together with this team of translators we proceeded to convert one of our products into German, French and Swedish in record time.  Red Gate software played a key role in this effort.  Our developers provided a quick Win32 front end to the translators in our office who then were able to line by line and word by word convert the site(s) content into the various languages.  Once translated we used SQL Data Compare - a very complimentary tool that actually synchronizes the data between two db’s to move the translations from dev to staging to production without any hiccups in record time. The entire effort required one developer and one DBA (part time). The sites were converted within a couple of weeks. We certainly would not have dreamed of this sort of productivity without the tools by Red Gate.

    Bottom Line

    I think its pretty clear that I am a big fan of this product. But don’t take my word for it, feel free to get yourself a trial version and kick its tires.  Its well worth your time.

     

     

    Product Review: SQL Compare by Red Gate Software

    19 September, 2007 (07:21) | General | No comments

     ScreenShot027

     

    I have been a pretty stalwart RedGate customer for a number of years. Which means in practical terms my review of this product is born out of hard-core usage in real production settings.

    SQL Compare is one of those indispensable database utilities that most production shops absolutely swear by.  It sits in my tool belt right next to Lightspeed and Apex SQL Clean. Version Six of this product added some evolutionary changes that make a lot of sense considering the current market place and state of affairs.  But I get ahead of myself .

    SQL Compare - what ?

    It compares the objects of two SQL Server databases and tells you which are different. Then gives you the option to synchronize the two schemas. Big deal you might say. I can do that with [.. insert name of favorite stored proc or hand crufted utility program here .. ]  Actually to tell you the truth you probably can’t. Yes up to a point most DBA’s worth their paycheck have a set of scripts to help with synchronization and rollout tasks but I guarantee you that none of them would be as thorough, easy to use and low impact on your servers as this tool.

    During my time as VP of Server Dev for SkillJam we had a live database system that supported 17 million users. Yes you’ve read that correctly. 17 million users - later it grew to 25MM - out of which we had about 3000-5000 concurrent users at any time.  And SQL Compare was able to roll out changes to the database with an absolute minimum of impact. Now mind you, we weren’t making those changes live with a bunch of users logged in. Of course not. But even during maintenance windows with the db taken offline, SQL Compare made the job reliable and a breeze.

    In a large scale production environment the old saying that “time is money” really holds true. If we were down for an hour we lost real dollars. Several thousand. If we couldn’t send emails for a day we lost tens of thousands of dollars of revenue. So of course it becomes terribly important to roll out changes quickly and accurately. SQL Compare by virtue of its GUI and step driven approach made these changes literally childs-play.

    Other uses

    image

    One of the newer features added in version six is the notion of saving the output of SQL Compare to a file. This opens up all sorts of interesting opportunities. The most important of them being the idea of database versions.

    Yes I know Visual Studio and VSS allow you to version database objects already.

    But if you are one of the many thousands of developers who has turned his back on  Visual Source Safe in favor of a more enlightened tool like Subversion for example - what can you do for version control?

    Well here you have it. Just use SQL Compare.

    The folks at RedGate have outlined some of the concepts and ideas of version control using SQL Compare in a white paper.

    Of course Red Gate, the manufacturer of SQL Compare has a number of other tools available as well. One of these came in very handy in yet another scenario.

    During my time at Skillam our CEO decided to internationalize the business and make our site(s) available all over Europe. Before you could say “Gesundheit” the company had hired ten new employees - all of whom were from a variety of European countries. Germany, Denmark, France, Italy. You name it. 

    Together with this team of translators we proceeded to convert one of our products into German, French and Swedish in record time.  Red Gate software played a key role in this effort.  Our developers provided a quick Win32 front end to the translators in our office who then were able to line by line and word by word convert the site(s) content into the various languages.  Once translated we used SQL Data Compare - a very complimentary tool that actually synchronizes the data between two db’s to move the translations from dev to staging to production without any hiccups in record time. The entire effort required one developer and one DBA (part time). The sites were converted within a couple of weeks. We certainly would not have dreamed of this sort of productivity without the tools by Red Gate.

    Bottom Line

    I think its pretty clear that I am a big fan of this product. But don’t take my word for it, feel free to get yourself a trial version and kick its tires.  Its well worth your time.

     

     

    Nice Wi-Fi Reference

    18 September, 2007 (14:01) | General | No comments

    Samuel Dean, over at Web Worker Daily, wrote this very nice and comprehensive article dealing with wi-fi around the house. I especially liked the idea of a usb to wifi hub that allows you to get to printers or hard drives as attached devices on the network. That’s very handy. Read article.