Click here to Skip to main content
15,881,882 members

Dominic Burford - Professional Profile



Summary

Follow on Twitter LinkedIn      Blog RSS
6,554
Author
2,053
Authority
9,852
Debator
8
Editor
100
Enquirer
212
Organiser
2,954
Participant
I am a professional software engineer and technical architect with over twenty years commercial development experience with a strong focus on the design and development of web and mobile applications.

I have experience of architecting scalable, distributed, high volume web applications that are accessible from multiple devices due to their responsive web design, including architecting enterprise service-oriented solutions. I have also developed enterprise mobile applications using Xamarin and Telerik Platform.

I have extensive experience using .NET, ASP.NET, Windows and Web Services, WCF, SQL Server, LINQ and other Microsoft technologies. I am also familiar with HTML, Bootstrap, Javascript (inc. JQuery and Node.js), CSS, XML, JSON, Apache Cordova, KendoUI and many other web and mobile related technologies.

I am enthusiastic about Continuous Integration, Continuous Delivery and Application Life-cycle Management having configured such environments using CruiseControl.NET, TeamCity and Team Foundation Services. I enjoy working in Agile and Test Driven Development (TDD) environments.

Outside of work I have two beautiful daughters. I am also an avid cyclist who enjoys reading, listening to music and travelling.

 

Reputation

Weekly Data. Recent events may not appear immediately. For information on Reputation please see the FAQ.

Privileges

Members need to achieve at least one of the given member levels in the given reputation categories in order to perform a given action. For example, to store personal files in your account area you will need to achieve Platinum level in either the Author or Authority category. The "If Owner" column means that owners of an item automatically have the privilege. The member types column lists member types who gain the privilege regardless of their reputation level.

ActionAuthorAuthorityDebatorEditorEnquirerOrganiserParticipantIf OwnerMember Types
Have no restrictions on voting frequencysilversilversilversilver
Bypass spam checks when posting contentsilversilversilversilversilversilvergoldSubEditor, Mentor, Protector, Editor
Store personal files in your account areaplatinumplatinumSubEditor, Editor
Have live hyperlinks in your profilebronzebronzebronzebronzebronzebronzesilverSubEditor, Protector, Editor
Have the ability to include a biography in your profilebronzebronzebronzebronzebronzebronzesilverSubEditor, Protector, Editor
Edit a Question in Q&AsilversilversilversilverYesSubEditor, Protector, Editor
Edit an Answer in Q&AsilversilversilversilverYesSubEditor, Protector, Editor
Delete a Question in Q&AYesSubEditor, Protector, Editor
Delete an Answer in Q&AYesSubEditor, Protector, Editor
Report an ArticlesilversilversilversilverSubEditor, Mentor, Protector, Editor
Approve/Disapprove a pending ArticlegoldgoldgoldgoldSubEditor, Mentor, Protector, Editor
Edit other members' articlesSubEditor, Protector, Editor
Create an article without requiring moderationplatinumSubEditor, Mentor, Protector, Editor
Approve/Disapprove a pending QuestionProtector
Approve/Disapprove a pending AnswerProtector
Report a forum messagesilversilverbronzeProtector, Editor
Approve/Disapprove a pending Forum MessageProtector
Have the ability to send direct emails to members in the forumsProtector
Create a new tagsilversilversilversilver
Modify a tagsilversilversilversilver

Actions with a green tick can be performed by this member.


 
GeneralLearning Node.JS Pin
Dominic Burford19-Apr-15 18:43
professionalDominic Burford19-Apr-15 18:43 
GeneralThe 2015 Stack Overflow Developer Survey Pin
Dominic Burford16-Apr-15 18:23
professionalDominic Burford16-Apr-15 18:23 
GeneralJavascript is the language of the web Pin
Dominic Burford15-Apr-15 18:35
professionalDominic Burford15-Apr-15 18:35 
GeneralDomain Driven Design Pin
Dominic Burford14-Apr-15 2:44
professionalDominic Burford14-Apr-15 2:44 
GeneralBankrupt Development Pin
Dominic Burford12-Apr-15 19:37
professionalDominic Burford12-Apr-15 19:37 
GeneralExecution in the Kingdom of Nouns Pin
Dominic Burford10-Apr-15 1:22
professionalDominic Burford10-Apr-15 1:22 
GeneralLanguage vs Framework Pin
Dominic Burford9-Apr-15 2:18
professionalDominic Burford9-Apr-15 2:18 
GeneralDo we really need asynchronous programming? I don't think so. Pin
Dominic Burford18-Mar-15 22:20
professionalDominic Burford18-Mar-15 22:20 
Came across this interesting article by the .NET Junkie and found it very interesting.

I would like to remove the entire async programming model. Asynchronous methods tend to spread through your application like a virus and make both programming and debugging your application much harder. Yes, this asynchronous programming has become much easier than it used to be, but it is still harder than synchronous programming and it will probably stay harder until the .NET runtime has been re-written from the ground up to support such a programming model.

I know this is against popular opinion, but there is hardly ever a reason to pollute your entire code base with this asynchronous programming model. One of the main reasons for Microsoft pushing this programming model really hard is because it is more efficient when running in the cloud. This makes sense, because in Azure, you pay per CPU cycle and per the number of machines you need. But on the other hand, asynchronous programming costs way more developer cycles, and because developers are quite expensive, it is quite unlikely that your savings on the Azure bills will actually compensate the extra developer costs. But obviously, you will have to do the sums yourself.

Don't get me wrong, of course we want - and need - responsive UIs so we might need a few async/await calls inside your Window, Page or View Model classes in our presentation layer built with WPF, Silverlight, Win Forms or some other client technology. You can still do this, even though your whole code base below is synchronous, with synchonous calls to the database, web services and the file system. When doing that, you will still be able to make your UI responsive, but the only difference is that you'll have a background thread sleeping most of the time, instead of using I/O completion ports. But I've never ever worked on an application where having this single extra background thread was a problem. Even for Windows Phone applications this is a non-issue.

Asynchronous programming may be the new shiny thing in the .NET world, and with some training and experience, we can become quite effective as developers in applying it, but even then it is more painful than synchronous progamming (which is hard enough by itself), and instead of spending money on training developers on how to do async, I would rather spend this money in training them to learn the SOLID design principles, Test Driven Development, Functional Programming or writing clean code. There are so many other skills that are probably more important and more effective in writing good software, that I would rather spend my money on that first.
"There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult." - C.A.R. Hoare

Home | LinkedIn | Google+ | Twitter

GeneralHelp Vampires Pin
Dominic Burford17-Mar-15 21:44
professionalDominic Burford17-Mar-15 21:44 
GeneralThoughts on what makes a great software developer. Pin
Dominic Burford11-Nov-14 23:09
professionalDominic Burford11-Nov-14 23:09 
GeneralDefinition of a programmer Pin
Dominic Burford10-Nov-14 22:42
professionalDominic Burford10-Nov-14 22:42 
GeneralPet peeve - poor marking Pin
Dominic Burford5-Nov-14 0:01
professionalDominic Burford5-Nov-14 0:01 
GeneralPet peeve - developers who want to be spoon fed the answer Pin
Dominic Burford22-Oct-14 21:07
professionalDominic Burford22-Oct-14 21:07 
GeneralPet peeve - using the var keyword Pin
Dominic Burford21-Oct-14 0:28
professionalDominic Burford21-Oct-14 0:28 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.