Agile Development, Architecture, .NET and The Art of Listening  RSS 2.0

Navigation
 Saturday, December 27, 2008
The 960 Grid System is an effort to streamline web development workflow by providing commonly used dimensions, based on a width of 960 pixels. http://960.gs/

Cuyahoga is an open source .NET web site framework. It provides content management capabilities and has a modular approach. http://www.cuyahoga-project.org/

ASP.NET 3.5 Unleashed
Chapter 25. Caching Application Pages and Data
Chapter 21. Advanced Navigation
Chapter 20. Using Site Maps

Spring Batch is a lightweight, comprehensive batch framework designed to enable the development of robust batch applications vital for the daily operations of enterprise systems. http://static.springsource.org/spring-batch/

The SQL Site Map Provider You've Been Waiting For
http://msdn.microsoft.com/en-us/magazine/cc163657.aspx

Implement Custom Cache Dependencies in ASP.NET 1.x by Dino Esposito http://msdn.microsoft.com/en-us/magazine/cc163955.aspx

Kentico CMS for ASP.NET flexible, all-in-one solution for web developers http://www.kentico.com/

Open Source CMS http://www.umbraco.org/

Building Layered Web Applications with Microsoft ASP.NET 2.0 
N-Layered Web Applications with ASP.NET 3.5

S#arp Architecture: ASP.NET MVC with NHibernate Pronounced "Sharp Architecture," this is a solid architectural foundation for rapidly building maintainable web applications leveraging the ASP.NET MVC framework with NHibernate. http://code.google.com/p/sharp-architecture/

Tip/Trick: Url Rewriting with ASP.NET 

Using Common Table Expressions http://msdn.microsoft.com/en-us/library/ms190766.aspx

Visual Basic LINQ Hands On Labs for Visual Studio 2008 

12 More SEO Tips for 200

Google Help › Analytics Help › How do I track AJAX applications? 

Simplify Ajax development with jQuery Discover how easy Ajax and DOM scripting can be http://www.ibm.com/developerworks/library/x-ajaxjquery.html

Rendering individual controls for AJAX Callbacks 

jQuery: Write less, do more

Getting Clueful: 7 Things CIOs Should Know About Agile Development 

Version Control for Multiple Agile Teams http://www.infoq.com/articles/agile-version-control

Inversion of Control and Dependency Injection: Working with Windsor Container Oren Eini http://msdn.microsoft.com/en-us/library/aa973811.aspx

Inversion of Control - Dependency Inversion Principle - Castle's Windsor/MicroKernel David Hayden 

Higgins 1.0: Identity Management Solutions from the Eclipse Foundation
 

Three Rules for Database Work by K. Scott Allen 

Using XQuery to Manage XML with SQL Server 2005 

Applying Domain-Driven Design and Patterns: With Examples in C# and .NET by Jimmy Nilsson http://techbus.safaribooksonline.com/0321268202

Mocks Aren't Stubs by Martin Fowler http://martinfowler.com/articles/mocksArentStubs.html

Service Oriented Architecture (SOA) and specialized messaging patterns This white paper discusses specializations for advanced data exchanges within enterprise service oriented environments and illustrates some of the common architectures of these new platforms. http://www.adobe.com/devnet/livecycle/articles/soa_messaging.html

A control adapter can "teach" the Menu how to produce this kind of CSS friendly HTML without sacrificing the power and flexibility of the original Menu control. http://www.asp.net/cssadapters/menu.aspx

Don't Make Me Think!: A Common Sense Approach to Web Usability by STEVE KRUG

jQuery Puts the Fun Back into Browser Scripting by Rick Strahl 

On The Care and Handling of Cookies By Paul Riley 

Scalability Best Practices: Lessons from eBay Posted by Randy Shoup 

Guidelines for Using Distributed Queries 

SELECT * INTO tableA FROM tableB 
=> this will create tableA based on tableB schema and insert the data
A Visual Explanation of SQL Joins by Jeff Atwood

Programmatically retrieve an InfoPath form from a SharePoint library by S.Y.M. Wong-A-Ton 

Aging of Accounts Receivable 

Web Service optimization By Alexander Yumashev

Chapter 6 — Improving ASP.NET Performance by P&P 

Custom Paging in ASP.NET 2.0 with SQL Server 2005
By Scott Mitchell 
Sorting Custom Paged Results By Scott Mitchell
Saturday, December 27, 2008 4:18:15 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Helped with work
 Sunday, October 12, 2008
I stumble upon this post the other day.
This led me to wonderful online tool http://www.websequencediagrams.com/ .
The SD/MSC Generator is an easy alternative to using mouse-centric tools like Microsoft Visio.
It has nice Domain Specific Language and API for creating quick sequence diagrams.

I would prefer this approach for creating any UML diagram anytime over any mouse-centric diagramming tool. Any UML diagram drawn will be rarely revisited later and adjusted/updated to the reality of the live code base. Usually when some process is better can be presented visually you want to have it done as quickly as possible while the idea is still fresh in you head. With traditional tools you would probably spend 70-85% of your time resizing horizontal and vertical lines, boxes, searching for the right shape and stencils, trying to remember to save the document in the correct format and with all this “noise” you loose concentration and spend 3-4 hours on simple diagram that would take 30 minutes to one hours with the tool like SD/MSC Generator. It is so much easier to learn Domain Specific Language for this tool than count pixels on the Visio grid.

And here is the best part of tool like this: you can store text/instruction for your diagram as regular text file in your favorite version control system rather then binary file.

Disclaimer: I am in no way affiliated with this product.

I just found another tool or technique that makes more sense, to me, and makes software project more Agile and less bureaucratic.

Sunday, October 12, 2008 6:22:00 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Agile | Cool | Tools | Useful stuff
//SINGLETON - C#

using NUnit.Framework;

[TestFixture()]
public class SingletonTest
{
    [Test()]
    public void ObjectsAreTheSameTest()
    {
        DeploymentInfo firstDeployment = Singleton<DeploymentInfo>.UniqueInstance;
        DeploymentInfo secondDeployment = Singleton<DeploymentInfo>.UniqueInstance;
        Assert.AreSame(firstDeployment, secondDeployment);
    }
}

//Singleton Pattern 
//Generic Version

public class Singleton<T> where T : class, new()
{
    private Singleton()
    {
    }

    private class SingletonCreator
    {
        static SingletonCreator()
        {
        }
        // Private object instantiated with private constructor
        static internal readonly T instance = new T();
    }

    public static T UniqueInstance {
        get { return SingletonCreator.instance; }
    }
}


'SINGLETON - VB.NET

Imports NUnit.Framework

<TestFixture()> _
Public Class SingletonTest
    <Test()> _
    Public Sub ObjectsAreTheSameTest()
        Dim firstDeployment As DeploymentInfo = Singleton(Of DeploymentInfo).UniqueInstance
        Dim secondDeployment As DeploymentInfo = Singleton(Of DeploymentInfo).UniqueInstance
        Assert.AreSame(firstDeployment, secondDeployment)
    End Sub
End Class

'Singleton Pattern 
'Generic Version

Public Class Singleton(Of T As {Class, New})
    Private Sub New()
    End Sub

    Private Class SingletonCreator
        Shared Sub New()
        End Sub
        ' Private object instantiated with private constructor
        Friend Shared ReadOnly instance As New T()
    End Class

    Public Shared ReadOnly Property UniqueInstance() As T
        Get
            Return SingletonCreator.instance
        End Get
    End Property
End Class

Sunday, October 12, 2008 5:40:08 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | Patterns & Practices | Useful stuff
 Sunday, September 21, 2008
NHibernateDataSource: A DataSourceControl for ASP.NET 2.0

http://www.codeproject.com/KB/aspnet/NHibernateDataSource.aspx

Sunday, September 21, 2008 4:54:38 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | NHibernate
Sunday, September 21, 2008 4:48:45 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
ASP.NET | Useful stuff
Rick Strahl posted his session slides and samples from his ASP.NET Connections. Really good presentations.
http://west-wind.com/weblog/posts/336745.aspx

Sunday, September 21, 2008 4:45:30 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | Agile | AJAX | ASP.NET | JavaScript | LINQ | Useful stuff | WCF | Web Services
http://stevenharman.net/blog/archive/2006/05/13/Custom_Output_Caching_in_ASP.NET.aspx

Tip/Trick: Implement "Donut Caching" with the ASP.NET 2.0 Output Cache Substitution Feature

"For anyone interested in seeing the above in some real code, subText uses this very technique to cache several of the user controls needed to render the UI..." - http://subtextproject.com/


Sunday, September 21, 2008 4:39:41 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
ASP.NET | Helped with work
Sunday, September 21, 2008 4:35:44 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
LINQ | SQL Server
Sunday, September 21, 2008 4:33:28 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Agile | Database design
LINQPad lets you interactively query SQL databases in a modern query language: LINQ.  Kiss goodbye to SQL Management Studio!
http://www.linqpad.net/

Visual LINQ Query Builder
http://code.msdn.microsoft.com/vlinq/

Sunday, September 21, 2008 4:29:38 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | LINQ
Sunday, September 21, 2008 4:27:32 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | Helped with work
 Saturday, April 26, 2008
Beth Massi posted nice presentation on Ling to XML on Infoq.com.
http://www.infoq.com/presentations/massi-linq-xml

She also rights regularily on her blog "Sharring the goodness tha is VB" - http://blogs.msdn.com/bethmassi/

VB.NET 9.0 has nice syntactic sugar tha C# 3.0 don't have for working with XML and Linq.
Saturday, April 26, 2008 12:27:46 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | Helped with work | LINQ | People | Useful stuff | XML
 Monday, April 21, 2008
I am getting more and more comfortable with different javascript frameworks.
The simple reason is that frameworks got much better.
I used javascript here and there before but tried to stay away from internals and poluting my memory with different behaviors of JavaScript in different browsers.

My first encounter with AJAX was via using MagicAjax.net at the begining of 2005. Later when Atlas/ASP.NET AJAX got better I start using it for my projects.
I have now enough understanding to see that ASP.NET AJAX can be somewhat havy and from now on I am trying to use more browser friendlier and much lighter options utilizing following javascript libraries and CSS resources:
  • jQuery is a fast, concise, JavaScript Library that simplifies how you traverse HTML documents, handle events, perform animations, and add Ajax interactions to your web pages. jQuery is designed to change the way that you write JavaScript.
  • Ext JS 2.0 Ext JS is a cross-browser JavaScript library for building rich internet applications.
  • Dynamic Drive's new CSS library! Here you'll find original, practical CSS codes and examples such as CSS menus to give your site a visual boast.
Combine this with the good server side scripting technology like ASP.NET, PHP, Ruby on Rails and others and you may get very close to perfect harmony and nice warm Zen like feeling about design and performance of your web application. ;-)

Monday, April 21, 2008 10:43:42 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Agile | AJAX | Cool | CSS | Helped with work | JavaScript | Performance Tuning | Useful stuff
This sounds like a simple question. I will say like many other developers/architects/consultants - "It depends..."

Bottom line AJAX is bad for SEO!
For publicly facing company websites, were SEO important, stick with the server side scripting such as ASP.NET, PHP, Ruby on Rails and others.
I am not mentioning static HTML pages here since medium and big size companies most likely will have data driven web site.

If you are building Line of Service business application AJAX will only make your application better.
Do not think twice learn it well and use it.

If you absolutely have to use AJAX follow "Unobtrusive JavaScript" pattern.
AJAX is great tool when used for proper application types.

Here is my prediction -> 3 years from now Search engines will learn to understand and properly index and rank RIA/AJAX/FLASH/Silverlight/Flex/Put your faviorite client side technology here. Until then ...

AJAX and SEO: How to have an SEO Friendly AJAX website using jquery
http://www.davidpirek.com/blog.aspx?n=AJAX-and-SEO:-How-to-have-an-SEO-Friendly-AJAX-website-using-jquery

http://www.seomoz.org/crawl-test

12 More SEO Tips for 2007 http://www.seochat.com/c/a/Search-Engine-Optimization-Help/12-More-SEO-Tips-for-2007/

SEO Myths  http://www.seochat.com/c/a/Search-Engine-Optimization-Help/SEO-Myths/3/
SEO for AJAX http://www.johnon.com/270/seo-for-ajax.html
AJAX, Web 2.0 and SEO http://www.hybrid6.com/webgeek/2007/01/ajax-web-20-and-seo.php
Web 2.0 Technologies and Search Visibility http://searchenginewatch.com/showPage.html?page=3624222
Unobtrusive JavaScript http://en.wikipedia.org/wiki/Unobtrusive_JavaScript
CSS, AJAX, Web 2.0 & Search Engines http://www.seroundtable.com/archives/006889.html
Search engine optimization http://en.wikipedia.org/wiki/Search_engine_optimization
Monday, April 21, 2008 9:55:59 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | Agile | AJAX | Architecture | Performance Tuning | SEO | Useful stuff
Link to Everything: A List of LINQ Providers
http://blogs.msdn.com/charlie/archive/2008/02/28/link-to-everything-a-list-of-linq-providers.aspx

LINQPad lets you interactively query SQL databases in a modern query language: LINQ.  Kiss goodbye to SQL Management Studio!
http://www.linqpad.net/

Visual LINQ Query Builder http://code.msdn.microsoft.com/vlinq/
Monday, April 21, 2008 9:40:12 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | Cool | Helped with work | LINQ | Useful stuff
Monday, April 21, 2008 9:36:01 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | Helped with work | Useful stuff
Monday, April 21, 2008 9:27:46 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | Agile | Cool | Helped with work | Useful stuff
Source Control: Anything But SourceSafe -> http://www.codinghorror.com/blog/archives/000660.html
Visual SourceSafe Version Control: Unsafe at any Speed? -> http://www.developsense.com/testing/VSSDefects.html
Visual SourceSafe: Microsoft's Source Destruction System -> http://www.highprogrammer.com/alan/windev/sourcesafe.html

Source Control HOWTO -> http://www.ericsink.com/scm/source_control.html

Article "Version Control for Multiple Agile Teams" by Henrik Kniberg  http://www.infoq.com/articles/agile-version-control

Monday, April 21, 2008 9:24:22 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Helped with work | Version Control | When things go wrong
The SQL Site Map Provider You've Been Waiting For
http://msdn2.microsoft.com/en-us/magazine/cc163657.aspx

 Using Multiple Sitemap Files
 http://geekswithblogs.net/dlussier/archive/2007/10/04/115848.aspx
 How to: Configure Multiple Site Maps and Site-Map Providers
 http://msdn2.microsoft.com/en-us/library/ms178426.aspx

Sitemap Celebration
http://www.zabdesign.de/pro/public/sitemap/sitemap-styled.html

Monday, April 21, 2008 9:22:56 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | ASP.NET | Helped with work
http://www.danga.com/memcached/

Have not use it yet but heard a lot of good things about it.

Monday, April 21, 2008 9:21:38 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Cool | Performance Tuning | Tools | Useful stuff
http://www.dynamicdrive.com/

Most used CSS tricks -> http://stylizedweb.com/2008/03/12/most-used-css-tricks/

The 960 Grid System is an effort to streamline web development workflow by providing commonly used dimensions, based on a width of 960 pixels.
http://960.gs/

CSS Sprites: Image Slicing’s Kiss of Death  http://www.alistapart.com/articles/sprites

Can you take a simple list and use different Cascading Style Sheets to create radically different list options? The Listamatic shows the power of CSS when applied to one simple list.  http://css.maxdesign.com.au/listamatic/index.htm
http://css.maxdesign.com.au/

CSS Control Adapter Toolkit for ASP.NET 2.0
http://weblogs.asp.net/scottgu/archive/2006/05/02/CSS-Control-Adapter-Toolkit-for-ASP.NET-2.0-.aspx
http://www.asp.net/cssadapters/

ASP.NET 2.0 CSS Friendly Control Adapters: The White Paper
http://www.asp.net/CSSAdapters/WhitePaper.aspx

Monday, April 21, 2008 9:18:47 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
ASP.NET | Cool | CSS | Helped with work | Useful stuff
Monday, April 21, 2008 9:16:30 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Book | Cool
Monday, April 21, 2008 9:14:32 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Cool | Helped with work | IE | Tools | Useful stuff
Monday, April 21, 2008 9:09:55 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Agile | Database design | SQL Server | Tools | Unit Testing
Monday, April 21, 2008 9:03:08 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
ASP.NET
Monday, April 21, 2008 9:02:10 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Performance Tuning | Tools | Useful stuff
Monday, April 21, 2008 9:00:14 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | Agile | IoC/DI | Useful stuff
 Saturday, March 22, 2008
Dingo is a pluggable Schema Compiler for .NET and will generate C# code. The goal is to provide a simple way to generate Domain Objects. .NET XSD currently only generates Data Objects. Dingo can delegate code generation with high granularity.
http://sourceforge.net/projects/dingo/
Saturday, March 22, 2008 11:54:37 AM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
.NET | Tools | Useful stuff | Web Services | XML
 Sunday, March 02, 2008
“Silk” is a smooth, free icon set, containing over 700  16-by-16 pixel icons in strokably-soft PNG format. Containing a large variety of icons, you're sure to find something that tickles your fancy. And all for a low low price of $0.00. You can't say fairer than that.

http://www.famfamfam.com/lab/icons/silk/

Sunday, March 02, 2008 9:51:00 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Cool | Useful stuff
Sunday, March 02, 2008 9:45:46 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
People | Useful stuff
http://testdrive.barnyardbbs.com/ASP.Net-Content-Blog-Gallery-Open-Source
  • The Content Control (client-editable regions in a web page)
  • The Blog Control (a fully validating and CSS based blogging engine, implemented as a control)
  • The Photo Gallery Control (a fully validating and CSS based photo gallery, implemented as a control)
Sunday, March 02, 2008 9:41:17 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
ASP.NET | Controls | Useful stuff
Sunday, March 02, 2008 9:34:26 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Agile | Cool | Performance Tuning | Tools
If you missed "The Business Value of SOA" presentation on InfoQ.com I highly recommend.

"In this presentation, recorded at QCon, Burton Group research director Anne Thomas Manes talks about how to make the business case for SOA.
Her talk covers explaining SOA to non-technical business people, various approaches for selling SOA to management and gaining funding for SOA investments." and much more...

http://www.infoq.com/presentations/anne-thomas-manes-business-soa
Sunday, March 02, 2008 9:28:56 PM (Central America Standard Time, UTC-06:00)  #    Comments [0] -
Architecture | SOA
Archive
<July 2009>
SunMonTueWedThuFriSat
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2009
Vlad Navazhylau
Sign In
Statistics
Total Posts: 174
This Year: 0
This Month: 0
This Week: 0
Comments: 1
All Content © 2009, Vlad Navazhylau