Label Cloud

Saturday, May 28, 2005

Yeee Haaaa..... Subversion 1.2.0 is released!!

Main new notable features that I was waiting for are:

  • File Locking (requires new client and server)
  • Full DAV autoversioning (mod_dav_svn feature)
  • Faster access to old revisions due to xdelta
  • FSFS repositories are now the default (server)
  • Cached passwords are encrypted on Windows (Windows client)

One very important note: The server is fully backward compatible (new features will not work witht the old client, however, all the old features will work perfectly)

Enjoy....


Share/Save/Bookmark

Monday, May 23, 2005

Finally - Great Theft Auto for XBox - Are there still any reasons to get the PS2?

Finally - Great Theft Auto for XBox - Are there still any reasons to get the PS2? Grand Theft Auto: San Andreas Xbox Hands-On - Grand Theft Auto: San Andreas Previews for Xbox at GameSpot


Share/Save/Bookmark

Tuesday, March 15, 2005

The tale of many grids

We are in the process of selecting a grid product for the next order management application. Even though the list of available grids is pretty big, once you start getting into the evaluation of the products, it narrows down pretty fast. I was not the one to do the research on the grids, so would like to give credit where it's due. All research on the grid products was done by Victoria Nemoytina, one of the senior developers on my team.

Grid Requirements:

  • Ease of use - no reason to jump through hoops to create a simple grid display
  • Fast Updates - don't you just hate it when you can see the pixels move as you scroll the grid?
  • Easy to bind to datasets and to user defined data structures - beeing able to bind to a dataset makes it extremely easy to create a simple grid display. DataSet will give you events during the updates for validation. Sometimes, you need a more of a custom data structure, and beeing able to bind a grid to it provides for a good division betwene data storage and display. The easier both of these can be accomplished and the more flexibility we get, the more productive we will be
  • Hierarchical display - pretty often we need to show parent/child relationships between the data. Contacts->Phone Numbers, Orders->Executions, Brokers->Orders, etc...
  • Flexible layouts - this is even more critical for hierarchical data. The grid needs to show a lot of information, and beeing able to create a clear layout, show the relationship between the records and provide the ability for the user to adjust it is extremely important
  • Grouping - a grid should assist in creating grouping and summaries.It should be possible to modify summary lines. A nice to have is to add custom grouping formuls
  • Filtering - a filter bar and/or ability to add custom filtering into the grid will help out tramendously. We've implemented the functionality before without the grid support, however, wold be nice to have it all in one package
  • Indepedant cell updates - a basic scenario is updating a cell value while a user is editing a row. Think "Running Stock Price"

The top candidates are:

SyncFusion GridSyncFusion Inc
Infragistics GridInfragistics Inc
XtraGridXtraGrid
ComponentOne GridComponentOne

Grid Features
Feature Infragistics DevExpress
Periodic Data Updates Yes - When sorting if off, new rows can be added and existing rows updated in the underlying recordset while the user is in edit mode. The grid is going to reflect the changes, but the user won't be kicked out of editing. Yes - When the new rows are added to the underlying recordset, the grid does not reflect the changes unless you do a refresh, which kicks the user out of edit mode. If you try to add new rows directly to the grid, the user also gets kicked out of edit mode once you try to commit your change (which you have to do to be able to add another new row). You can set a new value for a particular cell without switching focus from a row that's been edited. So, the real-time updates are possible.
Splits Yes Yes
Formulas Yes Yes
Export to Excel Yes Yes
Import from Excel Yes Yes
Virtual Mode (no data resides in a grid) Yes - Can apply grouping, sorting and filtering in virtual mode Yes - Can apply grouping, sorting and filtering in virtual mode. Applying grouping is faster in this mode than in Infragistics
Filtering Yes - You can hide, disable or change appearance for the rows that are filtered out. For a hierarchical grid you can filter the child or the parent rows only. Yes
Summaries Yes - Can have header of footer Summaries Yes - Can choose to display summaries for collapsed rows only. Can have header or footer Summaries.
Merged Cells Yes
Excel like presentation Yes
Create Columns automatically by adding them to the end Yes
Refresh Hierarhical Grid while keeping expansion status the same
Multicolumn Drop-down list Yes
Save one grid's Layout and apply it to other grid Yes Yes
Rotated Column Headers Yes Yes


Share/Save/Bookmark

Thursday, March 03, 2005

Resharper 1.5 is realeased

My favorite addin is updated to the next level of greatness www.jetbrains.com/resharper I was recommending this addin before, now this is a tool no C# developer should be without.


Share/Save/Bookmark

Finally - A new computer - and Windows XP

Hey, it only took me 3 years to get a new computer (meaning I panned on getting one for the last three years), and finally to switch switch to Windows XP. So now I have a brand new, far from the top of the line, P4, 3.0GHz, 512MB, 160GB HD Dell 3000. For a bargain price of $450. Hey, more then enough to read some blogs. Some of the coolest features I am going to miss while working on the laptop (still 2000) are: Fast Bootup TIme All of the powertoys (Virtual Screens, Task Switcher) Better security lockdown Ohh well, may be my boss will get me a new laptop (let's see if he's reading my blog on this one :)


Share/Save/Bookmark

Thursday, December 30, 2004

New Resharper Changes

There is a new version of Resharper now available from the EAP site: http://www.jetbrains.net/confluence/display/ReSharper/Download

Revision 150 has the following :

  1. Extract Interface refactoring
  2. Extract Superclass refactoring
  3. Introduce Field refactoring
  4. Encapsulate Field refactoring
  5. Copy Type refactoring

From what I see the guys at JetBrains are planning to implement other features of IntelliJ, which is great.


Share/Save/Bookmark

Saturday, December 18, 2004

Bug Tracking Guidelines

This came from the previous link on bugtracking software, however, page states very important points about bug tracking. http://www.bug-tracking-guidelines.com/


Bug Tracking Guidelines - (by Randy Stimpson) Each bug report represents hours -- maybe even days -- of work. It's important company data, which should be well protected and well organized. Bug reports should be recorded in a database that is backed up on a daily basis. A bug tracking system, such as PR-Tracker, should manage that database. Here are some guidelines for effective bug tracking.
  1. Make a build of the software daily Bug tracking works best in an environment where there is a daily build. This enables testers to test the most recent version of software so that they aren't reporting bugs that have already been fixed. They are also discovering newly introduced bugs quicker while the code is still fresh in the mind of the developers that introduced them
  2. Use build numbers When applicable, build numbers should be used to specify what version of software a bug was found in, what version it was fixed in, and what version a fix was verified in. Revision numbers of source code modules modified to fix bugs are helpful notes for developers, but they aren't necessary or sufficient to coordinate work between test and development. Use build numbers instead.
  3. Use a process to handle bug reports Bug reports should go through a process that ensures that they aren't closed if they shouldn't be. Such a process should require that the person who reported the bug be the one to verify that it has been fixed or to approve any other type of resolution. The typical bug report life cycle would include the following status values: New, Assigned, Resolved, Verified and Closed, respectively.
  4. Use a resolution field To keep the bug report life cycle simple, use a resolution field to specify how problems are resolved. Possible resolutions include: Fixed, Won't Fix, Not Reproducible, Duplicate, By Design and External.
  5. Don't triage bug reports in meetings Avoid using a committee or meeting to triage bug reports. This will use a lot of man-hours that could be used fixing bugs. If the schedule dictates a triage, don't close bug reports in the meeting because this will circumvent the quality process by sidestepping testers that report bugs. Instead, use the bug triage to reprioritize, postpone, or resolve as won't fix.
  6. Handle feature requests separately Feature requests and specifications are often recorded as bug reports. These should be recorded separately so that they can be triaged, and so that they don't skew statistics for measuring software quality.
  7. Describe how to reproduce bugs A bug report should include a step-by-step description on how to reproduce the bug. This reduces the amount of time developers spend trying to reproduce the bug before they fix it. Finding the minimal steps to reproduce the bug will save even more developer time.

  8. Record how bugs are detected
    Keeping records on how bugs are detected helps you determine how best to spend your testing dollars. Suggested choices for a detection method field include: Interactive Testing, Test Script Execution, Test Script Design, Unit Testing, Integration Testing, Code Review, Beta Testing and Customer Report.

  9. Keep bug reporting simple
    Don't make bug reporting complicated by requiring entry of more data than is really necessary. If it's too much work to enter bugs into the tracking system, some bugs won't be entered, or people may start going around the system and begin reporting bugs by email or word-of-mouth.


Share/Save/Bookmark

Bug tracking Software

The blog entry is not really informative yet, however, this is the most comprehensive list of bugtracking software that I ever saw on one page.

I will definitely be looking at it at posting more comments.

Bug tracking Software: http://blogs.msdn.com/JoeStagner/archive/2004/12/18/325099.aspx

Gemini: http://www.countersoft.com has a few interesting points.
It is a .NET solution. SQL server backend. Free license for up to 10 users.


Share/Save/Bookmark

Thursday, November 25, 2004

Here's to changing the world...

Finally, the first step....

Not sure this will change the world, but hopefully will start a project that will be helpful. I've just uploaded an initial version of the C# Match project to SourceForge.net

C#Match - C# Pub/Sub Matching Engine. Support for multiple operators, XML subject line, efficient matching algorithm.

The project started as a pub/sub framework that I had to do for work. I was unable to find any available matching engines, and had to write my own. After a bit of research on the efficient matching techniques and a bit of development, C# Match was born.

I want to take the matching engine to the next level. Make it more generic, add multiple operator support (it now support only equality). When the project is a bit more stable.

I am always looking for people to help out, so if you can dedicate a bit of time to code, look at my code and make comments/sujestions, or even provide moral support and spread the word...


Share/Save/Bookmark

Wednesday, November 24, 2004

Coding Sanity: Reflector Diff

This sound pretty cool. Should be a great way to compare files. It would be great to add a command line functionality so it can be scripted with nant for example.

Coding Sanity: Reflector Diff


Share/Save/Bookmark

Wednesday, November 03, 2004

Popular agile software development sites

A pretty good list of Agile Programming related sites.

Popular agile software development sites


Share/Save/Bookmark

Sunday, October 03, 2004

The Code Project - Free Source Code and Tutorials

Code project is definetely a site that every developer should know. It does however keep track of a lot more then just code. Check out the section on Program Design and Methodologies


Share/Save/Bookmark

The Code Project - NPerf, A Performance Benchmark Framework for .Net - Design and Strategy

Performance Testing framework
The Code Project - NPerf, A Performance Benchmark Framework for .Net - Design and Strategy


Share/Save/Bookmark

Thursday, September 30, 2004

Steal This Book: The Free Way to be a C# Expert

A nice list of free book extracts. Steal This Book: The Free Way to be a C# Expert


Share/Save/Bookmark

Thursday, September 16, 2004

This is why I love technology

Currently I am sitting in my car in the middle of Manhattan waiting for my wife to come out of the office. A totally random situation, but what makes it different is that I am with my laptop and I am Blogging.
I started NetWork Stumbler and saw 7 access points, 2 of them unencrypted. 30 seconds changing my network settings and boom, I am on the Net.

I LOVE technology


Share/Save/Bookmark
Directory of Computers/Tech Blogs