Debug.Assert(Grokking = True) ';
11:21 AM
Don Box's Spoutlet: Love
http://www.gotdotnet.com/team/dbox/default.aspx?key=2004-01-31T05:16:25Z
Don Box clarifies something that I've seen misconstrued elsewhere. Indigo's SOA is NOT a full replacement for COM, or especially OOP within an application. It's an interconnection paradigm, whether the two sides of the connection are cross-process or cross-machine. COM remains. OOP
definitely remains. SOA more or less replaces DCOM, and enhances the idea behind SOAP.
<%
writeAmountOfComments(107557690510577341)
%>
comments
9:56 AM
Headtrax performance report
http://www.gotdotnet.com/team/clr/HeadTraxReport.htm
I remember HeadTrax. Microsoft used it and made it available to basically anyone that wanted to use it. It identified open headcount within a unit, and who was filling which positions. It was like an orgchart on steroids.
It presented a LOT of information, and was tied to legacy systems on the backend, and so it makes a pretty nice candidate for a case study of a distributed app that gets heavily used.
This report details some of the nitty-gritty design changes that were made to Headtrax to improve it. Very good reading if you are interested in designing large-scale distributed apps on .NET for an intranet.
<%
writeAmountOfComments(107557176315365612)
%>
comments
2:26 PM
Web Controls: Building a Custom Registration and Login Control (ASP.NET Technical Articles)
http://msdn.microsoft.com/asp.net/using/building/webcontrols/default.aspx?pull=/library/en-us/dnaspp/html/aspnet-buildcustomreg.asp
This seems to be
highly useful article on something that I've wanted to build for a while.
BTW - implementation note -- I would try to be very careful to segregate this code into its own loosely coupled module, as Whidbey promises to replace this solution with one of its own.
<%
writeAmountOfComments(107550157681740072)
%>
comments
2:20 PM
.NET Framework Resources, according to Sells
http://www.sellsbrothers.com/spout/#When_In_Doubt,_Ignore_Longhorn
I swiped this list directly from Chris Sells's blog,
The Sells Spout. In the entry titled "When In Doubt, Ignore Longhorn" (see URL for this entry), he gives his favorite .NET Framework 1.x information sources. It's better than my previous list.
.NET Framework 1.x Information Sources:
- MSDN: The vast
majority of existing and new information you'll find on MSDN is on currently
shipping technologies.
My
Developer Center brethren post tons of new stuff every month all about
helping you be successful today. Also, one part of the Longhorn
Developer Center that you should check out is
the Preparing for Longhorn section, where I keep resources that you'll
need to know about today so that you can keep Longhorn in mind for tomorrow
(or the day after tomorrow : ).
- MSDN
Magazine: MSDN Magazine does a fabulous job of helping folks take
advantage of .NET 1.x and have recently been doing articles on Whidbey and
Yukon.
- MSDN
Columns: If you haven't seen the columns that MSDN hosts online, you're
missing a ton of great stuff from experts in the field. Besides the Longhorn
columns (which you should ignore if you're in doubt!), my personal favorite
is
Wonders of Windows Forms, which has also been focused on taking the best
advantage of Windows Forms and where Michael Weinhardt has just started with
a series of Whidbey Windows Forms topics that'll make you drool.
- GotDotNet: This site
is host to a raft of content and tools and code samples from the .NET
product teams along with active web forums.
- CodeProject.com:
CodeProject is my favorite user-contributions site and has tons of new
source code samples and articles all the time about all manner of existing
Microsoft technologies.
-
DotNet Newsgroups: The newsgroups are a hotbed of information on current
technologies and are staffed by a large number of Microsoft employees to
answer your questions.
- International .NET
Association (INETA): Don't just sit around and code by yourself, find a
user group near you!
- DevelopMentor
mailing lists: The .NET mailing list hosted at DevelopMentor launched a
development culture. Their mailing lists are still tops in my book.
- .NET 247: I
can't tell you how often my Google searches on Microsoft-related
technologies yields an answer on this site.
- Most Microsoft
bloggers: Sure, Box, Anderson and Scoble hog the limelight, but some of
my favorite bloggers concentrate on today's technologies. Don't miss
Adam,
Chris,
Duncan,
Dino,
Kent or
Raymond.
-
Whidbey Series on MSDN TV: If you want some info on the not-too-distant
future, Erica Wiechers's series of Whidbey topics on MSDN TV is a great
place to start.
-
Whidbey/Yukon PDC talks: Contrary to popular belief, most of the talks
at the PDC were not Longhorn-related and it's not too late to catch the
videos or download the slides if you weren't able to catch them all.
- Scott
Guthrie's Blog: For juicy bits of ASP.NET 2.0 information, you can't
beat Scott Guthrie's blog.
-
theServerSide.NET: I haven't spent much time on this site yet, but
Richard Burte, an MS PM, says he likes it well enough to add it to this
list.
<%
writeAmountOfComments(107550123189275402)
%>
comments
10:55 AM
Longhorn Meetup in the Central Valley
http://longhorn.meetup.com
I think this could be a great way to start the CVMSDN Group (Central Valley MSDN Group, as a working title); by seeing how many people are interested in making stuff for the upcoming Longhorn OS.
<%
writeAmountOfComments(107548893381671245)
%>
comments
1:31 AM
Comments are on! Woo and then,... well you know.
The comment tool is by ... well, I'm not sure. The Readme doesn't say, and there's not much credit taken in the source code.
However, I will tell you where I found it:
Tecknik.net: Commenting: Systems
Look for the thing under ASP called
xcomments (served from
coinz.org), with whom I'm not familiar.
This was the only one that didn't require major modification so as not to require a database. It uses XML files instead.
(But what about collisions?! you ask). Don't worry. When the web site gets heavily used enough, I'll bump everything up to a database and import the XML files myself.
<%
writeAmountOfComments(107536868838246519)
%>
comments
1:13 PM
Comments are coming
Top priority task for today: enabling comments on my blog. Yes, I'm too cheap to go buy some prepackaged blog thingy that has comments built in, partly because I didn't splurge for the full database-enabled web hosting plan. I will give full credit to the source of the comment tool once I've finished.
<%
writeAmountOfComments(107532438537254030)
%>
comments
4:57 PM
Semicolons in VB
The title of this blog, "Debug.Assert(Understanding = True) ';" is a very,
very lame attempt at humor. Yes, Michele says I stink at that, too.
It's written in VB.NET. The idea is that Developer Vision (i.e. Moi!) is supposed to be about increasing understanding of both the platform and the developing system to the developers and all that toil over code.
However, the tail with the single quote and the semicolon is an homage to
Don Box and
Chris Anderson's
MSDN TV appearance (you really need to watch this right away if you are a .NET programmer but don't know much about Longhorn yet).
Don: "Did you know, Visual Basic allows semicolons? If I put in the special semicolon prefix character... which is right there."
He types a single quote, then a semicolon.
Chris: "Oh, hey, look at that!"
New coding style guideline for me! Woo! and then Hoo!
<%
writeAmountOfComments(107525144891354161)
%>
comments
1:28 PM
SSCLI (aka ROTOR) Community
Found on the
Scobleizer: The
SSCLI aka ROTOR
I think this could be the best insight into the minds of professional developers yet. I'm speaking of those who code for profit, not for the "Good Of The Open Source Community". Compile and learn. As
Joseph says, "ROTOR is a great place to find examples of "production quality" C# code...." Indeed -- I like to remember that production coders must hit deadlines with working code.
<%
writeAmountOfComments(107523893733840904)
%>
comments
7:10 PM
Lap around Longhorn
This was a very informative
presentation on Indigo, and more importantly, how to start preparing for it today during the development of new code. Must see tv.
Take aways for me (maybe not for you):
- Use Web Services (.asmx) to expose business services. don't worry too much about the performance hit unless performance is truly critical; it will be taken care of.
- Keep using Enterprise Services. Migration will be easy.
<%
writeAmountOfComments(107519100791945674)
%>
comments
12:37 PM
So, YAY, I finally solved my non-updateable database problem.
I had earlier written a comment service for Michele's blog. She has a simple web site (i.e. no DB) but it allows ASP.NET code. So I used XML for storage. Nice, but I needed a place to hide the XML files. The server uses FPSE, so the web application has a built in _private folder. Files are accessible to anonymous users through the file system, but not browsable. I store the XML files there.
So, working on another small site, with a Jet DB to start with, I thought to put the .mdb file in the _private folder. Set up the DSN (not my preferred way) and off I go!
Not quite. The database could be read, but not updated.
I checked file permissions. They were good.
I checked that in the DTS move from SQL Server (where I designed the schema and test on my local machine) to the Access format, that I had remembered to set the ID fields to Autonumber and Primary Key (I don't know why this doesn't happen by default in DTS when it creates new tables in Jet, but ... well, thereyago.) I had remembered.
I tried setting up the app identity to impersonate an admin user on the system, but all I got was a weirder error.
Finally, I moved the .mdb out of the _private folder and into another folder, which I also prevented from being exposed to browsers. (FrontPage recommends the fpdb folder, that worked for me). And suddenly my database was updateable.
I still don't know what's wrong with using the _private folder.
<%
writeAmountOfComments(107519525091040411)
%>
comments
12:29 PM
I see there has been a
reclarification (is that a word?) from Don Box on the BEA/API thing. So, as Emily Latella would've said, "Never mind!"
<%
writeAmountOfComments(107519522109863461)
%>
comments
9:59 PM
As usual, I think
Don Box is right on the money.
Don't get me wrong -- I think there certainly is a time and place for programming to the API. But I wouldn't want to try to build a business that required everyone who wanted to play with me to adopt my selection of platform and API model. I don't particularly care for Linux et al, but I wouldn't want to keep everyone who likes Unix from working with my software.
SOAP is a good thing.
<%
writeAmountOfComments(107519519848343161)
%>
comments
8:15 PM
Under the category Tips and Tricks:
I often have a Solution in VS.NET that has several Projects in it. Pressing the Build button (or worse, Rebuild all) will at least do a pass on every dependent project in the solution, even if I really only made changes on the most dependent project (that is, the last one to be compiled, because it depends on every other project.)
So, I pop open the Configuration Manager (on the Build menu), and make a New configuration (usually copied from the Debug configuration) and then turn off the Build option on all those other projects. On the rare circumstance when I have to make a change to a project that isn't normally built, I can always right-click the project in the solutions window and click Build, or quickly switch back to the default Debug configuration using the Configuration drop-down selector on the standard toolbar.
Saves a LOT of time waiting for compile passes on projects that don't need it.
<%
writeAmountOfComments(107519516883503850)
%>
comments
4:51 PM
Resolving a non-intuitive namespace ambiguity problem
or... "Feeling like a chowderhead."
So I have VS.NET 2002. Not 2003. It normally targets .NET v1.0. And I'm working on a project for ASP.NET that needed to use ODBC to access its data.
The System.Data.OleDb library does not support ODBC. And I had already made a failed attempt to install Microsoft.Data.Odbc (designed for .NET v1.0) onto the web server.
So I decided to try to use .NET v1.1, from VS.NET 2002. This entailed removing all the references to things like System, System.Data, System.Design, etc. from each project in my solution. Then replacing all those references with new ones to the v1.1 library files. Easy, no?
Mostly, yes. But I had a problem. I was using the IsNumeric function and the ControlChars enum from the Microsoft.VisualBasic library. This was one of the project references which I had replaced to the 1.1 version. But VS.NET didn't like it. It complained of an ambiguous namespace conflict. I tried a fully-qualified reference to IsNumeric, but it didn't help.
Searching the net turned up nothing. Finally, I got disgusted and decided to try removing the reference to Microsoft.VisualBasic from the offending project, to put back in the original reference, just to see whether I could mix the two version.
Turns out all I needed to do was to remove the reference entirely. The reference to Microsoft.VisualBasic in the project is redundant.
<%
writeAmountOfComments(107519513502786370)
%>
comments
4:22 PM
WOW, this looks very cool.
CodeSmith - FREEWARE template-based code generator with ASP.NET style syntax
Sure, there will be generics, or templates, or whatever they're going to be called. But this thing looks like a better general purpose utility than just a templatized class. I know of several times when this sort of thing would have come in very handy.
<%
writeAmountOfComments(107519509405919789)
%>
comments
10:07 PM
Possibly a good thing to read:
Visual Basic Home: A Simple Business Rules Manager (Adventures in .NET)
I like rule-based systems. They make me think I'm actually using some kind of AI. [rubs hands together, chuckles.]
<%
writeAmountOfComments(107519487858455319)
%>
comments
10:06 PM
I'm probably going to need this tool:
Security Developer Center: Analyzing Your Applications with Windows Application Verifier (Code Secure)
No, I'm
definitely going to need this tool.
<%
writeAmountOfComments(107519477163285333)
%>
comments
2:17 AM
There's something about UML and the whole Rational process stuff that keeps drawing me back, although I still have the inkling that is best suited for embedded systems geeks, which I am not. I don't know -- I haven't seen it yet.
Architected RAD: Tackling the challenges of
on demand business with a video demonstration
<%
writeAmountOfComments(107519472946069224)
%>
comments
5:12 PM
This could be handy for an idea I have later:
How to Create and Implement a SharePoint Online Gallery
<%
writeAmountOfComments(107519462858137877)
%>
comments
11:41 AM
This looks very cool for a sole proprietor, such as meself (cackles).
Microsoft Business Builder for ISVs
<%
writeAmountOfComments(107519457319472989)
%>
comments
11:36 AM
Who knew? DTS is a programming environment!
Learn to Program DTS Applications
<%
writeAmountOfComments(107519451195382552)
%>
comments