Liverpool .Net User Group
The Liverpool .Net User Group is officially formed! Join fellow .Net enthusiasts in the Liverpool area for discussions on all things .Net. Visit our website at http://www.usersof.net/ or join our Google group at http://groups.google.co.uk/group/liverpoolusersofdotnet to connect with other members and stay updated on upcoming meetings. The next meeting is scheduled for April 17th, 2008 - http://upcoming.yahoo.com/event/454169/. We encourage everyone interested in .Net to join us! Read More
I lead the Chrome Developer Relations team at Google.
We want people to have the best experience possible on the web without having to install a native app or produce content in a walled garden.
Our team tries to make it easier for developers to build on the web by supporting every Chrome release, creating great content to support developers on web.dev, contributing to MDN, helping to improve browser compatibility, and some of the best developer tools like Lighthouse, Workbox, Squoosh to name just a few.
I love to learn about what you are building, and how I can help with Chrome or Web development in general, so if you want to chat with me directly, please feel free to book a consultation.
I'm trialing a newsletter, you can subscribe below (thank you!)
I've joined Twitter! Follow me @PaulKinlan - http://www.twitter.com/PaulKinlan Read More
Know your Privacy, an Application on Facebook
Concerned about Facebook privacy? I've created a Facebook application called "Know Your Privacy" to help you understand how third-party apps access your profile data. It highlights potential risks and offers common-sense advice. Find it at http://apps.facebook.com/knowyourprivacy/. Your feedback is welcome! Disclaimer: This app is for informational purposes only and doesn't imply any misuse of data by installed apps. It's not professional advice; contact authorities for accurate information. Resources on identity theft are included. Read More
Topicala on Facebook
I've integrated Topicala into Facebook, allowing users to search the internet without leaving the platform. Check out the app at http://apps.facebook.com/topicala/. It's easy to use, requires no personal data, and was a breeze to develop. I'd love to hear your feedback! Read More
IDataRecord Fields to Dictionary Extension Method
This post introduces a C# 3.0 extension method for converting IDataRecord fields into a Dictionary<string, object>. This simplifies access to field data, particularly useful in scenarios like passing data to a Workflow instance. While convenient, it's important to note that direct IDataRecord access offers better performance for frequent data retrieval. Read More
Microformat.net
I've released a new, open-source Microformat parser for .NET, available on Codeplex! This stream-based parser uses a flexible XML configuration to define how microformats like hCard and rel-tag are extracted from HTML/XML, allowing for easy adaptation to spec changes. The provided C# code example demonstrates the simplicity of using the framework to read and process microformat data. Feedback and contributions are welcome! Read More
Review: Microsoft XNA Unleashed. By Chad Carter
My review of "Microsoft XNA Unleashed" by Chad Carter. XNA is Microsoft's game development platform for Windows and Xbox 360. This book provides a great introduction to game development with XNA, covering key concepts like componentization and game components/services. It also touches upon physics and AI. While the book is light on visuals and the AI chapter could be more substantial, it's a good starting point for C# programmers wanting to explore game development using XNA. It's less suited for experienced graphics programmers or those unfamiliar with C#. The release of XNA v2 might make some parts of the book outdated. Read More
Topicala Desktop
Introducing Topicala Desktop, a new application developed in partnership with Rosetta Software Ltd. This handy tool allows users to search Topicala.com directly from any Windows application by simply highlighting text and pressing CTRL+T. It's perfect for anyone who needs quick access to information, like journalists and students. Whether you're reading an email, a legal document in Microsoft Word, or anything else, Topicala Desktop provides instant search results in Internet Explorer. Download and install this free tool today! Read More
Topicala People! and Topicala Popular! BETA
I've launched two new beta features for Topicala: Topicala Popular and Topicala People. Topicala Popular helps you discover trending content online, similar to Digg or Delicious, by tracking site visitors via an embedded image. Topicala People helps you find people online using hCard microformats. You can get your information on Topicala People by wrapping it in hCards and either including the Topicala image or pinging our server. These features will soon integrate directly into Topicala's main search. Try them out and let me know your feedback! Read More
Looking for some people to help test new features of Topicala
I'm developing a Digg-like platform called Topicala to help smaller blogs gain more visibility. I'm looking for beta testers with small blogs to try out the new features. If you're interested, please email me at paul.kinlan@gmail.com or leave a comment on this post. Read More
Resharper Live Template for Default Constructor
This post introduces a ReSharper Live Template to expedite creating default constructors in C#. The template, activated by typing "dc", automatically inserts a public default constructor for the containing class, saving developers keystrokes and time. An example demonstrates its usage. Read More
DevWeek Day 3 Review
DevWeek Day 3 wrapped up my attendance with increasingly advanced sessions. Christian Weyer's talks on SOA development using the Webservice Software Factory (and its limitations) and integrating WPF, WCF, and WF were insightful, showcasing practical applications and upcoming open-source tools. Niels Berglund's LINQ discussion, while informative, left me wanting more technical depth and raised concerns about tight database coupling. Jeff Prosise's WPF/E presentation highlighted its potential for rich web UI but also its current limitations regarding input controls and data binding. The lack of VisualBrush in WPF/E and its similarities with the upcoming Flash 9 release were noteworthy discussion points. Read More
DevWeek Day 2
Day 2 of DevWeek was packed with insightful sessions. Niels Berglund's talk on ADO.NET v.Next and the Entity Framework highlighted the potential for simplifying database interactions by mapping database models to programmer-friendly models. Kelvin Henney's lecture on streamlined object-oriented analysis emphasized the importance of modeling the current system before designing solutions, using UML and Use Cases. Ingo Rammer's presentations on scalability and performance, and Windows Workflow integration, offered practical advice and cleared up some misunderstandings. I also had a chance to visit vendor booths, with Infragistics' XAML components and Dev Express's slick presentations standing out. Overall, the quality of the lectures has been excellent, but the vendor presence could be improved. Read More
Day 1 of the DevWeek Conference
DevWeek Conference Day 1: Jeff Prosise's keynote covered the history of web programming, from CGI to ASP.NET AJAX and WPF/E. While I enjoyed his talk, I would've preferred more focus on the future. The "Attack and Defense" session was disappointing, lacking depth compared to available online resources. David Wheeler's "Practical Patterns" was a highlight, with clear explanations and code examples of design patterns. The vendor presence was smaller than expected. Infragistics showcased promising XAML controls, while TechExcel impressed with their enthusiasm and software demo. Other vendors, like NAG and the Enterprise Architect distributors, could have been more engaging. Read More
DevWeek 2007
Arrived at DevWeek 2007 last night. Looking forward to the keynote by Jeff Prosise on ASP.NET AJAX and then attending architect track sessions on securing ASP.NET 2.0 apps and practical patterns in .NET. Hoping to post summaries if internet access allows. Read More
Resharper 2.0 Plugins
In a previous post, I discussed the scarcity of ReSharper plugins and sample code. I'm happy to announce that JetBrains has launched a new resource page dedicated to ReSharper Plugin Development. This page provides guides and sample code to help you create your own plugins. You'll need ReSharper 2.5 or later, which is a free upgrade for existing users. Read More
Easy HTML Screen Capture in Windows
For a while I have been thinking about how to capture the output of IE into a Bitmap or other image format. The attempts that I have done normally center around hosting an IE control on a WinForm and then render the page inside the control and then capture the output. This however seems to be pretty hairy, I could never get it to work after the initial screen capture. Read More
Technorati Claim Fix, Please Ignore
This blog post is a quick fix for my Technorati claim. Click the link to verify my Technorati profile. Read More
Wii, oh Wii did I cancel my Wii
I initially pre-ordered a Wii from Argos but cancelled it (big mistake!). It's been impossible to find one since launch, and everyone at work has been taunting me. Finally, I managed to snag one from Asda in Aintree, along with a copy of Wii Play. The Wiimote is surprisingly accurate, and while the graphics aren't as impressive as the 360's, the gameplay is fantastic. I can't wait to explore more games, so hit me up with recommendations! Read More
Why I love WSE 3.0
I'm really enjoying working with WSE 3.0, especially its policy mechanism. It allows for Aspect Oriented Programming (AOP) through SoapFilters, enabling me to add functionality like security, auditing, and exception handling via configuration rather than hardcoding it into my web service. This keeps my service code clean and maintainable. I demonstrated this with a simple example of an OrderService, comparing the cleaner policy-based approach to a more complex, hardcoded alternative. The policy configuration significantly simplifies adding and managing cross-cutting concerns. Read More