Tag | Design Posts

One of the best ways for developers to learn from each other is "brown bag meetings", where they bring their lunch to a conference room and share tips & tricks. That's something I've always wanted to do, but there aren't a lot of others at my organization who are interested in doing that. I've been lurking at "Virtual Brown Bag" meetings organized by Claudio Lassala the last couple of months, and have enjoyed them a lot. They're held every Thursday from noon until 1PM U.S Central time via LiveMeeting. ...
I recently got the opportunity to teach a 3 day course on the subject of "Principles, Patterns and Practices in .net". I must say it was a fun and enriching experience. I have never taught a course before, so I decided to go off the beaten path and do a little experiment in format. No need to copy existing formats that can be found everywhere else in Belgium. Format I took the excellent Head First Design Patterns as a guide to run through each pattern in the same way: - show an existing implementation ...
I have moved this project from CodePlex to GitHub at https://github.com/danemorg... I have a posted a project on Codeplex at http://efrepository.codeple... It is a T4 template to give you a data layer that follows Repository and Unit of Work patterns that is also ready for Dependency Injection (DI). DI frameworks allow you to build code that is more testable and allows for a greater separation of concerns (SoC). This is not the only use for them, but it is a big one and what they are ...
It has been 4 years since we ran our original Geekswithblogs.net Game Development Contest! Wow does time go by fast. George Clingerman wrote a game called Bob the Fish that shocked the world (well our world) getting him the prized Xbox 360 and later allowing us to play his Xbox game, Kissy Poo. That contest was a huge success and several of our most popular bloggers gained their readership from that event. So a long enough time has passed and enough has changed in the way we develop software now ...
OK, Lots of confusion around this pattern. I am also trying to wrap my head around this pattern and wanted to present what I have learned so far as well as my favorite links on the subject. I’m also working on a sample program that is from start-to-finish. Model View ViewModel is usually called: MVVM PresentationModel or just the plain ViewModel It is just an architectural pattern for Silverlight of WPF. It is designed to allow Designers to focus on the user experience instead of the business logic. ...
Some time ago, I found myself in the difficult situation of trying to explain why business logic shouldn't be placed in the database, but instead in the code (preferably in a Business Logic layer or Object Model layer). The situation seemed so clear to me. It was striking how differently others in the team saw it. You may find yourself in a situation similar to this one, where you are working on a database that contains *many* business rules. Perhaps it started out as a set of tables that very closely ...
Something that I had the privilege to review has been released. Willy-Peter Schaub goes into great detail about the release, along with links and summaries of all the other great VS ALM Rangers content. http://blogs.msdn.com/b/wil... http://vsarchitectureguide.... Visual Studio 2010 Architecture Tooling Guidance Practical guidance for Visual Studio 2010 Ultimate, focused on modelling ...
We software engineers and architects sometimes feel like the rope in a tug-of-war. Pulling from one side is the short-term goal of delivering functionality, preferably yesterday. Indeed, our customers cannot justify paying for our services unless we deliver a working product, better and faster than our competitors. Pulling from the other side, however, is the long-term goal of quality. If our code becomes too disorganized or hard to understand, we cannot long remain in business, because we will no ...
Videos of presentations from NDC 2010 are now available at: http://streaming.ndc2010.no... It looks like there are about 48 available. I'm particularly looking forward to: Mads Torgersen: "C# Quo Vadis?" (followed by a discussion on the future of C# with Mads, Eric Lippert, Gafter and Jon Skeet) Roy Osherove: "Beautiful Teams & Leaders" Greg Young: "5 reasons why projects using DDD fail" Jon Skeet: "If I Ruled the World - C# 5.0 According to Jon" Eric Evans: "What I've learned About DDD Since ...
Many times in the Career advice section at http://www.dotnetfunda.com/... we are asked this question What are the essential skills for a web developer? Rather than posting/reposting time and again, thought of writing a post about it. This post details what according to me and some of the well established people I know think about essential skills that a web developer should posses. You can find similar entry at Essential Skills for Web Developer in 2010 HTTP/TCP protocol from a very high overview ...
I did a recent post on implementing WPF with F#. Today I would like to expand on this posting to give a simple implementation of the MVVM pattern in F#. A good read about this topic can also be found on Dean Chalk’s blog although my example of the pattern is possibly simpler. With the MVVM pattern one typically has 3 segments, the view, viewmodel and model. With the beauty of WPF binding one is able to link the state based viewmodel to the view. In my implementation I have kept the same principles. ...
It has been another fantastic year for TechEd North America. I always love my time here. First, I have to give a huge thank you to Ineta for giving me the opportunity to work the Ineta booth and BOF’s (birds of a feather). I can not even begin to list how many fantastic leaders in the .Net space and Developers from all over I have met through Ineta at this event. It has been truly amazing and great fun!! New Orlean’s has been awesome. The night life is hoppin’. In addition to enjoying a few (too ...
Finally after weeks of hard work the World Cup Silverlight player is ready to watch the spanish team in action. This Silverlight Player use Smooth Streaming technology, enables adaptive streaming of media to Silverlight and other clients over HTTP. Smooth Streaming provides a high-quality viewing experience that scales massively on content distribution networks, making true HD 1080p media experiences a reality. The player integrates leading social networks such as Microsoft Live Messenger, Twitter ...
The saga of the Change Log A recent conversation reminded me of the need for change logs within a database, to record when various change scripts were run. Creating such the required table is simple. A typical table for this consists of: Id - identity Integer primary key ChangeFileName - NVARCHAR(128) to hold the name of the file run. DateAdded - DateTime non-null with default value of getutcdate() Purpose - NVARCHAR(128) Rerunnable - Bit non-null default 0. By good design of the table only two data ...
Last Wednesday I was fortunate to be invited to a sneak preview of the next generation Three MiFi unit, the Huawei E585. Many thanks to all those who posted questions both via this blog or via @westleyl on Twitter. I think I made sure I asked every question posed to the MiFi product manager from Three UK, and so here's the answers you were after. What is a MiFi? For those who are wondering, a MiFi unit is a 3G broadband modem combined with a WiFi access point, providing 3G broadband data access to ...
OK. I admit it. The last post I hade mentioned that we moved the XAF DSL to the Entity Framework. This has caused a lot of confusion. I meant to say that we have used the ADO.NET Entity Data Model extensions. This is the design surface that can be tailored to create Entity Framework. We leveraged the code generation within the ADO.NET Entity Data Model (EDMX) file to generate XAF/XPO classes. This allows you to visually create the entity model, set a few XAF properties and then generate the business ...
I ran across a blog entry with a consolidated list of links to the SharePoint 2007 planning worksheets. These are good starting points for your discovery, analysis, and design and are provided by Microsoft. I would suggest tweaking them to meet your organizational needs. http://itfootprint.wordpres... TechNet provides a consolidated list of planning worksheets for SharePoint 2010. http://technet.microsoft.co... Technorati ...
One of the great sessions I sat in on at Tech Ed this week was stretching a Windows 2008 R2 Hyper-V Failover Cluster across sites. With this ability, you could actually implement a Hyper-V cluster where you could migrate or even Live Migrate VMs across sites. With this area’s propensity for Hurricanes, this will be a very popular topic for me over the next few months. While this technology is possible today, it’s also very complicated and can be very expensive to implement. First your WAN connection ...
FredNUG is pleased to announce our June speaker will be Pete Brown. Pete was one of FredNUG’s first speakers when the group started and we’re very happy to have him visiting us again to present on Silverlight! On June 15th @ 6:30 PM, we’ll start with a Visual Studio 2010 Launch with pizza, swag and a presentation about what makes Visual Studio 2010 great. Then, starting at 7 PM, Pete Brown will present “What’s New in Silverlight 4.” It looks like an evening filled with newness! The scheduled agenda ...
I have enjoyed my time on this project and have used it in several production projects. However, with the enhancements in Visual Studio 2010 and the Entity Framework, the DSL tool doesn’t make sense for me to support at this time. With that said, I am looking for someone who has interest to continue the project if they so desire. I have moved my attention to creating a new project at Entity Framework Extensions for XAF. We are converting the current DSL tool into the Entity Framework extensions. ...
I’ve had a lot of discussions at the office lately about the drastically different sets of software engineering practices used on our various projects, if what we are doing is appropriate, and what factors should you be considering when determining what practices are most appropriate in a given context. I wanted to write up my thoughts in a little more detail on this subject, so here we go: If you compare any two software projects (specifically comparing their codebases) you’ll often see very different ...
More Adventures in MVVM In this post, I am going to explore how I prefer to attach ViewModels to my Views. I have published the code to my ViewModelSupport project on CodePlex in case you'd like to see how it works along with some examples. Some History My approach to View-First ViewModel creation has evolved over time. I have constructed ViewModels in code-behind. I have instantiated ViewModels in the resources sectoin of the view. I have used Prism to resolve ViewModels via Dependency Injection. ...
Next week marks the first full week of June. Summer will feel in full swing and it will be a pretty big season for technology. In seeming acknowledgement of that very fact, both Apple and Microsoft will be holding large developers conferences starting Monday. Apple will hold its annual Worldwide Developers Conference (WWDC) in lovely San Francisco and Microsoft will hold its Tech Ed conference in muggy, oil-laden yet soulful New Orleans. A brief survey of each show reveals much about the differences ...
After finishing Game-a-Week One I immediately wanted to go back and begin refactoring the code although I also wanted to work on a game demo idea I've had for quite awhile. I tried doing both over the holiday weekend while up north (without internet!) and eventually hit a wall with an error. Today I am going to restart my refactoring and updates by starting Game-a-Week 2. This challenge is to do the following: Refactor the old code Add a handful of new features to the demo This sounds simple enough ...
Despite what execs at Microsoft think, Windows 7 is NOT a tablet OS. Just because you can install some software (or OS) on a device, doesn't mean that device is meant to run that software. This seems to be the step that the non-engineer execs at Microsoft have seem to not understood. In order to seamlessly work with a device, the software needs to be designed with that device in mind. That has been the problem with the Windows PDA platform, the Windows Mobil platform, and now with trying to force ...
The .NET Framework version 4 includes enhancements for ASP.NET 4 in targeted areas. Visual Studio 2010 and Microsoft Visual Web Developer Express also include enhancements and new features for improved Web development. This document provides an overview of many of the new features that are included in the upcoming release. This topic contains the following sections: ASP.NET Core Services ASP.NET Web Forms ASP.NET MVC Dynamic Data ASP.NET Chart Control Visual Web Developer Enhancements Web Application ...
When working with ADO.NET Entity Data Model, its often common that we generate entity schema for more than a single table from our Database. With Entity Model generation automated by Visual Studio, it becomes even more tempting to create and work with entity models to achieve an object mapping relationship. One of the errors that you might hit while trying to update an entity set either programmatically using context.SaveChanges or while using the automatic insert/update code generated by GridView ...
A few (6?) weeks ago, I started a project that I've always wanted to do. I am doing a re-write of the old VB6 game DopeWars with a partner in crime. I loved that game and spent many, many hours wasting time playing it years ago. I liked it so much, I even registered it (it was $5...even then, that wasn't much to spend). The VB6 version itself was a port of the old DOS game DrugWars (never go to play that). I needed a game project to work on as it's been far too long since I've done any game work. ...
In Chapter 10 of the book on SQL Azure (http://www.apress.com/book... I am co-authoring, I am digging deeper in what it takes to write a Shard. It's actually a pretty cool exercise, and I wanted to share some thoughts on how I am designing the technology. A Shard is a technology that spreads the load of database requests over multiple databases, as transparently as possible. The type of shard I am building is called a Vertical Partition Shard (VPS). A VPS is a mechanism by which ...
Through the next few weeks or months I'd like to run a small series of articles sharing my experiences from the largest of the project I've worked on and explore some of the real-world problems I've come across and how we went about solving them. I'm afraid I can't give too many specifics on the project right now as it's not yet complete so you'll have to forgive me for being a little abstract in places! To start with I'm going to run through a little of the background of the problem and the motivations ...
I had a really fun evening doing “my final” EF 4.0 session last night (26th May 2010) at GL.NET based out of Gloucester (although secretly I made it into a IronRuby and Windows Azure session). They are a great crowd and Jimmy makes for a fantastic host + it is a very nice venue (Symantec offices in Gloucester, lots of parking, good room etc) + free pizza + free SWAG + trip to pub afterwards (the topics were very varied!). What more could you ask for? The next session is June 16th and will be on multi-tenanted ...
Today's little problem is that I am trying to load user controls from my codebehind like so: Dim myControl As UserControl = LoadControl("~\Modules\Cont... Controls.Add(myControl) On running the page myControl is no where to be seen. I wonder why that is? Well after a bit of thought the following come to mind... Am I using the correct code to insert the usercontrol? Is there an alternative available? Does the fact that the usercontrol has a page_load event make a difference? Does the fact that ...
Last year, I wrote Steve Ballmer an email, and he was kind enough to write me back. The email contained a scan of a column I wrote praising Microsoft’s BI strategy. His reply contained three simple words: “Super nice thanks.” Well, now I’d like to write to Steve again, in an open letter format, and this time the love may be a bit tougher. But I’m still super earnest. The past two days have been eventful ones for Microsoft: The company announced the departure of company veterans Robbie Bach and J ...
Recently I have been delivering Design and Planning Sessions at client sites, and as of recent SharePoint 2010 has been part of that mix. After the activity that goes on during those sessions getting towards the end of them is always a cross roads for clients. Why? Because it is time to kick the wheels. Remind them, and remember, this is not a 1 or 4 weeks ordeal. This has to be very well planned. If I am looking for information that is worth while and a great conversation starter, my landing point ...
Looks and design is becoming more and more important for customers and organizations event when we deal with internal enterprise applications. However, many web developers who work on business apps end up not investing resources on the design. The reason may be that they ran out of time so with their client's pressure there was no choice but to skip past the design process. In some cases, especially in sall software houses, there are no trained professional designers and the developers have to do ...
A few weeks ago I did the following post asking people – if they used foreign key constraints in their star schemas. The poll is still open if you are interested in adding to it, but here is what the chart looks like as of today. (at the bottom of the poll itself there is a link to the live results, unfortunately I cannot link the live results in here as the blogging platform blocks the required javascript) Interestingly the results are fairly even. Of the 78 respondents, fractionally over half at ...
Are you a C# Programmer and can’t make it past a day without seeing or hearing someone mention F#? Today, I’m going to walk you through your first F# application and give you a brief introduction to the language. Sit back this will only take about 20 minutes. Introduction Microsoft's F# programming language is a functional language for the .NET framework that was originally developed at Microsoft Research Cambridge by Don Syme. In October 2007, the senior vice president of the developer division ...
In this Issue: Michael Washington, Xianzhong Zhu, Jim Lynn, Laurent Bugnion, and Kyle McClellan. A ton of Shoutouts this time: Cigdem Patlak (CrocusGirl) is interviewed about Silverlight 4 on Channel 9: Silverlight discussion with Cigdem Patlak Timmy Kokke has material up from a presentation he did, and check out the SilverAmp project he's got going: Code & Slides – SDE – What’s new in Silverlight 4 Graham Odds at ScottLogic has an interesting post up: Contextual cues in user interface design ...
If like me, you have to turn your hand to design every now and then, you might find some of these useful: Fonts Free for commercial use fonts. http://www.fontsquirrel.com/ More free fonts http://www.1001freefonts.com Colours A very cool flash based colour picker. http://kuler.adobe.com/#cre... Another colour scheme design – all HTML this time… http://colorschemedesigner.... Icons A library of icons with various licences. http://www.iconlet.com/ Another library http://www.iconfinder.com ...
Its been long due I was planning to write an article on creating some useful ASP.NET MVC application. I have code named it "DailyJournal". Its a simple application which allows creation of multiple activities and assign tasks to these activities. Its' kind of "Yet another Task/Todo application". The credentials which you can use with the attached demo application is shown below. Collapse Copy Code User Name : admin Password : admin123 Framework/Libraries Used ASP.NET MVC jQuery + jQuery UI (for ajax ...
In this post I'd like to talk about an architecture scenario we had recently and how we were able to utilise NServiceBus to help us address this problem. Scenario Cognos is a reporting system used by one of my clients. A while back we developed a web service façade to allow line of business applications to be able to access reports from Cognos to support their various functions. The service was intended to provide access to reports which were quick running reports or pre-generated reports which could ...
The competition between the Web and proprietary rich platforms, including Windows, Mac OS, iPhone/iPad, Adobe’s Flash/AIR and Microsoft’s Silverlight, is not new. But with the emergence of HTML 5 and imminent support for it in the next release of the major Web browsers, the battle is heating up. And with the announcements made Wednesday at Google's I/O conference, it's getting kicked up yet another notch. The impact of this platform battle on companies in the media and advertising world, and the ...
Going back to my old c++ days at university where we had all our code littered with preprocessor directives - I thought it made the code ugly and could never understand why it was useful. Today though I found a use in my C# application. The scenario – I had made various security levels in my application and tied my XAML to the levels by set by static accessors in code. An example of my XAML code for a Combobox to be enabled would be as follows… <ComboBox IsEnabled="{x:Static security:Security.SecurityC... ...
So, here's my new blog up and running, who am I and what am I planning to write here?First off - here's a little about me:I'm a recent graduate from university (coming up to a year ago since I finished) studying Software Engineering on a four year course where the third year was an industrial placement. During the industrial placement I went to work for a company called Adfero in a "Technical Consultant" role as well as a junior "Information Systems Developer". Once I completed my placement I went ...
Twitter moves fast, and if you don’t stay on top of it, you can miss a lot. I don’t follow a ton of people, but I combine it with topic searches. Here are a few things I’ve found that are worth your time and attention, especially if you’re into video games… development or playing: The 15 Greatest Sci-Fi/Horror Games for the Commodore 64 - http://moe.vg/bovATG (via @jlist) Practical Tactics for Dealing with Haters! - http://www.fourhourworkweek... ...
I've attended DDD Melbourne and want to list the interesting points, that I've learned and want to follow. To read more: * Moles-Mocking Isolation framework for .NET. Documentation is here. (See also Mocking frameworks comparison created October 4, 2009 ) * WebFormsMVP * PluralSight http://www.pluralsight-trai... * ELMAH: Error Logging Modules and Handlers Great for new sites or sites without error logging/monitoring. However if you site already have working error ...
Great Websites for everyday tips and tricks http://www.lifehack.org/ - Tips & Tricks to hack your life. http://www.lifehacker.com/ - Great tips and tricks for life and computers http://www.nirmaltv.com/ - Good blog by a Windows MVP concentrating on Windows tips & tricks. http://www.neowin.net/ - Good blog that summarizes the tech world happenings. http://techcrunch.com/ - Blog concentrating on the internal happenings for big companies Inspirational Stuff http://sourcesofinsight.com/ - Insipration ...
Scanning my Twitter feed almost always proves to be fruitful when looking for cool/interesting links to share. Here are a few of the highlights: I read this blog post from Justin Angel today, pretty interesting stuff: Windows Phone 7 – Unlocked ROMs Looks like there’s a lot of good stuff floating just under the surface in the latest build of the WP7 Emulator. (Courtesy of @JustinAngel) Next up is this video titled Game Design Tutorials: From Seconds to Hours of Gameplay. If you’re into Indie Game ...
In a previous post, I outlined the rules of Scrum. This post details one of those rules. Picking a most important part of Scrum is difficult. All of the rules are required, but if there were one rule that is “more” required that every other rule, its having a good Product Owner. Simply put, the Product Owner can make or break the project. Duties of the Product Owner A Product Owner has many duties and responsibilities. I’ll talk about each of these duties in detail below. A Product Owner: Discovers ...
Last week (12th May 2010) I did a session in the city on lot of the new .NET 4.0 Stuff. My demo code and links below. Code Parallel demos http://gist.github.com/364522 C# 4.0 new features http://gist.github.com/403826 EF4 Links Entity Framework 4 Resources http://bit.ly/ef4resources Entity Framework Team Blog http://blogs.msdn.com/adonet Entity Framework Design Blog http://blogs.msdn.com/efdes... Parallel Links Parallel Computing Dev Center http://msdn.com/concurrency Code samples http://code.msdn.microsoft.... ...