Welcome to Hardcode Sign in | Join | Help

October 2005 - Posts

I'm still trying to get a solution with the following features:
    - hierarchical structure for mapping the project's components
    - wiki-style interface for building the specs collaboratively
    - define projects, tasks, subtasks
    - ability for commenting with multiple threads on every subject (spec, task)
I tried CommunityServer and FourHooks, they both can do it though with some things really over-complicated.
Here's a quick summary of the reasons why I don't like it at all:
 - everything must be public in the visited node (so that the visitor code can access it)
 - so if everything is public why not make the transversal outside of the object, so without any visitor ?
 - no object encapsulation because code that should perform object's actions is not in the object but rather in the visitor
 - code is not clear at all, because it's generic
 - no possibility of changing the return types or parameters of the Visit method
As you can see (well, not you that use the rss), I've changed the software for my blog to Community Server. The installation was a pain and in the end I had to revert to asp.net 1.1 for it to run, although it appeared to work almost with 2.0 but threw "access denied" when getting into the administration subsystem. While I had the idea to write some a quick vb tool for migrating the .Text database to CS, I found this tool that made it.
Now, some improvements I've seen:
 - cache is now disabled (with some tweaks though) (this pissed me off in .Text when I was editing posts but couldn't see them)
 - wysiwyg editor for Firefox also
 - more professional feel, i.e. it's used by blogs.msdn.com also and that's something
When do you use an initial z-only rendering pass and when not ? (this is basically a rendering pass without any colours so just to fill the z-buffer. nVidia cards help this with its stencil/z filling rate that's doubled). My opinion is that it can be helpful in situations with long shaders and not so much geometry - but why Half Life 2 uses it then ?
Another interesting idea I (that I read today) is to accumulate the lost rendered frames (the ones not displayed - lost between the monitor's refresh) and blend them - actually it's really a motion blur. Now this could be a driver option - I hope ATI or nVidia will get this working soon.
Which ones do you use ? I can't live without Window Tabs (too bad they don't update it anymore) and Visual Assist (I remember some time ago I was very reticent of using it - considering the real Visual C++ coders don't need such tools). Well, in the *very* beginning I was working with IntelliSence disabled also, based on the same arguments :).
I found a very nice feature of generics in C# 2.0: you can enforce the template type to be a class and also to be derived from another class / interface:


public abstract class VRCollectionNode<T> : VRNode, ICollection<T> where T : VRNode

So using the "where" keyword you can add contraints to the T type (here: to be derived from VRNode).
As I couldn't find Canon SDK (required for digital camera usage) for download, I have just started reverse-engineering the DLL interfaces. Currently I'm sticking SDK code pieces from the net as posted by people that had problems with it :).
I've hacked again the well-known MFC grid because I didn't get the virtual mode to work with the tree control (as you know, the tree control attaches to the grid and enables dynamic row hiding). So it's far easier to store the required data a hidden cell field and then modifying the GetText() cell method to dynamically get the needed text.
I got some insight on Microsoft's next technologies during a developer conference they have held around here. Following is a short brief on what they presented, as my comments will be available afterwards and more detailed.

- Visual Studio 2005 (I'm very interested in this as it will be my primary development tool - lots of innovations here, mostly all are already in the Beta 2 I am using)
- Visual Studio Team System - this definitely rocks, it generates a portal for managing the product (with bug-tracking, project management and source-safe functionalities included, also it even has settings for the project management methodologies like agile or planned)
- Visual Tools for Office (or something like that, basically you can do .net apps embedded in an word/excel document, like VBA but way nicer)
- SQL Server 2005 - I liked the new Management Studio but otherwise the new features are sql extensions for tasks like accessing web services and so on - things that shouldn't be done from sql server
- Windows Communication Foundation - pretty boring stuff, I hope I won't have the chance to work with it
- Windows Workflow Foundation - this idea was cool but until now I didn't have the need of using workflows in my designs (I actually thought about this pattern before, but, as I said, didn't implement it because there was no need for it)
- Windows Presentation Foundation - here we didn't got info on the next DirectX but rather XAML only, not very detailed though as the conference was finishing. All the "Foundation" components will be included in Vista.

Of course, the interesting and cool stuff will have more details coming.
Here. Between lots of high-tech news and geeky stuff. Well, this is news subject number one here in Romania and that's why I couldn't stop laughing when finding it also on Slashdot.
Where I'm working I find it pretty successfully (that's my opinion though ... I'm sure the client's opinion is the one that matters :) ) - anyway I highly recommend communicating with the customer using a blog specifically for this.
Now, consider you would have:

- some high-performance XML engine, that can also work with lots of data (gigabytes or even more)
- a XPath-based language with greater functionality and flexibility, and so on
- (optionally) wrappers for the existing SQL code and ADO APIs

Wouldn't you stop using SQL databases for good ? I give you one very good reason - storing of tree-like structures (that you'll end up writing lots of workarounds to get them working nicely in SQL databases, that were not designed for this at all). Also, current database engines started to have support for managing xml chunks of data (with sql language extensions) as column types (so basically keep small xmls in records and be able to access their contents) - you would get rid of this and have a nice unified structure.
You can get rid of the overhead of creating the control hidden somewhere by instantiating the coclass directly. This is, of course, needed if you have to call methods / properties of the control that have no visual effect. There is a catch - you'll need to get the IPersistStreamInit of the control and send it an InitNew first - otherwise all calls will throw an E_UNEXPECTED.
Ok in the case you were making worries about me - I'm really fine, thanks. And back with some nice interesting stuff, as always :).