Blog

Twitter Clients 

Friday, January 29, 2010 4:13:45 PM

If your looking for Windows Twitter clients.. Take a look at these:

http://seesmic.com/seesmic_desktop/look/features/

http://www.sobees.com/

http://www.digitweet.com/

http://code.google.com/p/wittytwitter/

As I find more clients I'll add them to my list.

PLINQO adds missing features to LINQ to SQL 

Sunday, January 24, 2010 6:14:27 AM

While the LINQ to SQL technology is amazing it does have some missing features.

That is until now.... Take a look at PLINQO  ( http://plinqo.com/ )

Comparison Operators

db.User.ByAge(21, CodeSmith.Data.Linq.ComparisonOperator.GreaterThan);

Detach

Task task = null;
using (var context = new TrackerDataContext())
{
    task = context.Task.FirstOrDefault(t => t.Id == 1);
    task.Detach();
}
 
task.StatusId = 1;
 
using (var context2 = new TrackerDataContext())
{
    context2.Task.Attach(task, true);
    context2.SubmitChanges();
}

Clone

using (var context = new TrackerDataContext())
{
    var u = context.Manager.User.GetByKey(1);
    User clonedUser = u.Clone();
    clonedUser.Id = 0;
    context.User.InsertOnSubmit(clonedUser);
    context.SubmitChanges();
}

Serialization

Here is a sample of serializing an object using PLINQO.

Task task = context.Task.GetByKey(1);
string xml = task.ToXml();
byte[] b = task.ToBinary();

Deserialization is also made simple with PLINQO

task = Task.FromXml(xml);
task = Task.FromBinary(b);

Query Result Cache
//query is cached using the default settings
var tasks = context.Task.ByAssignedId(UserId).FromCache();
 
//query result is now cached 300 seconds
var approvedUsers = context.User.ByIsApproved(true).FromCache(300);

Cache Manager

CacheManager.Set("user-17", user, CacheSettings.FromDuration(30));
User user = CacheManager.Get<User>("user-17");
CacheManager.Remove("user-17");

Many to Many Relationships

Auditing

Rules Engine


A rule for the minimum length of UserName is added.

static partial void AddSharedRules()
{
    RuleManager.AddShared<User>(new CustomRule<string>("UserName", "UserName must be 5 characters.", MinLengthUserName));
}
 
private static bool MinLengthUserName(string username)
{
    if (String.IsNullOrEmpty(username) || username.Length < 5)
        return false;
    else
        return true;
}

When any rules are broken, no data is updated and a nice list of the rules broken is returned.

using (var context = new TrackerDataContext())
{
    User user = new User();
    context.User.InsertOnSubmit(user);
    context.SubmitChanges();
}

Performance Improvements

Batch Updates and Deletes

Stored Procedures with multiple result sets

Future Queries


Here is a quick sample.

// build up multiple queries
var q1 = db.User
    .ByEmailAddress("<a class="linkification-ext" href="mailto:one@test.com" title="Linkification: mailto:one@test.com">one@test.com</a>")
    .Future();
     
var q2 = db.Task
    .Where(t => t.Summary == "Test")
    .Future();
     
// this triggers the loading of all the future queries
var users = q1.ToList();
No data is retrieved until q1.ToList(); is executed. At that time, PLINQO knows to execute all the future queries automatically. The data is both batched and not retrieved until it is needed.

Not only can you queue up execution of queries for the future, the results can be cached as well. Again, PLINQO makes things easy. Here's a quick look at FutureCache.
// cache these results for 120 seconds
var q1 = db.User
    .ByEmailAddress("<a class="linkification-ext" href="mailto:one@test.com" title="Linkification: mailto:one@test.com">one@test.com</a>")
    .FutureCache(120);
 
var q2 = db.Task
    .Where(t => t.Summary == "Test")
    .FutureCache(120);
 
// this triggers the loading of all the future queries
var users = q1.ToList();

Linq to SQL Profiler

The list goes on and on and on...

If your serious about LINQ to SQL you really need to take a look at PLINQO... Its amazing.

Android 2.0 now a supported Platform... 

Friday, January 15, 2010 8:12:51 AM

CastleSoft is now developing software for android phones, netbooks, tablets and PC's.

Android-2.0.png

If you need an application for your new Google Nexus phone or Netbook/Tablet device.

CastleSoft can develop an application for your business requirements.

Website updated to new Mojoportal 2.3.3.4 

Wednesday, January 13, 2010 6:10:18 AM

The castlesoft website was updated to the latest Mojoportal 2.3.3.4.

Some of the new features since our last update include:

  • New File Manager UI
  • Floating Admin Tools bars
  • Blog Paging
  • Feed Manager Improvements
  • Page Comments
  • IFrame Content
  • Contact Form Improvements
  • Forum Improvement
  • Shared Files Improvement
  • Upgraded to the latest CKeditor

For more information on Mojoportal visit www.mojoportal.com

2010 Has arrived.. Have a Happy New Year 

Thursday, December 31, 2009 8:38:52 AM

The staff at CastleSoft would like to wish everyone a Happy New Year.

May 2010 be all you wish for and more.

We look forward to delivering quality products and services to our customers along with a few surprises.

 

Moonlight 2.0 Released. 

Thursday, December 17, 2009 6:45:44 PM
  • Moonlight 2 is complete: Moonlight 2, our open source implementation of Silverlight 2 is done.
  • An updated collaboration agreement between Microsoft and Novell to bring Silverlight 3 and 4 to open source Unix.
  • Microsoft has an updated patent covenant that will covers third party distributions.

Update: Sean Michael Kerner covers the announcement and talks to Brian Goldfarb from Microsoft.

 

2.5 API

Moonlight 2 is a superset of Silverlight 2. It contains everything that is part of Silverlight 2 but already ships with various features from Silverlight 3:

  • Silverlight 3 Pluggable Pipeline, this allows developers to hook into the media decoding pipeline at various points:
  • Easing animation functions
  • Partial out-of-browser support
  • Writable bitmaps
  • Some of the new databinding features of XAML in Silverlight 3

We are moving quickly to complete our 3 support. Microsoft is not only providing us with test suites for Moonlight but also assisting us in making sure that flagship Silvelright applications work with Moonlight.

When it comes to prioritization of Silverlight 3 features, we are going to focus on getting the major applications that users want to use first. Sunday Night Football, the Winter Olympics and Bing's Photosynth support.

Smooth streaming works really well. Visit the site and test the immediate seek, and play with the bandwidth limiter to see how Silverlight/Moonlight can adapt the video quality based ont he bandwidth available:

Moonlight 2

Moonlight 2 is the result of love and passion to bring the Silverlight runtime to Linux.

Moonlight 2 engine consists of 142,000 lines of C/C++ code and 320,000 lines of C# code (125,000 lines of code came from Microsoft's open source Silverlight Controls).

Moonlight is built on top of Mono 2.6 runtime, Cairo and Gtk+ and today supports Firefox on Linux. We are hard at work to support Google Chrome on Linux as well.

Updated Patent Covenant

We worked with Microsoft to make sure that Moonlight was available to everyone on Linux and BSD.

Culturally, we started on two opposite ends of the software licensing spectrum. The covenant that was issued for Moonlight 1 and 2 covered every user that used Moonlight, but only as long as the user obtained Moonlight from Novell. This is a model similar to how Flash is distributed: there is a well-known location where you get your plugin.

The open source world does not work that way though. In the open source world, the idea is to release source code and have distributions play the role of editors and curators and distribute their own versions of the software.

Microsoft's intention was to expand the reach of Silverlight, but the original covenant was not a good cultural fit. We worked with the team at Microsoft (Brian Goldfarb and Bob Muglia's teams) to make sure that the covenant would cover the other Linux distributions.

The new patent covenant ensures that other third party distributions can distribute Moonlight without their users fearing of getting sued over patent infringement by Microsoft.

There is one important difference between the version of Moonlight that will be available from Novell and the version that you will get from your distribution: the version obtained from Novell will have access to licensed media codecs.

Third party distributions of Moonlight will be able to play unencumbered media using Vorbis, Theora and Ogg inside Moonlight (and Silverlight), but for playing back other formats, they will have a few options:

  • Negotiating directly with the media codec owners a license (MPEG-LA, Fraunhofer).
  • Negotiate access to Microsoft's Media Pack with Microsoft.
  • Plug-in GStreamer or another commercial codec license into their Moonlight implementations.
  • Update: Use a hardware provided decoder like VDPau.

Moonlight 3 and Moonlight 4 Collaboration Agreement

As readers of my blog know, the Silverlight 4 feature set is something that is very interesting to me.

If our experience with the positive feedback that we have gotten from MonoDevelop is of any indication Silverlight 4 will enable a whole new class of cross-platform .NET application development to take place. Like nothing we have seen before.

We are thrilled to be working with Microsoft to make sure that we can improve, fix and fine tune Moonlight to meet those requirements and to do so in a purely open source fashion.

Comments copied from 'Post by Miguel de Icaza on

17 Dec 2009

'

Mono 2.6 and MonoDevelop 2.2 released 

Tuesday, December 15, 2009 8:01:15 PM

Mono 2.6 highlights:

  • WCF client and server, the subset exposed by Silverlight 2.0.
  • LLVM support, to improve performance on server/computational loads.
  • Continuations/Co-routine framework Mono.Tasklets (background info)
  • LINQ to SQL using DbLinq.
  • New Soft Debugger, integrated with MonoDevelop on Unix and OSX (background).
  • System.IO.Packaging.
  • csharp shell now supports auto-completion (press tab to complete)
  • xbuild can now build most msbuild projects.
  • Mono debuts a verifier and security sandbox (used by Moonlight).
  • More complete 3.5 API coverage.
  • This release includes Microsoft's open sourced ASP.NET MVC, ASP.NET AJAX and Microsoft's Dynamic Language Runtime.
  • Faster and slimmer.

MonoDevelop 2.2 highlights (screenshots here and here):

  • MonoDevelop code is now LGPLv2 and MIT X11 licensed. We have removed all of the GPL code, allowing addins to use Apache, MS-PL code as well as allowing proprietary add-ins to be used with MonoDevelop (like RemObject's Oxygene).
  • User interface improvements: the first thing that MonoDevelop users will notice is that we have upgraded the UI to fit modern ideas. We borrowed ideas from Chrome, Firefox, Visual Studio, Eclipse and XCode.
  • ASP.NET MVC support, you can now develop, debug and build ASP.NET MVC applications from MonoDevelop.
  • New T4 Macro processor (Text Template Transformation Toolkit) integrated directly into the IDE (Mono's T4 is also available as a reusable library for use and abuse in your own programs).
  • Moonlight Project Support: you can now build, debug and run Moonlight applications using MonoDevelop.
  • New MacOS and Windows support. Check our feature matrix for details.
  • New Debugger support allows debugging Console, Gtk#, ASP.NET, iPhone and Moonlight applications.
  • Extensive text editor improvements:
    • Dynamic abbrev (Just like Emacs' Alt-/)
    • Code generator (Alt-Insert)
    • Acronym matching
    • Code templates
    • Block selection
    • C# Formatter
  • New refactoring commands:
    • Inline Rename (see screenshot).
    • Resolve Namespace
    • Rename Refactoring with Preview
    • Extract Method
    • Declare Local Variable
    • Integrate Temporary Variable
    • Introduce Constant
    • Move Type to Own File
    • Remove Unused Usings
    • Sort Usings
    • Create/Remove Backing Store
    • Keybindable Commands
  • Python add-in has graduated to be a supported plugin, includes code completion, syntax checking, method and class locator and code folding.
  • iPhone development plugin.

Male Jitsu Trainer of the Year 2009 

Monday, December 07, 2009 5:44:21 AM

My son tonight was awarded 'Male Jitsu Trainer of the Year 2009'.

Well done... An excellent result on your way to becoming a Black Belt.

Whincup is the 2009 V8 Supercar Champion 

Monday, December 07, 2009 5:41:59 AM

Jamie Whincup is the 2009 V8 Supercar Champion for the 2nd year in a row.

His team mate Craig Lowndes finished 4th in the championship.

Congratulations to Jamie, Craig and Team Vodafone.

Well done.

 

Sydney Telstra 500 

Thursday, December 03, 2009 6:55:35 AM

At least 150,000 are expected to turn out over three days for the inaugural Sydney Telstra 500, where Jamie Whincup is almost certain to be crowned champion.

Qualifying starts Friday with races on Saturday and Sunday.

GO Team Vodafone...

Page 1 of 5 1 2 3 4 5 > >> 
Copyright 2008 CastleSoft

Site Map | Printable View | © 2008 - 2010 CastleSoft