Blogs

Distributed Caching - Strategies and Tips

Ancora Imparo - Scott Watermasysk - July 22, 2008 - 12:17am

As I have mentioned recently, we (Telligent) are starting to implement distributed caching in Community Server and will likely build it in early in some of the other product work we are doing. While we are not yet done with this work, there are some early patterns and tips I think you will find helpful.

Don't count on it.
Similar to ASP.Net's out of the box in-process cache (HttpCache), you must always assume data in the cache does not exist.

Do not update objects in the cache by reference.
Using HttpCache, you can update objects in the cache without pushing the updates back into the cache. Once you start distributing your cache and jumping in and out of process, you will need to explicity push updates back into the cache to ensure the other servers utilizing those objects will receive the change.

Do not over jump.
In most cases, using distributed caching requires you to jump out of process. However, you should (almost) never jump out of the process for the same object twice on the same request. To accomplish them, consider caching objects in the HttpCache for a very short period of time or utilize HttpContext.Items for per request storage.

Isolate the Cache.
For various reasons, you may not always need distributed caching and may find developing locally without it to be ideal. You should consider isolating your caching access behind an interface which would allow you an easy pattern/strategy for swapping out cache at runtime (provider/factory patterns).

Avoid duplicate object caching.
(This is also valid for HttpCache.) Applications will often cache lists of objects which can lead to duplicate copies of an object in the cache. As an application grows it can become more complicated to ensure object changes are replicated through out the cache when "copies" of the object are in various lists. In addition, each duplicate object in the cache takes up memory space that could be used by another object.

Consistent and predictable cache keys.
As you scale (add servers) with distributed caching it will become increasing important to clear cached items when the object's state has changed.

If you have any other tips, suggestions, or strategies, please leave them in the comments.

Posted to Code and tagged as cache , memcached

Similar Posts

  1. ASP.Net Quick Tips - Caching
  2. ASP.Net Quick Tips - Web.config
  3. ASP.Net Quick Tips - State Management

Mac Blogging - 2

Ancora Imparo - Scott Watermasysk - July 21, 2008 - 3:51pm

Windows Live Writer is still best desktop blogging tool on the "market", but as the name implies it only works on Windows.

I had been using TextMate for a while, but I have been wanting something a bit richer.

After a bit of debugging and testing, I was finally able to get Etco to support slugs, extended entries, and tags by leveraging the Moveable Type and Wordpress versions of the MetaBlog API.

I am still hoping to get MarsEdit to work properly but its requirement to use the mt.setCategories method after saving post content and before publishing might be a deal breaker.

These changes will be available in v.Next of Graffiti.

Posted to Software and tagged as apple , blogging , mac

Similar Posts

  1. Blogging on a Mac
  2. What Software do I use on the Mac?
  3. WLW Good For Community Server, Great for LAMP

Pluralsight BizTalk Server 2006 R2 Fundamentals in Big Apple

Sam Gentile - CodeBetter.com - July 21, 2008 - 2:43pm

I am super excited to finally be taking a comprehensive BizTalk Server course to add to my skill set. I am taking the Pluralsight BizTalk Server 2006 R2 Fundamentals course in NYC the week of 8/4. I am even more thrilled that my good friend Jon Flanders is teaching it.

If you are interested in taking the course, contact Scott Deadrick at (310) 251-9901 and tell him I sent you.

Course description:

BizTalk Server 2006 is Microsoft’s integration and business process management server offering based on .NET 2.0. BizTalk Server 2006 R2 is a release of BizTalk Server that brings it into the .NET 3.0 world, with integration between BizTalk and Windows Communication Foundation (WCF) and Windows Workflow Foundation (WF). R2 also includes full support for EDI, including both X12 and EDIFACT schema support, as well as support for EDI transaction batching. It also includes BizTalk RFID, which will enable integration between software and objects in the physical world.



Technologies covered: BizTalk Server 2006 R2, C#, XML, WCF, WF, RFID Programming language(s): C#, XML Length and schedule: Four days, 9am - 5pm

Who Should Attend

Developers interested in learning about BTS 2006, and how it can be used to solve integration and business process automation challenges throughout traditional enterprise systems.

Technorati Tags:

New and Notable 254

Sam Gentile - CodeBetter.com - July 20, 2008 - 11:08am

Service Security/Identity Management/SOA

  • I am super thrilled to see Microsoft roll out "Zermatt", a .NET developer framework and SDK to help build claims-based applications. I,  like Eugenio here, had to roll out my own a couple of months ago in a gig. I made use of Dominick's excellent LeastPrivilege.IdentityModel library in the meantime. Eugenio's post lists a number of resources to get started so check it out!!
  • Via Gunnar, found about Arnon's post on taking a greater view of SOA Security, which I wholeheartedly agree with

CLR/DLR

SQL Server/Data Dude

Technorati Tags: ,,,,,,,,,,

My New Love Affair with Live Mesh

Sam Gentile - CodeBetter.com - July 20, 2008 - 10:31am

You know, I'm so jaded from having working for Ray Ozzie at Groove and John Landry at Adesso so I have seen all this before and passed on LiveMesh the first time :) However, reading Brad's post about the Terminal Service from 10,000 miles away and listening to my good friend Jon Flanders go on about it the other night, I have given another try and fallen in love. The need for UAC seems to have gone away. I am syncing lots of user group files between PCs and guess what? My SmartPhone! I can not only log in and see all my files, but using Office Mobile in Windows Mobile 6, I can edit them and sync them back! The Add Picture stuff is not working yet, but I can take previous shot pictures and sync them to PCs and such. This tool rocks!

Technorati Tags: ,

How Can I Help You With Your WCF/WF/Neuron/Messaging Needs Today?

Sam Gentile - CodeBetter.com - July 18, 2008 - 11:00am

I mentioned that I was looking for new opportunities but I have decided to concentrate my independent Microsoft .NET consulting on all things Connected Systems and Messaging. I see many shops around the country struggling with WCF and WF. In this area, I have been a part of the WCF and WF SDRs for 4 years now since the beginning and part of the large 2-year WCF and WF effort at Algorithmics. I am available, on a consulting basis, to help you with your WCF, WF and BizTalk needs. In addition, I believe that WCF is too low-level and difficult for many shops that are pursuing Services and SOA beyond a few causal services. To that end, I am an authorized representative for Neuron ESB and it's place in accelerating your WCF and SOA efforts.  Using my 26 years in the industry, I can help you look at your Architecture and find ways to make it better. Not only that, but I can help ensure you are on the right path for Oslo. If you are interested, please respond here or email to managedcode44 AT hotmail. Please do not use that email for unrelated questions - that's what the comments and newsgroups are for.

Technorati Tags: ,,,,,,,

Dropbox

Ancora Imparo - Scott Watermasysk - July 18, 2008 - 9:54am

Dropbox is a super simple way to share files across multiple computers (PC or Mac) as well as with friends and family.

It does a couple of things I really like:

  1. It is accessible both on your desktop and the web
  2. Has a built in photo gallery tool which makes sharing a bunch of pictures as easy as dragging and dropping them to a folder.
  3. Supports easily sending links of files
  4. It is beyond easy to use

Some people don’t like the idea that doesn’t auto-sync directories, but I find that type of synchronization to the be job of another tool.

Dropbox is still in a private beta, but does offer 2 gigs of storage for free.

I have 5 more invites I can hand out for the service. If you are interested, please leave a comment with the name of the last non-Fiction book you read and would recommend to others. I will send the invite to the email you leave with the comment.

Posted to Software and tagged as easy-things , cloud , dropbox

Similar Posts

  1. Enhancing Desktop Computing with the Cloud
  2. What Software do I use on the Mac?
  3. Life on a Mac - Five Months Later

Sam Gentile PhillyNJ.NET July 31, 2008

Sam Gentile - CodeBetter.com - July 18, 2008 - 9:54am

I will be be taking my Advanced WCF: Asynchronous Messaging and Event-Driven Architectures talk to the July 31st meeting of PhillyNJ, which is a sub-chapter of the excellent Philly.NET group. I am real pleased, that my friend, Hilary Cotter, is speaking first on SQL Replication for Developers. Come on out!!

Hilary Cotter - SQL Replication for Developers In this session SQL Server MVP and replication guru Hilary Cotter explains the essentials of SQL Server replication for developers.  Hilary covers replication concepts, what technology is a best fit for data distribution, application considerations, and the new Sync Services in VS/SQL 2008. This is a high level session designed to help you get productive and presents material in both tsql and c# code.

Hilary has been involved in IT for over 20 years. He is a SQL Server consultant specializing in search and replication solutions. He wrote a book on SQL Server replication and is currently working on a SQL Server 2008 Administration book and another book on SQL Server 2008 full-text search. Sam Gentile - Advanced WCF: Asynchronous Messaging and Event-Driven Architectures Many WCF developers start and end with the Request/Response Message Exchange Pattern.  In actuality, there is a wide variety of Message Exchange Patterns cataloged by Hohpe and Woolfe in books like “Enterprise Integration Patterns” and Pattern & Practices “Integration Patterns.” In this advanced talk, that starts where most WCF talks leave off, we will show you how to build more loosely-coupled services and systems via these MEPs and with WCF. We will then focus on the powerful List-Based Publish/Subscribe Design Pattern. Upon showing how many lines of WCF code are required to implement the pattern in WCF, we will show the pattern as the basis for the Neuron ESB and achieve the same results with zero code. We will then focus on Mediation and how ESBs help mediate between disparate services.

Sam is an Independent .NET Consultant, where he uses WCF, Neuron, WF and BizTalk in delivering Real-World SOA solutions together with Microsoft. Sam was recently awarded the MVP award for Connected Systems for the 4th consecutive year. Sam is also an INETA Speaker, delivering advanced SOA and .NET training all over the world.
Technorati Tags: ,,,,,,

in.telligent 2008

Ancora Imparo - Scott Watermasysk - July 17, 2008 - 9:41pm

Registration is now open for in.telligent 2008 which will be take place October 20 to October 22 in Dallas, Texas. This is the evolution of the what we called the CSDC (Community Server Developers Conference) last year.

So of the changes you will this year:

  1. A lot more polish. There has been a team working hard on this for a couple of months now.
  2. No weekends. We were feeling things out last year and scheduled the CSDC over the weekend. This year we are starting early on Monday morning.
  3. A much nicer venue with “real” Internet access. The country club was nice last year, but they were not ready for us and about a 100 of our friends.
  4. Many more people. Not only is the venue nicer, but it can accommodate more people.
  5. Multiple tracks. Last year we were very developer focused. We are still going to have a lot of great developer content (CS, Evolution, Harvest, and Graffiti) but this year we will also have a strategy track that is dedicated to helping you get the most out of your community and our software.
  6. Hands on workshops – there will be a set of extended and interactive sessions on the last day. The product team will be doing two of these sessions. One on themeing and another on building cool things with our APIs.
  7. Surprises. We have quite a few things we are hoping to announce, demo, and share at this years event.

One thing that hasn’t changed is demand. While we do have a larger venue, so far the response has been great. If you are thinking of attending, I would recommend registering now and taking advantage of the early bird special ($200 off).

See you there!

Posted to Business and tagged as telligent , events , cs

Similar Posts

  1. WLW Good For Community Server, Great for LAMP
  2. Introductions
  3. A Remarkable Moo Cow

Installing Windows Live – Welcome Back to the 90’s

Ancora Imparo - Scott Watermasysk - July 17, 2008 - 1:56pm

I was trying to install Windows Live Writer on a new windows box and was greeted with something I thought had been put to rest many years ago.

What’s wrong here?

All three options are checked by default. I am OK with the option to help improve the application, but do you really need to change my default search provider and even worse change my home page?

I understand that it costs money to develop Windows Live Writer, but this is crappy way to go about it.

Posted to Software and tagged as wlw

Similar Posts

  1. What Software do I use on the Mac?
  2. iPhone vs. BlackBerry
  3. Graffiti CMS FAQ

New and Notable 252

Sam Gentile - CodeBetter.com - July 17, 2008 - 12:22pm

Just got back from a 10 day vacation with my family from lovely LA. We went to Universal and then spent 2 and 1/2 days at Disneyland, which Heather and Jonathan loved. I also got to spent some quality time with my very good friend Jon Flanders.

ASP.NET MVC

  • Preview 4 of ASP.NET MVC is out on CodePlex.
  • ScottGu has an extensive post on the new features
  • Phil has Notes on the release
  • Steven Walter has a post as well on the new features, which he lists as, and I quote,
    • · HandleError Action Filter – Simply by adding the HandleError attribute to any controller action (or controller class), you can redirect to a custom error view whenever an exception is raised.

      · OutputCache Action Filter – Simply by adding the OutputCache attribute to any controller action, you can cache the output of the action.

      · Authorize Action Filter – Simply by adding the Authorize attribute to any controller action, you can control who can call an action. For example, you can restrict access to a particular controller action by user or by role.

      · AccountController – The Controllers folder includes a new controller named the AccountController. This controller includes Login, Logout, Register, and ChangePassword actions. The sample application uses the AccountController to enable you to log into and log out of the sample website.

      · Ajax Helpers – This release of the ASP.NET MVC framework includes two Ajax helpers that you can use when creating a view: Ajax.ActionLink and Ajax.Form. The Ajax.ActionLink helper renders a link that performs an asynchronous request to the server. The Ajax.Form helper performs an asynchronous form post to the server.

  • MVC Storefront Part 17: Checkout With Jeff Atwood
  • New Modules for IIS7: Application Request Routing - Proxy and Load Balancing Module

.NET/Visual Studio 2008/Sharepoint

Technorati Tags: ,,,

New Release: ASP.NET MVC Preview 4

JrzyShr Dev Guy - July 17, 2008 - 10:11am

For those of you who attended the ASP.NET MVC Firestarter we hosted in NY last month, you know that the product team is moving quickly on this technology to get frequent releases out for feedback.  On Monday, Scott Guthrie announced that Preview 4 of the ASP.NET MVC Framework had been released on CodePlex.  There are a slew of new features being introduced in this new update. “The Gu” covers them in his post.  For additional notes, see the posts from Scott Hanselman and Phil Haack on their blogs.

Get the bits here!

As with most new/beta technologies, documentation is light, and the good information is contained spread out amongst many blogs.  Simone Chiaretta has posted a good list of links about the new Preview 4 release on his blog: ASP.NET MVC Preview 4 Links Collection

Following along in the spirit of aggregating all the information out there, Dan Hounshell has set up a really good ASP.NET MVC news site:

ASP.NET MVC: News, Announcements, and Information

While we’re on the topic of new releases from the ASP.NET team, they also recently released an updated “roadmap” document on what the future has in store for ASP.NET AJAX.  Take a read through, and you’ll see that there’s plenty of good stuff to come!

No iTunes AppStore Demo

Ancora Imparo - Scott Watermasysk - July 16, 2008 - 9:42am

Mashable has a story, "iPhone App Store Prices are Outrageous and it Needs to Stop" which criticizes some of the crappy applications available in the AppStore.

...but why hasn’t anyone even mentioned the fact that most of the paid applications aren’t all that great and more often than not, they’re incredibly overpriced?

The problem is not the prices or quality. The real issue is there is currently no way to try an application before you buy it. While there is a review system, this is not the same as being able to download play with it for a little while and then make an informed decision. Crappy overpriced software is much harder to spot from a picture and a couple of reviews. Spend a couple hours/days with it and it removes a lot of the guess work.  

Currently the only viable work around to this is the Freemium path applications like Twitterific are using. They provide a free (in their case ad supported) version and allow users to purchase a separate version that has more/enhanced features (and no ads). 

There are a lot of other applications I would love to try in the AppStore, but so far the quality bar has been pretty low.  As demand increases for applications (and more developers learn their way around the SDK), I expect the quality will increase . Hopefully there will be an update in the future which makes beta testing the applications (even if it is only in iTunes) possible. 

Posted to Software and tagged as freemium , iphone , appstore , apple

Similar Posts

  1. iPhone vs. BlackBerry
  2. What Software do I use on the Mac?
  3. Unfuddle == BaseCamp For Developers

O'Reilly EBooks DRM Free

Ancora Imparo - Scott Watermasysk - July 15, 2008 - 3:47pm

O'Reilly has made the move to expand their EBook select to a couple of additional formats including Amazon's Kindle format. What is also very interesting is they have chose to ship the books DRM free.

O'Reilly has released 30 titles as DRM-free downloadable ebook bundles. The bundles include three ebook formats (EPUB, PDF, and Kindle-compatible Mobipocket) for a single price -- at or below the book's cover price. And for a bit more than the cover price, you can get the print version too along with the ebook bundles.

Since we began selling PDFs directly some time ago, we've given those customers free updates to the PDFs to reflect published changes in the books; the same will apply to the ebook bundle, which will replace the PDF option on those titles. These files (like all our PDFs currently for sale) do not include any DRM, though we continue to experiment with custom watermarking options
. [30 O'Reilly Titles]

This is a good sign of things to come and kudos to O'Reilly for being so open.

Posted to Business and tagged as kindle , books

Similar Posts

  1. What Software do I use on the Mac?
  2. Unfuddle == BaseCamp For Developers
  3. Graffiti Links

NYC .NET Developers Group Presents “Speaker Idol” on 7/17/2008

JrzyShr Dev Guy - July 14, 2008 - 2:59pm

Based on the success of similar events at Tech Ed and other .NET user groups, the NYC .NET Developers group is presenting “Speakers Idol” this Thursday night in NYC.  “Speakers Idol” is modeled after it’s eponymous namesake American Idol with the winner winning a world tour and a recording contract.  Only in this case, there will be no world tour, and no recording contract.  There will be some cool prizes for the winner of the contest though (and for the audience too!).

What’s in it for you?  There will be a smorgasbord of knowledge on hand with five speakers giving you 15 minutes each on the topic of their expertise.  Stephen Forte will be reprising the role of Ryan Seacrest for the evening as your emcee.  It wouldn’t be a contest with out a panel of judges.  We have no shortage of talent on the panel either:  Andrew Brust of 26NY, Mary Jo Foley of ZDNet, Kathleen McGivney of IBM, and Peter Laudati (moi :) from Microsoft.  

Here’s the line up for the evening:

Topic Speaker Bio Introduction to F# – We will see what F# is and what features/differences there are between F# and “imperative” languages like C#. Zino Lee Zino has been working on wall street investment banks for the past 12 years, and doing .NET for 4 years. Currently the VP and manage a group that takes care of all GUI work for a trading desk. In graduate school at NYU James did some OCaml work when F# project started.

Castle Monorail
MonoRail is a MVC framework for Web Development inspired by ActionPack. It is part of the large Castle Project which includes the Windsor IoC container and the ActiveRecord data mapper.

James Curran

James is a Senior Developer at BarnesAndNoble.com and as a hobby, the Owner/Operator of NJTheater.com which is being converted into a MonoRail based site (under-development version viewable at www.njtheater.org). Previously, he was a Microsoft MVP for VisualC++.

Upgrading Legacy Code
Learn how to read the code and determine a path of action to be taken with the code upgrade. See how to evaluate what could be upgraded, what to rewrite and when to start all over from scratch.

John Carnevale John is working at Purvis systems stationed at the FDNY converting legacy code to .NET for the Starfire system.

Arithmetic in Generic Classes
Bill will show some examples of the benefits of doing arithmetic in generic classes and some utility classes and interfaces that make it extremely easy to do so

Bill Fugina

Bill works as a software developer for Coleman Insights, a music industry market research company in Research Triangle Park, North Carolina. He visits the office three or four days each month and otherwise telecommutes from his home office in Windsor Terrace, Brooklyn.

Casual and More Hard-Core WCF
In his demonstration, Gerard is going to quickly build a pair of WCF client applications to demonstrate the use of the MVP design pattern to guarantee a contract with the clients and facilitate unit testing

Gerardo Arevalo

Gerardo is relatively new to the New York (Tri-State) area. He is from El Salvador, lived in North Florida, then packed up for the North East to be closer to the techno

As per usual, the evening will start off with networking and free pizza.  So come on out this Thursday night for a good time at the NYC .NET Developers group.  The group meets in the Microsoft NYC office at 1290 Ave of the Americas.  Due to building security requirements, you MUST register for the event here.

For meeting details and directions, visit the NYC .NET Developers group website at: http://www.nycdotnetdev.com

del.icio.us/dossy links since July 7, 2008 at 09:00 AM

Dossy Shiobara - July 14, 2008 - 10:00am

del.icio.us/dossy (RSS) links since July 7, 2008 at 09:00 AM:

(comment on this)

Categories: Members, NJ Blogs
Syndicate content