DDD Belfast Registration Now Open

Site is fixed and registration is now open :)
http://developerdeveloperdeveloper.com/dddie11/Register.aspx

DeveloperDeveloperDeveloper Belfast 2011 Schedule

Well the waiting is over and I can announce the schedule for DDD Belfast happening on 1st October in the University of Ulster’s Belfast campus.

Schedule as follows:

Time Track 1 Track 2 Track 3
8:30-9:00 Registration Registration Registration
9:00-9:30 Housekeeping Housekeeping Housekeeping
9:30-10:30 Taking REST beyond the pretty URL

Jacob Reimers

Code Contracts – Design by Contract for Mainstream .NET

Ashic Mahtab

refORM – Death to ORMs in .NET

James Hughes

10:30-10:45 Break Break Break
10:45-11:45 Internationalizing ASP.NET MVC 3

Guy Smith-Ferrier

HTML5 for developers

Mark Allan

Behavioural Driven Development (BDD) with F#

Phillip Trelford

11:45-12:00 Break Break Break
12:00-1:00 CoffeeScript The Awesome

James Hughes

Parallelisation: Doing stuff at the same time in .NET 4.0

Colin Mackay

Asynchronous programming with F# and C#

Tomas Petricek

1:00-2:30 Lunch Lunch Lunch
2:30-3:30 CQRS – Bringing Elegance to “Normal” Applications

Ashic Mahtab

Aha! Unit Testing  Richard Dalton Defensive Programming 101

Niall Merrigan

3:30-3:45 Break Break Break
3:45-4:45 (clojure (you get used to the parenthesis (eventually)))

Rob Lally

TBC Developing F# Mobile Applications with WebSharper

Adam Granicz

4:45-5:00 Finish and Prizes Finish and Prizes Finish and Prizes

Registration opening really soon

Twitter hash: #dddBelfast

SQL Server: Find tables containing column name

To find all the user tables that contain a particular column name run the following command on the relevant database:

SELECT name FROM sysobjects WHERE xtype='U' and id IN( SELECT id FROM syscolumns
WHERE name like '%COLUMN NAME%' )

Gateway Quiz- The Results

The quiz went incredibly well on Tuesday night and we raised a grand total of £430.

I’ll admit to being pretty nervous before the start as it was a pretty miserable night as well as Belfast’s Christmas tree light switch on. I needn’t have worried though as around 60-70 people showed up to give their support and we had a great night together.

Once again I want to call out the generosity of the local businesses who donated to our ballot especially at their busiest time of year and to Carrick Sailing Club who hosted the event for us.

Doing anything on Tuesday (24th November) night?

My youth club Carrickfergus Junior Gateway is holding a fund-raising pub quiz at Carrick Sailing Club on Tuesday 24th November. All are welcome to attend and ticket prices are £3 each with maximum team sizes of 5 people. The quiz starts at 8pm and I would love to see you there.

In other youth club related news we currently have places available for membership to the club. More details can be found on the site or by contacting me directly.

Developer Workshop: MVC and Visual Studio 2010

I had the pleasure of attending a workshop by Scott Guthrie this week where he discussed the MVC (Model, View, Controller) design pattern within asp.net and the new additions to the .net framework coming with the release of C# 4.0 and Visual Studio 2010.

The first session on MVC raced by and before anyone in the audience had noticed two hours had passed by. The content was aimed at people who had never seen the MVC pattern before and brought us from a brief definition through to creating a full website. One of the highlights of this pattern for me was the ability to fully control the html output of the site as well as applying validation to the Model layer of the site and having that carry through to all aspects of the application including client side validation.

The second session focused on the soon to be released .net 4.0 framework and Visual Studio 2010. There are a lot of really interesting features being released not least the inclusion of jquery and a lot of editor improvements. An audible gasp went up from the audience when Scott demoed a new multiline selection and editing feature.

Overall it was a fantastic workshop to hear of new approaches to application development and something that I believe we will hear a lot more of..

The two sessions were videoed and I believe will be available from the Channel 9 website soon. In the meantime here’s videos from the Netherlands branch of the tour:

http://channel9.msdn.com/posts/matthijs/Scott-Guthrie-ASPNET-MVC-2/

http://channel9.msdn.com/posts/matthijs/Scott-Guthrie-Visual-Studio-2010-and-NET-Framework-40/

K2 Blackpearl: Goto Activity

When Goto doesn’t go when you want it to

When working with server side events I have found it common to reroute the workflow to a different activity within the workflow. Perhaps a user has decided to end the workflow and I want to send them to an End Workflow activity first. I would normally use the following code to do this:

K2.GotoActivity("NameOfActivity"); 

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }However to my surprise instead of the workflow moving to straight to that activity what actually happens is that the pointer linking the end of the current activity to the next changes to point to the activity entered in the GotoActivity code above. This means that if you have additional server events and potentially client events within the activity listed below the code containing the Goto they will still be processed leading to all sorts of errors further down the line.

The solution for me was to set a flag once the Goto had been called to skip out any further code execution. Messy but safer than allowing the code to execute. One to watch out for in your own code.

Our Deepest Fear

Our deepest fear is not that we are inadequate.
Our deepest fear is that we are powerful beyond measure.

It is our light, not our darkness, that most frightens us.
We ask ourselves, Who am I to be brilliant,
gorgeous, handsome, talented and fabulous?

Actually, who are you not to be?
You are a child of God.

Your playing small does not serve the world.
There is nothing enlightened about shrinking
so that other people won’t feel insecure around you.
We are all meant to shine, as children do.

We were born to make manifest the glory of God within us.
It is not just in some; it is in everyone.

And, as we let our own light shine, we consciously give
other people permission to do the same.
As we are liberated from our fear,
our presence automatically liberates others.

http://www.squidoo.com/our_deepest_fear

K2 Mail Event Hyperlinks

I had a situation where I needed to email a user from within the workflow process using a mail event with a dynamically built url generated from a stringtable entry detailing the start of a url and a datafield value containing a reference id in the email body. I found that no matter what way I concatenated the two values together or added href anchor tags to the body of the email, the email would be received showing the link but without it formatting itself as a hyperlink.

The resolution to this was to concatenate the values together along with the html tags in a server side code event and store this value in a datafield before the mail event item was reached.

The code ended up being:

K2.ProcessInstance.DataFields["Hyperlink"].Value =
string.Format("<a href="{0}{1}">{0}{1}</a>", K2.StringTable["UrlString"],
 K2.ProcessInstance.DataFields["Identifier"].Value);

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

Hope this helps someone else out there.

Moo Cards

After seeing Andrea’s mini Moo cards at DeveloperDeveloperDeveloper the other week I decided that I needed to get some personal business cards done up and went for Moo’s mini card range.

The idea behind them is that you can have up to six lines of text for your personal details and choose various pictures for the card backs either from a range created by various designers or from a photostream on Flickr. I must admit I had great fun in selecting and cropping various pictures to use on my own cards.

For the personal details side I finally decided on including my name, phone number, email, website and twitter address. Most of the people that I will ever hand them out to will be online and if they ever need my postal address they can easily request it. Twitter name was an interesting one for me to include as I’ve only been using the service for a few months but has already become a keystone in my communications so it was a must to include.

The cards arrived this morning and I’m completely delighted with them. The card quality and print clarity is incredible and I’m really glad that I went with them. They’re already causing a stir to everyone that sees them and lots of people on twitter are already asking to see pictures, and no I haven’t been paid to write this post- just one happy customer.

 

Moo Cards

Follow

Get every new post delivered to your Inbox.