« March 2004 | Main | May 2004 »

April 30, 2004

StudentDev Contest Results

The results of the StudentDev contest were announced last night. The Visual Studio .NET Spell Checker received third place. Congrats to the teams that got first and second.

Now I need to figure what I'm going to do with a Sidewinder Precision Racing Wheel. I never was much of a PC gamer, plus I'm not sure what game StudentDev is sending to go with it.

Posted by mikel at 09:09 AM | Comments (0)

More on public properties

More info properties. This sort of extends on the topic Kyle covered in his article.

In Jay's post the read only situation was something I hadn't thought of with sticking with the simpler public properties. But really, regardless of which method you use if you decide to go from a read/write to a read only you're going to break something.

Jay wrote a post entitled Properties? Not my bag, baby.

When I first started writing C# code, I used properties for everything. But recently, I've felt that I was wasting a lot of time writing trivial properties. Yes, I know that in Whidbey I'll be able to use expansions to write them easily, but that still means that I have to deal with the property bodies cluttering up my code.

So, that got me thinking about whether it makes sense to be writing properties in the first place. After a bit of thought, here's my current position:

Properties are a great thing for component libraries. There are certainly cases where you would want the future-proofing and decoupling that properties gives you.

But when you're working on a single project that gets built all at once, I don't think you're getting any future-proofing benefits, and you have to pay the “property tax” the whole time.

This may be heretical, since “use properties” has been the common guideline.

What do you think?

[C# Stuff]

Posted by mikel at 08:58 AM | Comments (0)

April 29, 2004

Deployment

Another link for the deployment lectures.

I recieved a request for information and deployment and our deployment expert pointed me to this share.  Let me know if it helps.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetcomp/html/netcfdeployment.asp

[benwu's WebLog]

Posted by mikel at 01:06 PM | Comments (0)

April 27, 2004

Fun stuff for the Tablet PC

Some interesting power toys for the Tablet PC.

http://www.microsoft.com/windowsxp/tabletpc/downloads/powertoys.asp

Art Tool, Calculator, Dictionary Tool, Drawing Animator Toy, Extended Desktop, Hoop Strategy Game, Hold Tool, Maze Game, Microsoft Dots!, Microsoft Phraseology PowerToy, New York Times Crossword Puzzle, Pool Game, Puzzle Game, Music Composition Tool, Thumbnail View, Tic Tac Toe, and Writing Recognition Game.

[Jon Box's Radio Weblog]

Posted by mikel at 12:37 PM | Comments (0)

April 25, 2004

Ideas are worthless

Eric Sink:

Blatant tangent: Ideas are worthless

Although you may not believe it right now, ideas are essentially worthless. You are emotionally invested in your idea. You've spent lots of time convincing yourself and others that the business will work. You are devoted to your idea and you do not want to give it up.

But like it or not, your idea alone is not valuable. In the business world, ideas are worthless. Real value comes from good execution.

The reason is that value is generated only in the presence of a risk/reward ratio. An idea by itself involves no risk, so it will lead to no reward. In contrast, execution involves risk, which is why it leads to reward.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsoftware/html/software01262004.asp

Mark Cuban:


YM: What is the key to recognizing a profitable business opportunity?


CUBAN: Knowing the industry very well. Most people think it’s all about the idea. It’s not. EVERYONE has ideas.
The hard part is doing the homework to know if the idea could work in an industry, then doing the preparation to be
able to execute on the idea.


[Blog Maverick]

Posted by mikel at 04:08 PM | Comments (0)

April 23, 2004

.NET CF performance

I think I ran across this before, but anyway something to look into further...


So you've got your .NET CF app up and running.  Now you want to focus on reworking the code to optimize performance.  The obvious approach is to put timers in your code to see how long specific operations take to complete.  But what you may not be aware of is the ability to get .NET CF to spit out these performance-related statistics on its execution:



  • Execution Engine Startup Time

  • Total Program Run Time

  • Peak Bytes Allocated

  • Number Of Objects Allocated

  • Bytes Allocated

  • Number Of Simple Collections

  • Bytes Collected By Simple Collection

  • Bytes In Use After Simple Collection

  • Time In Simple Collect

  • Number Of Compact Collections

  • Bytes Collected By Compact Collections

  • Bytes In Use After Compact Collection

  • Time In Compact Collect

  • Number Of Full Collections

  • Bytes Collected By Full Collection

  • Bytes In Use After Full Collection

  • Time In Full Collection

  • GC Number Of Application Induced Collections

  • GC Latency Time

  • Bytes Jitted

  • Native Bytes Jitted

  • Number of Methods Jitted

  • Bytes Pitched

  • Number of Methods Pitched

  • Number of Exceptions

  • Number of Calls

  • Number of Virtual Calls

  • Number Of Virtual Call Cache Hits

  • Number of PInvoke Calls

  • Total Bytes In Use After Collection

Enabling this feature, interpreting the values, and performance-tweaking your application are the subject of this MSDN whitepaper.


[Author: Robert Levy]

[Windows Mobile Team Blog]

Posted by mikel at 10:04 PM | Comments (0)

April 20, 2004

Tablet PC Tour

I wonder if they are coming to Purdue. I haven't heard anything yet, probably not.

Scoble's aggregator blog points to this article about Microsoft's mobile group visiting Princeton as part of an 80 college tour to showcase the Tablet PC among other mobile devices.

Another example of Microsoft's commitment to eductating educators about the Tablet PC is this archive of a "Tablet Day" at Dakota State University. The event took place on March 26, 2004. What's particularly nice about the DSU event is that they have video archives.

One highlight from the videos: Starting next year all Freshman at DSU will be equipped with a Tablet. Cool.

Anyone know which schools Microsoft will be visiting?

[Loren Heiny]

Posted by mikel at 08:16 PM | Comments (0)

April 19, 2004

This is scary

I've been doing way to many presentations and writing to many reports lately. You know how XP puts your most frequently used applications right on the start menu? Mine now contains Word AND PowerPoint! When did I become a middle manager? At least VS is still in there too. Must right more code...

Posted by mikel at 08:59 AM | Comments (0)

April 18, 2004

Deployment lectures

A couple of good resources for the deployment lectures.

Ok, so I created a great little PDA program and now its time to install it.

I saw Microsoft's white paper:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetcomp/html/netcfdepl.asp

I spent two nights working with it and still had lots of issues... How to install the compact framework, and the fact that you had to have the .NET framework on the machine running the install to the PDA. Doesn't make much sense.

So... I went out and downloaded Installshield Express

Holy moly was it easy and it works AWESOME.
Highly recommended

[Feedster RSS Search Results for compact framework]

Posted by mikel at 06:08 PM | Comments (0)

April 17, 2004

Basketball Statistics Software Directed Project Oral Defense

It's over!! The presentation went well today. No changes to be made to the report. All I have left is to get it bound and turned in!.

Posted by mikel at 12:21 AM | Comments (0)

April 13, 2004

Visual Studio .NET Spell Checker

Tonight Jon, Matt, and I finished up the Visual Studio Spell Checker for the StudentDev programming contest. I'm really happy with how it all worked out. So if you need to spell check your C# or VB.NET code or wish you could easily format your comments, check it out. You can download the install files from http://workspaces.gotdotnet.com/vsspellcheck

A complete, functional release of VSSpellCheck. Works for C# and VB.NET code to spell check selected text and create formatted and spell checked comments to be inserted into the code window.

Posted by mikel at 09:39 PM | Comments (0)

April 11, 2004

Happy Easter

Kerby, Jessica, and I enjoyed the nice weather today. Hope everyone has a happy Easter.

Kerby and JessicaKerby - Easter 2004

Posted by mikel at 09:28 PM | Comments (0)

April 01, 2004

Windows Mobile Solutions Partner Program

http://www.microsoft.com/windowsmobile/partners/logon/login.aspx

Something else to look into after graduation.

Posted by mikel at 10:01 PM | Comments (0)

Small, niche software

http://www.shirky.com/writings/situated_software.html

I think this is a lot closer to the kind of software that I want and like to develop. CPT definitely teaches toward the large scale application (probably rightfully so), but I bet a lot more of us end up working on applications like these. Not that those concepts aren't valuable, you just have to be able to pick out the valuable portions and apply them in different ways then you are taught.

One disagreement with the article is with MySQL. People have been developing these niche applications with Microsoft Access for a long time.

We've been killing conversations about software with "That won't scale" for so long we've forgotten that scaling problems aren't inherently fatal. The N-squared problem is only a problem if N is large, and in social situations, N is usually not large.

...

Now, though, the combination of good tools, talented users and the internet as a social stage makes the construction of such software simpler, the quality of the result better, and the delivery to the users as simple as clicking a link. The design center of a dozen users, so hard to serve in the past, may become normal practice.

...

Businesses routinely ask teams of well-paid people to put hundreds of hours of work creating a single PowerPoint deck that will be looked at in a single meeting. The idea that software should be built for many users, or last for many years, are cultural assumptions not required by the software itself.

...

Indeed, as a matter of effect, most software built for large numbers of users or designed to last indefinitely fails at both goals anyway. Situated software is a way of saying "Most software gets only a few users for a short period; why not take advantage of designing with that in mind?"

...

Now, though, I think we're starting to see a new software niche, where communities get form-fit tools for very particular needs, tools that fail most previous test of design quality or success, but which nevertheless function well, because they are so well situated in the community that uses them.

Posted by mikel at 08:18 AM | Comments (0)