Tuesday, July 14, 2009
#
So annoyingly, for the past few days I've been getting this gem when developing:
---------------------------
Microsoft Visual Studio
---------------------------
Team Foundation Error
Creating an instance of the COM component with CLSID {B69003B3-C55E-4B48-836C-BC5946FC3B28} from the IClassFactory failed due to the following error: 8007000e.
---------------------------
OK
---------------------------
I'm using:
Not only are pop-up errors like this annoying, they are somewhat disconcerting as you kind of end up wondering if the great being that is TFS 2008 is going to bite you in the butt for not listening (TFS 2008 is a vast improvement over 2005, but still has it's quirks and often requires a bit of TLC and appeasement - but I digress!)
This is actually a collaboration error with Windows Live Messenger (go figure).
Right, so this error is relatively easily solved:
- Open VS 2008
- Go to the Team Explorer panel
- Right click on Team Members
- Select Personal Settings
- Have a look at Collaboration, you'll probably see Windows Live Messenger there (if not, then can't help you sorry!)
- Under Collaboration select --> Change
- Choose <None> as the provider name
Suggest you click ok, and restart VS 2008 (I got another funky error when trying to do some other stuff in settings after changing that).
Et Voila!!
Thursday, January 29, 2009
#
I've recently been asked to help someone determine what files they have checked out in TFS.
Knowing that the Visual Studio Team System IDE (I'm using VS TS 2008) is
abysmal at helping give basic information like this, and not feeling like installing any other third party add-ons, I did a quick
Google search and discovered the
VS Team System TF command-line program.
I'm only going to show you
how to check on statuses of items across all TFS server sites/projects, feel free to do further investigation if you want to get trickier and be more filter savvy. The below serves my purposes more than adequately. Obviously, user your own TFS server location and so on.
- Open Visual Studio 2008 Command Prompt
- To see everything that is checked-out/locked across all TFS sites
tf status /user:* /s:http://tfsweb:8090/
- To see everything that is checked-out/locked across all TFS sites by a specific user, plug-in the username (round of applause for our eager volunteer Joe)
tf status /user:joe.soap /s:http://tfsweb:8090/
- If you're keen to learn more about the inner workings of the program type
TF /?
(etc, you know how to do it) to read up on the various options
SHOULD work with VS Team System for 2005, but I've not tried it.
Obviously, USE with care, this is quite a powerful little command line app.
The above with help from, and thanks to...
http://blogs.vertigosoftware.com/teamsystem/archive/2006/07/24/3125.aspx
http://blogs.msdn.com/buckh/archive/2006/01/10/511188.aspx
Friday, November 09, 2007
#
Yes, I'm once again dabbling in the web sphere (more front-endy type stuff than coding asp.net and so on). Playing around in particular with style sheets and css driven layout blah blah blah. Busy working on a subtext skin - two actually. One for the
aggregate site, and one for my
personal blog. Work blog will remain as is at present. Will probably get bored of the way my new skin(s) looks within a month, fickle female that I am
You can get an idea of what the final product will look like from my
work in progress new look aggregate blog site
http://www.chetjie.com/. As I said, WIP so still a tad buggy style wise (or should I say 'feature filled').
More on this once I finally have the full thing up and running - also a book recommendation that has made things easy-peasy! bet you can't wait to hear about it! (ha ha)
Wednesday, January 17, 2007
#
Am currently working on a project at an investment bank. A work colleague sent me the following link (thanks Gav) to Investopedia - http://www.investopedia.com/.
A really useful site dealing with information related to everything from "Investment Banking for Dummies" to "I'm the rocket scientist of investment banking, teach me something I don't know".
Thursday, January 11, 2007
#
A good friend of mine (and ex-colleague) Eden Ridgway did all the hard work in terms of creating something that will do a "decent job of arranging an ERD" for a database. If you're using SQL Server, go have a look at his post Using GraphViz to Generate ERDs for SQL Server. As Eden mentions, Management Studio doesn't do the most stellar job of creating a quick and practical ERD of your database.
I've been working with Oracle for the past few months on an integration project (my first time using PLSQL - out of my comfort zone, let me not start on that here!!! I'm a T-SQL girl at heart). So - long story short - I've written a basic PLSQL script that creates the equivalent GraphViz DOT version file content from an Oracle database.
Now, bear in mind that schemas/rights work slightly differently in Oracle so this script basically generates the file content based on everything that the logged in user is allowed to see. You can further restrict what is included in sections 1.1 and 1.2 in the script (read the comments for instructions).
Here's the script:
/*
PLSQL Oralce
*/
/********************************************************************
Generate the GraphViz ERD
********************************************************************/
SELECT
'digraph G {'
FROM DUAL
UNION ALL
/**************************************
Set the shapes
***************************************/
SELECT
' "' || OBJECT_NAME || '"[shape=box];'
FROM
ALL_OBJECTS
WHERE
OBJECT_TYPE = 'TABLE'
/*1.1)Enable this block using -- and update list if tables should be restricted to specific owners
AND OWNER IN (--'SYS','SYSTEM',
--include current schema for current session
SYS_CONTEXT('USERENV', 'CURRENT_SCHEMA'))
--*/
UNION ALL
/**************************************
Add the relationships
***************************************/
SELECT
' "' || FKRefTable || '" -> "' || PKTable || '";'
FROM
/********************************************************************
Get all the foreign key relationships in the database
********************************************************************/
(SELECT
PKTABLE.TABLE_NAME as PKTable,
FKTABLE.TABLE_NAME as FKRefTable
FROM
ALL_CONSTRAINTS PKTABLE
INNER JOIN ALL_CONSTRAINTS FKTABLE ON
PKTABLE.CONSTRAINT_NAME = FKTABLE.R_CONSTRAINT_NAME
WHERE
PKTABLE.CONSTRAINT_TYPE = 'P'
AND FKTABLE.CONSTRAINT_TYPE = 'R'
/*1.2)Enable this block using -- and update lists if tables should be restricted to specific owners
AND PKTABLE.OWNER IN (--'SYS','SYSTEM',
--include current schema for current session
SYS_CONTEXT('USERENV', 'CURRENT_SCHEMA'))
AND FKTABLE.OWNER IN (--'SYS','SYSTEM',
--include current schema for current session
SYS_CONTEXT('USERENV', 'CURRENT_SCHEMA'))
--*/
ORDER BY
FKRefTable)
UNION ALL
SELECT
'}'
FROM DUAL;
Here's a VERY BASIC sample DOT file content for a test database I used (based on only including the current session's current schema):
digraph G {
"ORDERS"[shape=box];
"PRODUCTS"[shape=box];
"CUSTOMERS"[shape=box];
"ORDER_ITEMS"[shape=box];
"ORDERS" -> "CUSTOMERS";
"ORDER_ITEMS" -> "PRODUCTS";
"ORDER_ITEMS" -> "ORDERS";
}
A big thanks goes to
Eden for the new skin on my work blog - I'm such a copy-cat, I saw how great it looked (using
Mark Wagner's skin) on Eden's blog and so I pinched (with permission) the modded skin.
Friday, November 24, 2006
#
A bunch of forward thinkers are assessing the demand for a web and technology conference in Southern Africa with a view to further encouraging "web and technology growth in Southern Africa". They're "really interested in getting together a bunch of leading, internationally respected speakers and thinkers from the industry to discuss what's happening".
A FAB idea I think!!! Pop on over to http://www.technologyforafrica.org/ to have your say and to find out more about it.
Monday, November 13, 2006
#
The project I'm currently working on relies heavily on integration (as most of our work does).
This means, I now get to play with SSIS (SQL Server 2005 Integration Services), Microsoft's answer to all your ETL needs. I've only dabbled with a couple of examples, but can say, that I am cautiously optimistic at present.
On-line resources were annoying me (too much yabbing, too few examples/detailed explanations), so we got a really fab book on SSIS - "Professional SQL Server 2005 Integration Services" with loads of practical examples and how tos. Highly recommended!!
Wednesday, September 27, 2006
#
As a saffer living in London, who still has vested financial interests back home (and very possibly the intention of moving back to SA at some point) I do keep my eye on the South African rand... It's taken a bit of a beating recently... But my technical blog is probably NOT the best place to go on about that...
A colleague showed me something very nifty in Google today (new to me!!). Try typing something like: "100 gbp in zar" into the Google search box....
More fabulously cool search type features can be found at: Google Web Search Features. Makes finding out those little bits and pieces SO much easier, from populations of countries and exchange rates to how many kilojoules that archaic imperial calorie stamped Boost bar you scoffed at lunch ACTUALLY contained....
In my book any shortcuts that make using a computer to do our bidding easier and that help save time are definite winners, wouldn't you agree?
More calculator specific instructions can be found at How to use the Google calculator.
Monday, September 25, 2006
#
I had the privilege last year of being exposed to some very funky (and what was at the time, very new to me) enterprise solutions management techniques/methods while working as a developer on a client project at Microsoft (Reading, UK). We made use of the Microsoft Services (UK) Enterprise Solutions Build Framework.
I found the tools used in terms of continuous integration, build, standards compliance and unit testing were INVALUABLE. I know I keep on harping on and on about sensible automation (i.e. automate those agonisingly painful tasks that developers often do manually, and unnecessarily waste too much of their lives on) but I've experienced both worlds - and whether it's personality related or not, I definitely prefer to work in an environment where standards and processes (well thought out and where it makes sense) are used effectively.
I particularly liked StyleCop - it ensured that our code was formatted correctly. This meant that, as part of a bigger development team, I immediately had an idea of layout/positioning of members within a class when working on different sections of a project.
Am hoping to make use relevant pieces of the framework again in the project I'm currently involved with (and in conjunction with Microsoft's Team Foundation System).
Tuesday, September 19, 2006
#
My brother has recently help start up a web design company in Australia called Ezywebs. He's currently studying a Bachelor of Business(Information Systems and E-Business) degree at James Cook University. Yes, just a stone's throw away from the Great Barrier Reef...
I am well impressed with my little brother. The initiative he has taken with friends and his passion for creating graphics and web sites have resulted in this new venture (Yikes - sorry boet, did I make you sound like a bit of a geek?
) And they are doing well, word of mouth has already meant they are swamped!
So - this post allows me to boast about my clever (and fantastically witty - but then what would you expect, he's related to me!!) little brother... Well done Daw!!! Keep it up...
Tuesday, September 12, 2006
#
As part of our use of TFS (Microsoft Team Foundation System/Server) at work, we're looking at re-evaluating/changing the way we approach source control and release management. As any company/team grows it's important to put procedures into place. By procedures I mean - standards that make SENSE and help facilitate improved development/maintenance activities.
Do you honestly want to spend more of your life tracking down bugs/versions, running around headless chicken style because people do things in their own way? "I did it my way" generally only works for old blue eyes, and lone star coders, not development teams...
It's very difficult as a new member of a team when every project has its own haphazard procedural (can that word even be used?) style. I don't, I have better things to do with both my work and after-work time than waste time on issues that could be avoided with a little bit of procedure and automation. Yes, every project is different, but having a backbone procedure in place will save so much pain/time - not just for developers, but also for management, and dare I say it, ultimately, the client??? (who after all, is the one who has to use the product and who pays our salaries!)
Rant over! Onto the topic of this post - software configuration management. Here are a couple of great articles sent my way by a colleague (thanks Gav K). They tie in nicely with what I was going on about in my 'continuous integration' post. Today we're looking specifically at source control branching/merging:
- Branching and Merging Primer - http://msdn.microsoft.com/vstudio/default.aspx?pull=/library/en-us/dnvs05/html/BranchMerge.asp
- Branching models vs. Pinning and Sharing - http://blogs.vertigosoftware.com/teamsystem/archive/2006/03/30/2484.aspx
Monday, September 11, 2006
#
We're starting to actively use Microsoft Team Foundation Server and Visual Studio Team System for projects at work.
Having worked on projects in the past that made use of continuous integration (using things like CruiseControl.NET, NAnt, NUnit, FxCop etc.) and various hybrids of agile methodologies (I.T. is just riddled with buzzwords) I found that some of the tools/methods definitely made development a whole lot less painful, and also spared the QA team one or two sleepless nights.
There's a really good MSDN article "Extend Team Foundation Server To Enable Continuous Integration" on continuous integration in VS 2005 Team System if you're keen on trying it out in your dev team - http://msdn.microsoft.com/msdnmag/issues/06/03/TeamSystem/default.aspx
Friday, September 08, 2006
#
I upgraded my blog last night from Subtext 1.5.2 something to 1.9. Very exciting - mainly because it's now .NET 2.0, and since that forms the basis of my professional playpen, I am well chuffed.
Read more about it (features and details) here - http://haacked.com/archive/2006/08/31/Subtext_1.9_quotDaedelusquot_Released.aspx
Haven't had much time yet to look at the new features, but so far am well impressed with comment moderation, thanks to the dedicated team for including that!
Upgrading tip regarding skins: The out-of-the-box skins have changed somewhat - been revamped and are looking a whole lot purtier in my opinion. However, make sure that you set your blog's skins to something known (i.e. included in the new release) before upgrading, otherwise you'll get a nasty control cannot be found type error.
Fortunately, being geeky, I was able to change customerrros to off and go into the database and sort it out for my two blogs (I was using the Marvin skins before). Am sure I missed that point somewhere!! I'm one of those developers who sometimes, in my enthusiasm to install something, tends not to read the fine print in upgrade instructions...
More info on skinning in 1.9:
Thursday, September 07, 2006
#
Man I read a satisfying article today! If you're having management issues, or not being understood as a developer, send this link on to the powers that be - http://www.joelonsoftware.com/articles/FieldGuidetoDevelopers.html
In particular Joel talks about the problems associated with open plan and how to attract top candidates. I am definitely an uber people person, but sometimes really struggle with a kazillion people all talking to me and wanting things at once... and they wonder why it takes so long for quality code to happen.
I've enjoyed jobs the most where I've worked for people who have themselves been involved in technical development. By far the most frustrating projects I ever worked on involved project managers who had little tech know how (and were basically, functionally computer illiterate), and who didn't listen to what developers were saying before selling magic genie lamp pie in the sky type solutions in ridiculous time scales. LOL - no, I'm not bitter.. Experience hopefully lends itself to helping us not to: while (true) { RepeatTheSameMistake();}
just in case you had any doubt about my status as a geek...
Thursday, August 24, 2006
#
Tired of the new style VS 2005 web/web service projects? Wondering what happened to your project file? Well, wonder no longer and stop tearing your hair out at the roots. You can still use VS 2003 style web projects! woo hoo...
Herewith the addins you need to install to sort out some of the web project conversion issues. One of the addins also allows for VS 2003 style web projects (i.e. there is an actual project file)
Install the following updates, in order (conversion from 2003 to 2005 fix and VS 2003 web project compatibility):
- Microsoft Visual Studio 2005 - Update to the Web Project Conversion Wizard (VS80-KB898904-X86-ENU.exe) http://www.microsoft.com/downloads/details.aspx?FamilyID=7cecd652-fc04-4ef8-a28a-25c5006677d8&DisplayLang=en
- Microsoft Visual Studio 2005 - Update to Support Web Application Projects (VS80-KB915364-X86-ENU.exe) http://www.microsoft.com/downloads/details.aspx?FamilyID=8b05ee00-9554-4733-8725-3ca89dd9bfca&DisplayLang=en
- Visual Studio 2005 Web Application Projects (WebApplicationProjectSetup.msi) http://msdn.microsoft.com/asp.net/reference/infrastructure/wap/default.aspx
Wednesday, August 23, 2006
#
I'm currently working on some POC (proof of concept) stuff using SQL Server 2005 and .NET 2.0 (web services). Yes, you've probably guessed, it involves XML and storing it as an XML data type in SQL Server 2005.
My problem? SQL Exception caused by the encoding specified in the document header. SQL Server kept having a kadenza about a problem with the XML I was passing in. The culprit: <?xml version="1.0" encoding="UTF-8" ?> Here are a couple of links with more info on encoding and using xml strings/params with .NET 2.0 and SQL Server 2005:
My main reason for needing to do some tweaking was that at this point, I’m receiving an unvalidated, XML string. The sender dictates what is in that string (without schema validation at present).
This string includes the encoding document element specified as UTF-8. SQL Server however, tends to be a bit picky about which encodings it will accept in the encoding document header element. Apparently SQL Server converts XML to UTF-16 anyway, but has a bit of a fit when it encounters the header tag in an 'invalid' format.
Manual string fix – if I replaced the encoding or left the encoding tag out entirely, it would work. That was a bit tacky, so for now I treat the XML as a string in my domain model and handle conversion at the data access level (i.e. read the XML in using an XmlTextReader, which knows how to interact with my parameter setting line to set the parameter correctly). Obviously, the appropriate exceptions still get raised, but this time originating from .NET and not SQL. Something along the lines of:
command.Parameters.Add(CreateParameter("@XmlData", DbType.Xml, new SqlXml(new XmlTextReader(domainObject.XmlData, XmlNodeType.Document, null))));
As I said, this is still POC, and not hugely elegant and I'm still playing with a couple of things as I build up to a more robust, flexible XML document handling processor.
Am running: Microsoft Data Access Components (MDAC) 2000.085.1117.00 (xpsp_sp2_rtm.040803-2158)
After thinking about blogging again for a couple of months, I finally decided to do some research into 'free' .NET blogs. (By research I mean I spoke to my friend Eden and asked him what he'd been able to find out! I'd like to think I'm savvy, NOT lazy *cough*)
He recommended Subtext. I also wanted to be able to separate work from personal so ideally wanted multiple blogs. Sooo... I registered my domain name, found a cheap MS hosting solution that suited me (again - by found I mean 'I asked Eden who he uses'), and then finally installed Subtext. Had a small prob configuring stuff on my side and left a comment on Phil Haack's site (one of the Subtext open source pioneers).
I got a very speedy, very helpful response and was able to sort out my configuration issue in about 5 minutes. Now that's GREAT stuff, and am well pleased (guess who spent the weekend in Wales?).
Subtext and my site will be my playpen for the foreseeable future! Keep up the good work Subtext team.
Oh and yes, Eden did help me with the domain name... Remember, I'm SAVVY, NOT lazy!!