Configuring The Stack

I hope a lot of the extra work goes away with VS 08. SP1 is pretty brutal that’s why I made slip-streamed VS and TFS Explorer installers for our team.
I’d like to take the whole TFS and Team System out of the equation. TFS is a turd of a source control system and the Team System extra features don’t come close to justifying the /huge/ jump in price. I suspect VS would perform a little better if the TFS crap were not there.

-Geoff

OK, I think that Colin G and Aaron Bowern are definitely “on to something”. I’m with a small software firm, so we do our own installs, which includes the VS, SourcSafe and I’m actually using SQL Server Enterprise Manager (which takes like 45 minutes to install w/o the “extras” of analysis server, reporting services, etc.)

The whole “slipstream” solution doesn’t make a lot of sense when you have 6 dev machines that are not identically configured. I assume that VS 2008 comes on-line, we’ll burn a backup copy of the disk and then install VS 2008 two comps at a time and basically burn a day.

Running all of these installs is very, very time-consuming so I’m with Colin and Aaron and Jeff here. I agree that there is definitely a lot of data being pushed around here, but pulling 8GB of data from a DVD does not take 90 minutes (it doesn’t even take that long to burn it) and it certainly doesn’t take 90 minutes to write 8GB to the hard drive (or even 16GB or 24GB if it had to be copied for some reason). Even if this stuff we had to decrypt every byte of the 8GB on the disk, that shouldn’t take 90 minutes and that could be done at the same time as the reading.

So what the heck iis/i going on? Something’s definitely problematic in MSI-land.

Add to that, the fact that Jeff is likely an MSDN subscriber (like most MS devotees) and should really just be presented with a checklist of all of MS offering so if he needs to waste 4 hours installing he shouldn’t have to babysit.

The sad part is that 1, 2, and 6 are all listed as part of #1, and the rest are just service packs and updates to keep (or get) everything running properly. The whole thing should roll up into a single install, especially since those 3 are advertised as part of 1 product.

Unfortunately, Visual Studio’s had a consistent history of these types of issues, and with having to install updates to separate parts of the system in a specific order to keep things working properly.

As for IT, different companies work in different ways, and if you’re installing software to work from home they will rarely support you at all, or, if they will, won’t do it for you. Personally, I work for a very large corporation with several layers of IT support, and while I can get a password changed fairly quickly, and possibly get software installed on a machine I don’t have admin access on, the computer on my desk is left to me to configure and maintain.

Part of this is my own fault, I want to be able to modify the environment as needed rather than run to IT every time something interferes with a piece of software or I need a specific tool for a particular project. It was a fairly simple matter to talk the local IT person into giving me administrative access to my own computer to keep him from having to deal with my issues. Another part of it is that my boss (at the time) wanted me to be in a position to take over as the local IT person when the time was right, but of course things have changed drastically in the last few years (as with any large corporation, mergers and acquisitions can change the plans of people at any level in the organization).

Going through the last 5 versions of Visual Studio with various levels of maintenance of multiple versions on the same machine at once has been a true pain in the ass, and it doesn’t seem to be getting any better. It’s truly a beautiful thing when just installing a new version of the IDE (side-by-side with the previous version) can prevent you from recompiling older code without a rewrite of some portion, but thankfully I haven’t had many of those problems after rewriting most of the VB6 code…

So on Windows you have to complete 6 software installs to start to be uptodate wit one programm?

That’s why I trully love debian/ubuntu

Using apt-get or synapting installing programms is just point and click.
After that the update manager keeps the whole system up to date.
Everything from the OS/kernel libs,user programms even browser extensions, all in one simple stepp.

A metric I use is how long does it take to install a machine so you can start editing and checking-in new code. From formated windows to everything installed and configured.

If you can’t do it in less than ~3 hours then there is something wrong.

The worse is when you’re doing contracting work at a company : you don’t have security access, you don’t have any machine and when you get it nothing is installed, you don’t have security access to get anything from the network,…
In such situation it’s common to wait several day before you can do anything at all.

The problem as I see it is that the Updates section of the VS installer doesn’t do it’s job properly.

With VS it is that the installer takes so long. It isn’t actually difficult to install everything, but just wasted time. I’ve spent more time configuring the automated build process (Subversion and CruiseControl.Net).

David Brown: try apt on Ubuntu. It’s miles ahead of anything on Red Hat, and what most of the “linux trolls” here are raving about. If you’ve just used Red Hat, you don’t actually know what we’re talking about. Red Hat’s package management system is crap.

On an Ubuntu system, you almost never have to hunt down dependencies, certainly not for anything in the stock repositories.

My Windows stack:

Eclipse
MinGW
MSYS
GDB
wxWidgets
OGRE
Boost
Python
SVN Server

Time, all said and done: Nearly 8 hours.

My Linux stack:
Eclipse
apt-get install build-essential wxgtk-dev python2.5-dev subversion (yes, I probably butchered the package names)
Ogre from source
Boost 1.34 from source

Time, all said and done: Nearly 4 hours.

“Second, I know all about package management on Linux because I used nothing but Fedora Core for 2 years.”

Whenever anyone says “I know all about blah”, I know they are talking out of their rear end…

“How is there no standardization on installations in Windows? Every installer I have ever used has placed an entry in the Add/Remove Programs dialog.”

Yay, it can create an entry in the add remove programs list. That’s a standard if I ever saw one, and is obviously much better than a unified package management system with automatic updates.

“Personally, I like the lack of standard software updates.”

You do realize you can tell it not to update on almost all distros?

“Some programs have to update differently, and frankly, suddenly adding a big package management system to Windows would cause a ton of companies to drastically change the way their products are released which in the end, may or may not cost them money.”

Yes, and we wouldn’t EVER want companies to have to spend money in the name of consumer convenience.

I was just complaining to a friend yesterday about the fact that when doing a clean install of Windows, you have to update the UPDATER three times before you can even begin installing the near 100 other updates. Patches to fix patches, updates to fix updaters, it’s like Microsoft doesn’t even try anymore, they just hide behind their ability to issue patches when something goes wrong. What happened to getting it right the first time? I have a hard time releasing bug-free code because I’m the ONLY ONE developing it and testing it. Any other developer here knows that testing your own software just doesn’t seem to work out, and I usually don’t even have enough time to fully test it. This doesn’t apply to Microsoft with their billions of dollars that they could invest in more developers and much, much, MUCH more extensive testing. If I were Microsoft I would be recruiting hackers like crazy and paying them to break into betas so 100 security patches wouldn’t have to be applied down the road. I don’t know if they already do that or not, but it seems like if they do then they need to find better testers and hackers.

Jeff, I actually have to agree with you on this. It points to an overall problem and judging by the posts many people have accepted this as the norm.

Huibert: I know what you’re trying to say, but accusing Visual Team System of being “one program” is like saying that OSS is just Linux :slight_smile:

You’ve got Source control, Debugger, Designers, intellisense, Reporting and lots more …

Also, VS2008 professional and beyond incorporates all of microsoft’s newfangled sdks automatically including ASP.NET AJAX, WF, and .NET 3.5.
Team server still has a handful of installations but microsoft is working to decreasing the stack size, unlike linux where it seems to be ever increasing and rapidly changing.

You ain’t seen nothing yet. Tried to install MS Team Foundation Server? If you haven’t I urge you to read the installation guides from MS and follow them TO THE LETTER, even do the stuff that seems irrelevant to your shop. Examples:

If you install IIS on the box (required) and have deleted the default root web app, you will soon be hacking the metabase to make it even work. Oh, don’t forget to change the HTTP port on that site to 8080 (Why? WHY!) or you get a cryptic error that you will be digging through google results for an hour tieing back to some blogger who posted about changing the port setting if you get the error (Something like “error, can’t continue.”)

While you are at it. Make sure that web farm setting is enabled, whether on not you plan to use it.

You must have Sharepoint 2.0 with the proper service packs. The installer will thwart any attempt to install on top of Sharepoint 3.x.

If you installed Sharepoint before SQL server 2005 (with the required service packs)… Sorry, uninstall them both and start over.

And it continues on page 2 of the instructions…

Oh yeah, then import your VSS DB into TVS. That involves no less than 3 separate whitepapers. Ugh!

Somebody else here mentioned slipstreaming. I just create a new slipstream installation source every time a SP comes out for one of the essential products. That way, when I do have to reinstall everything, the time and effort is minimal. Couple that with strategy with an automation script, and you can actually install your entire OS, dev tools, and other stuff in a virtually no-touch effort. Now, if we were system administrators, we would probably do that. I don’t know a single developer willing to go that far, however!

Well, knowing how complex it is to set up that stuff on a new machine, you should take the Virtual Machine route.

Install a dev environment into a suitable image, then it’s ready to go on any other machine (with the correct VM platform).

"Whenever anyone says “I know all about blah”, I know they are talking out of their rear end…"
I wasn’t trying to sound as if I know everything. I was simply saying that I do know what I’m talking about because I have, in fact, used Linux package management extensively.

"Yay, it can create an entry in the add remove programs list. That’s a standard if I ever saw one, and is obviously much better than a unified package management system with automatic updates."
I misread the paragraph that I was replying to when I made that statement. I originally thought that sburnap meant that Add/Remove Programs was something that was NOT standard among all installers. I admit that was my mistake.

"You do realize you can tell it not to update on almost all distros?"
You do realize I wasn’t trying to make a point against Linux? All I was saying was that ON WINDOWS I like the lack of standard software updates.

"Yes, and we wouldn’t EVER want companies to have to spend money in the name of consumer convenience."
Just because the consumer thinks this new package management system is convenient doesn’t make the companies want to spend money to change their deployment method. Would you rather have that program you can’t live without and have to run an update application every few months, or would you rather wait a year or two so the company can get their internal build systems revamped?

"On an Ubuntu system, you almost never have to hunt down dependencies, certainly not for anything in the stock repositories."
You just reiterated my point… you don’t have to hunt down dependencies for anything in the stock repositories. But what about those packages that AREN’T in the stock repositories? Most of the Linux development I did on Fedora required packages from other unofficial repos and they didn’t always provide the latest packages, so I would have to then turn another repo to find them. This happens with any package management system.

4 of those listed are updates/service packs…

You could also add VSTO.

“They (Microsoft) should be doing everything they can to keep people developing for their platforms.”

Oh, they do! It’s called “advertising”, and obviously it works.

Hi Jeff,

I normally install SQL Server Developer Edition on my machine, to house my local dev databases. Do you only use SQL Server Express for your dev databases?