Microsoft shipped Visual Studio 2008 to manufacturing today. According to some it has become available for download on the MSDN subscriber site, but only the Team Suite edition. Since we do not have the “über” subscription (I believe ours is one step below that) we’ll have to wait for MS to make the professional edition available.
Update: I finally was able to start downloading. Apparently MS decided to use a different distribution method (Akami?) to get over the initial rush, or at least that is my guess on the matter and it is purely my own speculation. The download location was not the normal MSDN subscriber downloads area. In addition, I had to install a new download manager and of course allow popups from msdn2.microsoft.com before I could get it started, but now it’s on is own merry way to my computer! It’s coming down at a good clip too, ,about 570 KB/sec so if things remain as they are I should have it within a couple of hours.
Good luck to anyone else, hopefully grabbing this one 
November 19, 2007
Posted by
palehorse |
.NET, Development |
|
9 Comments
The discussion came up today, due to a comment of mine, about Interfaces. When should you use them? When should you use a simple base class? I, of course, gave my own opinion on the topic and my team discussed the current project environment to come to a decision on how to proceed.
Afterwards I began doing a bit more research on the subject. One of the articles I ran across was by Mahesh Singh. He put together a very nice overview entitled Abstract Class vs Interface. Essentially it comes down to this question; Will there be shared implementation among inherited classes? His suggestion is that in most cases it is better to use an abstract class. There are a few good comments as well. One reader gives you an exercise which may make things more clear and potentially swing you more towards the need for interfaces, but I’ll leave that up to you.
In the article Interface vs Abstract Class by Maor David he describes some of the differences between interfaces and abstract classes. This article does not try to answer the question of which is better so much as to inform.
It is my opinion that every situation is different. I do not believe either is inherently better than the other; rather, I believe that each is better in certain circumstances. That puts the onus of deciding which road to go down on the developer to decide which suites the condition.
The point that is perhaps more important is to realize that you won’t always get it right. If not, don’t be afraid to refactor! At the same time, don’t be afraid to look at it and say…meh…it’s good enough. The gain for refactoring to use x would not be worth the time it involved.
October 25, 2007
Posted by
palehorse |
Development |
|
3 Comments
Via The Daily Grind I just discovered svn-time-lapse-view. This is a little java utility which allows you to analyze a file from a subversion repository and compare revisions. It gives you a side-by-side view with a slider to scroll through the history showing you the modifications to the file between adjacent versions. Very nice!
There have been many times that I have had to (using TortoiseSVN) select 2 adjacent versions, compare revisions, close the window and go to the next 2 to track down where something in the source changed, was removed or added. This tool, created by Jonathan Aquinio, works as a great time saver for that type of analysis.
Jonathan was apparently inspired by a similar feature in Perforce, although I do not have experience with that tool. Bravo for creating this one!
October 19, 2007
Posted by
palehorse |
Development |
|
3 Comments
Robert Scoble was recently ripped to shreds again concerning his recent video. (Note, part II and part III in case you didn’t see them on the site.) I can understand why. His ideas are diametrically opposed to the current business view of finding things today.
I say Bravo. As a developer working with the intricacies, guesswork and sheer superstition surrounded the art of gaining rank with Google, Yahoo and MSN I have been dealing with many frustrations. You see, software engineers like to work in a couple of ways. First, they like to build something. In order to do that, you have to know what you are building. Trying to build pages that work with the algorithms in place today is guesswork at best. Second, we like to break things. We like to get the new gadget, tear it apart to understand it and then put it back together. Once we’ve done that, we know how to build something for it.
Today’s search paradigms do not fit within that mold. It is impossible, no matter what someone tells you, to be certain of what will affect the algorithms in what manner. Want proof? Just look at the great viewstate debate. From tests I’ve seen there is absolutely no evidence that search engines do not like it. In fact, in the test a co-worker of mine performed a page with a huge viewstate ranked highest out of other samples!
So what’s all this about? Maybe a shift in the way we think about finding credible information on the Internet. Finally entering the Circle of Trust. Scoble has some interesting points and let’s face it, this is what he does. He’s been deep into finding the new, better thing for many years now, he must know something! Is he always right? I doubt it. he’d probably admit that as well, but is it worth a listen? Absolutely.
Frankly, I hope he is right. I want to find my way easier, faster and with better success then Google lets me today. I am already starting to believe his hype about Facebook when at first I viewed it as just another “MySpace”. Now even my wife is using it! (Here’s my page if you want me to add you as a friend).
Oh, and check out Mahalo, it’s pretty nice.
August 28, 2007
Posted by
palehorse |
Blogging, Development, Internet, Society / Politics |
|
No Comments
Yes, it is the last Friday in July and that means the 8th Annual System Administrator Appreciation Day. If you’re able to read this post, thank your sysadmin! Let’s face it, they go mostly unappreciated and at times cursed for the efforts they take to keep you online and safe.
The official site has some good information about how the diligent sysadmin affects your daily online life. Let’s give it up for him/her and help promote this international day of recognition!
July 27, 2007
Posted by
palehorse |
Blogging, Development, Internet, Networking, Operating Systems, Security |
|
No Comments
I’ve been out of town for a bit so I’ve been behind on checking the test Dave has been running. If you haven’t read the original concept, please do so.
Today I noticed that page 4, one with a large viewstate, is showing up #1 at Google. To my knowledge, this is the first time one of the pages has received the #1 spot.
I’m not sure why the other pages are not showing up. Perhaps they are being marked as duplicate content or something, but it is interesting that the page with Viewstate is the one ranking right now.
June 24, 2007
Posted by
palehorse |
.NET, Development, Internet |
|
2 Comments
It has been 12 days since Dave put up his viewstate test pages with the keyword Arkliode. Watching Google each weekday has brought about a few interesting thoughts
- Initially the index page with a link to each of his tests ranked #1. This went on for most of last week.
- One of the tests ranked under the index page when you click on the “View similar results” link on the initial Google search.
- My original post was ranking #2 for most of last week. It only had the word “arkliode” once in one of the comments.
This morning, my original post shows up #1. Yes, that is the post with the word only displayed once in a comment.
- Google gives more weight to blog posts. This has been generally accepted for quite a while. That explains the change in #1 ranking.
- Incoming links play a large part in the role. I am attributing that reasoning to the drop of the one page that was returning in the results. The incoming links simply go to the index page.
- Duplicate content has been assumed to have a negative impact. Since most of the test content pages have the same or very similar content, I am theorizing that Google is recognizing them as duplicate and since the only links going to them are from the index page.
The next question is, how do we begin to make the test valid? I suppose we would have to post the different pages on separate sites to try to get a better idea, yet the popularity and ranking of the sites would undoubtedly play into the ranking.
Dave has changed things up a bit, which might account for the changes over the weekend. Should people begin linking to the pages on their sites to see if indexing begins to happen? That’s what Dave did. Here are the links to the pages.
I will check back in later this week or early next week. I’m sure Dave will have at least one update in that time-frame as well.
June 11, 2007
Posted by
palehorse |
.NET, C#, Development, Internet, VB.NET |
|
No Comments
I’ve read and discussed the effects that the hidden ViewState variable used by most ASP.NET applications may have on page rank. To the best of my knowledge there is no definitive answer to this question. Most in the SEO industry will tell you that it “should almost never make a difference” yet those same people will want it yanked as one of their first steps in optimizing a page for Google, Yahoo or MSN.
Ugh!
As a software developer, I cannot begin to tell the frustration. First, it should not make a difference. A spider, bot, whatever you want to call it should know to ignore most hidden fields. There is an argument that some hidden fields dilute the page content. C’mon, why?
Ok, let’s say that it does. Even given that, shouldn’t the major engines be aware enough of the technologies being used to realize that a lot of sites out there use this standard field? Shouldn’t they ignore it?
The fact is, none of the search engines will come out and tell you anything about their algorithms. They will not confirm that the VIEWSTATE variable is ignored or if it, along with other hidden variables, are considered. They will not tell you that those values dilute your content. They will not tell you that their bots are “smart” enough to ignore them. What is a software engineer to do!?!?
A colleague of mine that was present in a recent debate within our company about ViewState decided to do something about it. He’s performing a test with a made-up word that currently returns no results to help decide if there are any adverse effects of having the ViewState variable in your page.
After 1-3 weeks we are hoping that the pages ge indexed via the ViewState Index page. I’ll link to the results after the test is complete.
Way to go Dave!
May 30, 2007
Posted by
palehorse |
Blogging, Development, Internet |
|
6 Comments
Wow, it’s been a busy few weeks. Seems like work has kept me more focused than normal with certain work items needed. I apologize to my loyal readers for the lack of content recently.
I have had my first real look at Microsoft Team Foundation Server and I must say I am not impressed. It looks like it has some nice features, however I would not say that it is worth the price of admission. Licensing seems a bit high and the preferred method of using it via Visual Studio is a bit clunky. The add-in (Team Explorer) works well enough, but it is plain and seems to bloat VS as many add-ins do. If I am going to settle for reduced performance in my development IDE I would expect more out of it. At this time I am looking into SharpForge, a somewhat new and growing open source project designed to perform some of the functionality of TFS or SourceForge. The web interface from TeamPlain, recently acquired by Microsoft, is not bad. I will admit that I am a bit predisposed against the entire system since it is based on Microsoft SharePonit Portal Server. I have yet to be convinced that the platform is desirable enough to move to.
In the mean time, I also passed another test on my way to MCSD and then MCPD. 70-315, Developing Web Applications with Visual C#.NET is complete. On to the next one! Target date is set for 3 weeks, although budget may push it to next month. I hate tax time.
Cheers!
April 16, 2007
Posted by
palehorse |
.NET, C#, Development |
|
1 Comment
One of my colleagues at work has been talking about posting some of the more interesting errors that he’s received from Visual Studio. Since I sit next to him, I’ve had a chance to see most of the messages, and I’ve received a few of them myself.
One of my favorites is “Unexpected Error”. Well, of course it is unexpected, otherwise I would expect the program to handle more elegantly, provide more information or perhaps fix it! A friend of mine that is a former Microsoft employee says that this message is one of his pet peeves, not just in Visual Studio mind, but in any application. I met him ten years ago when we were both on contract to the same company and I can remember back then his disdain for a programmer who let one of these slip through. Laziness, nothing more, is responsible.
You might ask, how can any developer anticipate every single exception that may occur? They can’t of course, however even for those “unexpected” errors they should have something better to tell the user. Unexpected error is almost a redundancy for goodness sake!
Thanks for the interested read Dave.
March 24, 2007
Posted by
palehorse |
.NET, Development |
|
No Comments