Live Chat Programs

March 15, 2008

Manual CRUD operations with the Telerik RadGrid control

Filed under: Live Chat software

I have been working on a project lately that was already using the Telerik ASP.NET Rad Controls suite.  One of the new features was a fully editable web-grid, so I chose to use the existing ajax-enabled RadGrid control to speed my development.  I chose to use a 3rd party control, mostly due to time constraints since the project required a grid with inline-editing, full CRUD operations, plus custom column templates, all with heavy Ajax support to avoid postbacks and excessive page size.

I soon discovered, the Telerik controls are nice tool for simple uses where you can use asp.net DataSource controls and automatic databinding, but not so much if you need to get “fancy” with your implementation.  In my case I needed to do 2 things that cross over into the grey area where these controls excel.

Also see: ASP.NET MVC in CodePlex and Extensible Unit Testing

First, I’m using an early 2.0 version of NetTiers for the DAL (with Service Layer implementation) with custom mods to the entities as the datasource,  and second, I’m doing some aggregate custom ItemTemplates that require custom data-binding.

This lead to extreme complexity in the implementation because, A) this version of NetTiers’ had problems with properly generating CRUD operations for its EntityDataSource controls (NetTiers entities mapped onto a custom ObjectDataSource style control) which prevented me from using the declarative model, and B) the RadGrid control simply sucks if you cannot use automatic databinding and if you require custom databinding logic.

(more…)

Quaker votes

Filed under: Live Chat software


Jerry (no blog) has been telling us all about a process they use for consensus  [link from Michael ] building in some standards meetings… apparently the Quaker vote is done by everyone voting on each item as one of:

a) Prefer
b) Can live with
c) Can’t live with

The idea being that reasonable people will more quickly come to a decision with they understand what people are willing to tolerate and not. Seems interesting.

Several of us in my group are going off to do some architecture planning and I think we will have lots of challenges around consensus - we may have to put this to the test.


http://www.simplegeek.com/permalink.aspx/105

Safari on the blog

Filed under: Live Chat software


As Dave Winer points out, this is exactly what the web is about… (not to be too biased, i’ll also point out that this ASP.NET site is pretty cool also…) in both cases you have one to one communication between the community developers and the product team developers. Of course, one of the best things about the Safari link is that Dave Hyatt is actually posting patches in almost real time! That is damn cool!
http://www.simplegeek.com/permalink.aspx/64

YouTube Tries to Get Legal

Filed under: Live Chat software


First, let me offer a great big thank you to Youtube from me and everyone on the internet, including many small businesses. Im just guessing here, but based on reports coming from Compete and others, I don’t think its a stretch to say that Youtube subsidizes the cost of more than half the user generated internet bandwidth consumed in the United States.

Yep, you read that right. If you thought that the internet only used free as an incentive back during the Bubble Years, think again. I’m sure I speak for 10s of millions of us who have hosted videos on Youtube when I offer much gratitude to Google for their generosity. Never could even I have imagined that when they bought Youtube it would be such a costly mistake. If buying a company in order to subsidize the video bandwidth of the internet isn’t crazy.., I dont know what is.

Fortunately for Google, they have unquestionably the world’s best network and most likely the world’s lowest bandwidth costs. So if anyone is going to be able to afford that cost, it would be Google.

As long as their stock price doesn’t fall another 50pct that is. At that point even the most forgiving shareholder may ask about the wisdom of subsidizing all things video on the internet. Particularly when they realize that they have forgotten to price in the overhanging risk of the legal copyright challenges still in play against Youtube. Those lawsuits have not gone away, and the risk certainly has not been reduced. They simply are not front of mind to shareholders these (more…)

Why I hate Radio

Filed under: Live Chat software

Why, oh why, did Radio decide that an HTML page was the way to implement a client application?? I have lost 2 large entries so far with Radio… once I commited the “sin” of clicking an icon on my desktop… IE navigated to that page, my entry was gone… just now, I accidentally clicked the back button on my mouse, boom! another entry gone.

Given that Radio is a “smart client” application (being that it runs a complete WEB SERVER) on my machine, why couldn’t they actually write a real client application to do editing?

Oh well… i really need to write my own blog authoring tool…


http://www.simplegeek.com/permalink.aspx/66

Brad Abrams’ pixel8 Interview Podcast posted

Filed under: Live Chat software


I just noticed that the good folks at Pixel8 posted a podcast I did with them a while back.  It was a fun conversation about a bit of.NET history as well as where we are going. 

Landing Page   Download show

I’d love the hear what you think!


http://blogs.msdn.com/brada/archive/2008/03/15/brad-abrams-pixel8-interview-podcast-posted.aspx

There can be only one… with data

Filed under: Live Chat software


Sean & Scott  [fixed link]: The example you gave is great, although I would suggest something a little more robust, specifically you probably want to allow data to pass between the already running instance and the new one created (this allows you to marshal the command line arguments). I wrote an article on this last year… however supporting data marhsalling makes the code much much more nasty.

BTW, there were some minor bugs in the single instance logic that were fixed in next article in the series.


http://www.simplegeek.com/permalink.aspx/110

Aggregators rock!

Filed under: Live Chat software

Wow… I hadn’t played with any aggregators enough before, but Syndirella is really cool. The ability to fly through blogs with a simple space-space-space browsing is just awesome… it kills me that one or two my links don’t have RSS feeds.
http://www.simplegeek.com/permalink.aspx/97

Presentations…

Filed under: Live Chat software


I speaking tomorrow at a internal Microsoft event. I’ve spoken at tons of conferences (PDC, TechEd, etc.) and for groups ranging form 1 to 2000. Today I did the rehearsal for one of the demos i’m going and it didn’t really work… I had tomorrow blocked off to run through all the presentations to make sure i’m ready, but sometimes its good to get a little slap in the face to remind me to prepare adequatly… it’s easy to get a little cavalier about these things…

Scott made a good posting about presentations also…


http://www.simplegeek.com/permalink.aspx/111

Logging in .NET

Filed under: Live Chat software

Question from my brother Brent:

Is there a way to determine what file and method called my function?  I have a logging object that I would like to be able to automatically add the function, file, and line number of the caller.

Also, I’d like to automatically generate debug output when a function begins and exits

there are a couple options here…
 
If you want to profile, there are several profilers (Rational, Numega, etc.) and they are are managed aware. Given that you want this for logging, etc, there are even more options, read on…
  • You can use context bound objects and produce a somewhat heavy, but really cool framework for auto-logging , which can give you the begin/exit outputs
  • You can use the StackTrace class to get file, line, and function name information at any point during execution
Live Person Server: Live Chat Server for Online Customer Service on Website.

The caution I would give about either of these is performance. ContextBoundObject has some significant performance implication, as does using the StackTrace class. In addition, the StackTrace class will only give file and line information if the PDB is available.

Since C# doesn’t support macros (a good thing, btw), you are faced with either hand coding a lot of Debug.Write*(…) method calls, or living without this feature.

Maybe this is something we should think about adding to.NET? you could imagine something that plugs into the JIT and lets you compile in pre/post code for any method… ouch, and API into the JIT - that sounds scary. Maybe we shouldn’t consider this :)


http://www.simplegeek.com/permalink.aspx/59

Get free blog up and running in minutes with Blogsome
Theme designed by Jay of onefinejay.com