168 posts categorized under “Productivity”
You Should Blog
Date Published: 26 August 2024
As a software developer, you might spend most of your time immersed in code, solving problems, and building innovative solutions. But have you ever considered starting a blog? If you haven't, let me give you some compelling reasons why you should. This is advice I frequently give to members of my developer group coaching program at devBetter.com. Watch the Video 1. Sharpen Your Skills One of the…
Stop Debugging and Start Running in Visual Studio
Date Published: 18 April 2024
NOTE: Watch the video above to see actual timings of starting with and without debugging. Vote for this feature request to make Run vs Debug more obvious in Visual Studio.. Thanks! I work with a lot of different .NET developers as a trainer, architect, and consultant with NimblePros. One thing that I'm frequently pointing out to them is the difference in startup speed for their applications when…
How to Embed a YouTube Video in GitHub ReadMe Markdown
Date Published: 23 November 2023
I keep wanting to do this and forgetting how, so I'm writing it down. Here's how to embed a YouTube video in a GitHub ReadMe markdown file. Thanks for this Stack Overflow answer for the tip. Step 1: Get the YouTube Video ID The YouTube video ID is the part of the URL after the . For example, in the URL , the video ID is . You'll need that for the next step. Step 2: Embed the Video To embed the…
Chrome Browser Tabs to Links
Date Published: 23 January 2023
It often happens when you're looking for a solution to a problem that you end up with a bunch of browser tabs open. Some were dead ends. Some added necessary clues along the way. All of them have some of the context of the thing you were trying to solve. That context took you time - hours, days even - to put together. And yes, there's a great sense of relief in finally being able to close those…
Solved: Unsupported audio format set the audio output to pulse code modulation PCM
Date Published: 02 August 2022
Solved! My dell monitor had started showing an annoying error every 30 seconds or so saying 'Unsupported audio format. Set the audio output to pulse code modulation PCM'. I solved it with a quick change to my video card settings. I'm sharing this here for future me when this happens again (probably with a new video card or a driver update), but hopefully it helps some of you as well. My monitor is…
Working Effectively with GitHub Issues
Date Published: 22 June 2022
GitHub Issues offer a simpler approach to work item management than many other systems like Jira or Azure DevOps. Despite being lightweight, it can and is used to effectively track and prioritize work on thousands of projects of all sizes. Everything is an Issue In GitHub, every work item is an Issue. Issues can be decorated with tags that indicate whether a particular Issue is a Bug, Question…
Quickly Trimming Video Files
Date Published: 07 June 2022
I do a fair bit of video editing as part of producing content for Pluralsight, clients, and YouTube. Recently I took on the task of editing 48 videos from the Stir Trek 2022 conference, each of which mostly just needed time trimmed from the start and end of the presentation. I tried my usual tools, but then I found a new tool that works much better! TechSmith Camtasia I've been using TechSmith…
Avoid Using Exceptions to Determine API Status Codes and Responses
Date Published: 16 November 2021
It's typical for API endpoints to call application or domain services. In the case of success, the API can simply return Ok and the result of the service call. But for non-success cases, should you use exceptions to communicate from the service to the endpoint, so that it can return an appropriate status code and response? Assuming you read the title of this article, you probably already know the…
Screencast Video Demo Checklist
Date Published: 09 November 2021
Recording a short screencast video can be a very effective way to provide a demo to stakeholders or show how a bug can be reproduced. Follow this checklist to make sure you don't miss something important. In a previous article, I wrote about how to make better, faster demos using screencast videos. Once you've got that all sorted out and have chosen the technology you want to use to record and…
Markdown Code Block Syntax Highlighting and Diff
Date Published: 03 November 2021
If you're writing blog posts, GitHub content, and/or Stack Over flow questions and answers using Markdown, it's often helpful to show code in code blocks of within code fences. Did you know these support many different languages to allow for proper syntax highlighting, including a diff 'language'? Markdown code fences Markdown is a great language to use to write content in, because it offers built…
Better Faster Demos with Screencast Videos
Date Published: 06 October 2021
Do you ever need to demo your app to users, customers, or stakeholders? Is it part of your regular software delivery process? What about when you want to describe to a coworker how a new feature should work, or what the repro of a bug looks like? If pictures are worth 1000 words, videos are worth millions. Let's explore some scenarios in which video could be useful and usually far more efficient…
How to Create a new Solution and Projects using dotnet CLI
Date Published: 17 August 2021
I create a lot of samples, demos, open source projects, etc. and I like to use the fairly standard repository layout of having a solution file in the root and project files in a src subfolder. Achieving this in Visual Studio is tedious, but fortunately this series of dotnet CLI commands quickly create the structure for you. This script uses the following commands, which have good documentation…
Writing Efficiently
Date Published: 10 August 2021
Working in professional software development teams requires a lot of writing. As you advance in your career, frequently the percentage of time you'll be writing emails and other correspondence versus writing source code will increase. As your responsibilities grow, so too does your need to communicate effectively with larger numbers of people in and beyond your organization. Writing effectively is…
Choose Excitement over Fear
Date Published: 26 January 2021
There's virtually no difference, physiologically, between the sensations and symptoms of fear and excitement. But there is a big difference in how we react based on these feelings. If you find yourself living in fear of something, but rationally you recognize that the fear isn't justified, it may help you to try and reshape that feeling into something else, like excitement. Fear Almost all humans…
How to Easily Format Tables in Markdown
Date Published: 01 July 2020
I'm a big fan of Markdown. It provides a simple way to richly format text without the complexity or security issues that would come from using HTML. Support for Markdown is ubiquitous within the software development industry, with native support everywhere from GitHub to StackOverflow. I've written everything from short documentation articles to several entire ebooks for Microsoft using Markdown…
How to Rip DVDs with Handbrake and AnyDVD
Date Published: 23 June 2020
I'm a big fan of Plex and have a lifetime subscription. If you're not familiar with it, it basically lets you have your own Netflix hosted on a computer in your house that you can watch from anywhere. If you've ever wanted to watch a movie or show that you already own, without having to deal with the discs, and it's not on one of your various streaming services, you understand the value. Also, if…
Integrate GitHub and Discord with Webhooks
Date Published: 30 April 2020
I've started using Discord more and more for things like my private group coaching program focused on software developers. It's worked quite well and is completely free for our needs. You can easily add bots and notifications from other systems, including your own ASP.NET web applications, using web hooks. One of the easier ways to configure notifications from things you care about as a developer…
Adapter Design Pattern
Date Published: 01 April 2020
A couple of months ago I published a new, revised course called C# Design Patterns: Adapter on Pluralsight. It's one of my favorite patterns and its predecessor, the Design Patterns Library, remains one of the most popular courses of all time on Pluralsight. It's almost 16 hours long but I encourage you to get through it as an achievement if you can. Look for a revised learning path through the…
Streaming Checklist
Date Published: 27 March 2020
I'm a fan of checklists – they're an intermediate step before automating a process to ensure it's done correctly and consistently. You'll find a number of different checklists on this site. This one is about streaming, specifically for my twitch.tv/ardalis account. I've been meaning to blog about this forever, but it's just been sitting in my OneNote for the longest time while other things have…
GitHub Draft Pull Requests
Date Published: 25 March 2020
A feature introduced last month by the GitHub team is called draft pull requests. When you create a Draft Pull Request, it cannot be merged until it is marked as ready for review. This is useful because often pull requests are used as conversations, often prior to the work being ready to merge. Common approaches to this in the past have included such classic approaches as: Adding “WIP” for “Work…
Priorities of Work on a Board
Date Published: 04 March 2020
This is obvious once you think about it but I’ve found many people haven’t thought about it so I’m going to lay it out here real quick. A lot of teams use some kind of task or kanban board today to track the status of work. This is typically part of some kind of agile or Scrum or kanban process. If you want to learn more about kanban, check out my short course on the fundamentals of kanban…
Git Autocorrect
Date Published: 12 February 2020
I don’t know how I didn’t know about this before now, but apparently you can turn on autocorrect for your git command line, and it will accept (after a short delay in which you can cancel) commands that are close to but not exactly correct. Example: You probably meant: And it will go ahead and do that for you. Setting it up You can set this up in your git config, either globally or per repo. I don…
Year in Review Post Checklist
Date Published: 06 January 2020
You have a blog. It’s early January. You need something to post. Why not post a [Current Year – 1] in Review post? Something like this 2017 in Review or 2018 Year in Review or any of these developer year in review posts? Great idea! But what should you include? You don’t want to forget anything important. That’s why I’m creating this software developer blog year in review article checklist. Now…
Be Humble and Kind
Date Published: 28 October 2019
This originally went out just to my Weekly Dev Tips mailing list, but I got a lot of positive comments and requests to share it, so I’m publishing it here. Sign up for Weekly Dev Tipsto get a new tip in your inbox each Wednesday. I’m not a big fan of country music (my wife is, however) but Tim McGraw’s Humble and Kind has it right. Don’t let success get to your head. You don’t know everything – be…
How to Delete hiberfil.sys and Recover Disk Space on Windows
Date Published: 21 August 2019
Desktop computers rarely need to hibernate, so you can probably safely remove the hiberfil.sys file and save yourself a few GB of space. To do so, just open up a new command prompt as an administrator: Click on the Start button Type ‘cmd’ (don’t hit enter) Right click on the Command Prompt that comes up and choose Run As Administrator. Once you have an administrator command prompt up, just run…
Create Alias to Set Window Title in PowerShell
Date Published: 30 May 2019
I’ve written previously about how to set the window title in PowerShell. Unfortunately, it’s a little complicated. Recently on twitter, though, Greg MacLellan showed me how to create an alias so you can just type to set the window title. This involves editing your PowerShell profile, which you may not even have, so here are the steps to take to make this happen. First, determine if you have a…
Speaking and Presenting Last Minutes Checklist
Date Published: 29 May 2019
You have a presentation to give. You’ve been asked to speak to a group of your peers. You’re giving a conference session. The previous presenter just finished – you’re up as the next speaker. You have fifteen minutes. What do you need to do? This isn’t the checklist for what to do after you’ve just found out you have a presentation to give, or you were just accepted to speak at a conference. There…
Finding a Career Horse to Ride
Date Published: 22 May 2019
About 20 years ago I read the book, Horse Sense, by Al Ries and Jack Trout. The authors posit, “The key to success if finding a horse to ride.” In the authors typically direct and simple style, filled with real world stories and anecdotal evidence, they categorize the many different “horses” one might find to ride toward success. I’ve gifted this book to many people over the years because the…
How to Add Files to a GitHub Repo You Don’t Own
Date Published: 03 May 2019
There are a bunch of GitHub (and other git host) repositories that aren’t really for software projects, but rather are for documentation or other resources. For example, the ASP.NET Core docs, or various awesome lists, or the slides and materials from conferences like Stir Trek. Frequently, even as a non-developer, you may want to contribute to such repositories, maybe even just as simply as to…
Using Pablo to Create Title Images
Date Published: 02 May 2019
I recently was introduced to Pablo by Buffer. Ok, not really that recently - I started this post months ago but never finished it. Oops. ? Pablo is a great, simple service that I've looked for in the past but never found. Basically, it provides a super-easy way to take some stock photography, apply a simple contract or blur filter to it, and add some text on top. It's free. It's easy. I've used it…
Ultimate Developer Rig 2019
Date Published: 30 April 2019
I recently upgraded my desktop developer machine. My goal was to support more docker-based application development including ones that run multiple microservices at the same time, like the eShopOnContainers sample that I assist with (see also my own eShopOnWeb sample and eBook). My friend Bill Henning (of Actipro Software fame) came up with the initial parts list for his machine back in November…
5 Solid Ways to Come Up with Good Blog Post Topics
Date Published: 10 April 2019
A couple of days ago Mike J. wrote me the following (shared with permission): Hi Steve, A while back you wrote about things to do to help further your career, and blogging was one of them. My question is how do you create posts without just sounding like you're plagiarizing or rehashing what's been said 100 times over? What makes a good blog? You and Julie Lerman are two of my favorites. Mike J…
The More You Know The More You Realize You Don't Know
Date Published: 20 February 2019
Aristotle famously wrote, "The more you know, the more you realize you don't know." In the image above, you can see the effect this has on confidence as one's experience grows. Initially, your confidence is low since you know you're inexperienced. However, after a short while, you start to "get it", and you get into a comfort zone. Depending on how demanding your environment is, you might stay…
Keeping a Work Journal
Date Published: 23 January 2019
Not long ago I saw a tweet from Brian Hogan describing a tool he uses for journaling while at work. I've kept notes in a variety of formats throughout my career but have never really kept a journal per se, so I thought I'd give it a try. He recommended trying jrnl.sh, a simple command line tool, so I did. Here's a quick overview and getting started guide. Getting jrnl.sh Head over to the…
2018 Year in Review
Date Published: 17 January 2019
Now that 2018's been over for a few weeks, I've had a chance to compile some data from a variety of sources that I thought some people might find interesting, including future me. This post will include details on the traffic for my blog as well as other properties, how things are going with my podcast, where things are headed with devBetter, and a few other random bits. This Blog In 2018, I…
Bulk Delete Old and Big GMail Email
Date Published: 04 January 2019
My GMail is complaining it's running out of space. I remember the days when GMail would show an ever-increasing counter of how much more space I had in my inbox, but apparently those days are over. I rarely delete anything in GMail, because I've been trained to just archive things with the click of a keystroke ('e' by default once you enable keyboard shortcuts). Thus, I have a lot of email in my…
Add Pins and Create Custom Google Maps
Date Published: 15 November 2018
I really like Google Maps. I've been a fan since it first came out. Being able to zoom into almost any location on Earth is amazing. And yet, somehow I only recently learned how to create my own maps with my own pins that I can save and share and collaborate with others on. You may want to do something similar, so here's how. First, go to Google Maps. Next, click on the menu icon (hamburger,…
Moving from WPEngine to SiteGround
Date Published: 09 November 2018
I started hosting my Wordpress-powered blog on WPEngine several years ago. They weren't the cheapest option, but I'd had some bad experiences with super-cheap hosts and they offered service and features that I was happy with. I recommended them to many people and was generally satisfied. Unfortunately, they shifted their pricing plans over the years, and my blog's traffic (happily) grew, such that…
A Retrospective Retro
Date Published: 18 October 2018
At a client today I facilitated a retrospective for the dev team. I've done a few of these in the past, both for agile software teams and also After Action Reviews (AARs) in the US Army. For AARs, the usual format is to discuss what was supposed to happen, what really happened, what went well, and what didn't go well. Then, identify any changes or controls that should be added to improve for next…
WeeklyDevTips Podcast Checklist
Date Published: 15 April 2018
I've been doing a podcast for a little over six months now, called Weekly Dev Tips. The episodes are just 5-10 minutes long and don't have a lot of extra fluff - they're just straight and to the point, describing a particular tip that some developers will find helpful. The idea is that you can binge on back episodes (ideally start at the beginning) and get a ton of actionable tips in the time you…
How to Get Involved with the Microsoft Developer Community
Date Published: 10 January 2018
The other day, someone wrote me to ask: To cut to the chase, I was wondering if, given your experience, you had any recommendations or advice for landing an internship with Microsoft. I work a lot with .NET and Azure through my web development business and I am extremely interested in all things Microsoft. This particular question related to an internship, but I've often seen similar questions…
2017 In Review
Date Published: 02 January 2018
Now that 2017 is behind us, I thought I'd share some stats and other details about my blog (and podcast and other such things) for those who may be interested. 2017 was a pretty solid year for me as a blogger, and I wrote 66 articles, averaging about 5.5 per month. Apparently I write a lot in the middle month of each quarter (Feb, May, Aug, Nov) for no reason I can fathom: Blog Posts By Month 201…
Simple Flowcharts and State Diagrams with WebGraphViz
Date Published: 20 December 2017
I've used the GraphViz tool locally to quickly produce graphs and state diagrams from text input. Recently (2017), I learned about WebGraphViz, which lets you do the same thing from a browser. For instance, if you want to teach someone how to use a flow chart, you could send them to this classic XKCD comic, or you could generate your own similar flowchart by copying and pasting the following into…
Easy Money in 2017
Date Published: 27 November 2017
dollars and money I've written a while back about what a good idea it is for companies to incentivize both parties with their referral programs. A couple of recent companies who are following this strategy are Coinbase and Square Cash. Coinbase lets you purchase Bitcoin and other cryptocurrencies, and will give you $10 when you buy at least $100 of Bitcoin or another cryptocurrency like Ethereum…
Weekly Dev Tips Podcast
Date Published: 15 September 2017
I started a weekly newsletter last year that's been going for over 70 weeks now sending a short, practical developer tip each week. You can subscribe to it here if you haven't already. Tips go out every Wednesday at 10am Eastern Time. In August 2017, I launched a podcast with a similar structure. Weekly Dev Tips just published its 5th episode, and each episode so far is under 10 minutes long. They…
Working Through Roadblocks - A Guide for New Programmers
Date Published: 06 September 2017
Last Updated April 2024 This is advice that I have given to many novice developers, and that I would like to have been able to give to myself when I just getting started (though some of the advice refers to resources that didn't exist then - alas). If you find it useful, please consider sharing it with someone you know who might also benefit from it. Roadblocks As a programmer or software…
Set cmd or PowerShell Window Title
Date Published: 07 June 2017
As CLI tools become more and more popular, it's not unusual that I find I have more than one command, bash, or PowerShell window open. Often, each window is serving a specific purpose. While I really like that I can integrate a command shell right into Visual Studio Code, when I'm not doing that it's nice to be able to give each window a name that makes sense. Setting Window Title of Windows cmd…
Life Hack - Listen Faster
Date Published: 24 May 2017
I've been doing some traveling lately, which is when I tend to have time to catch up on listening to podcasts. I'm a fan of DotNetRocks, Hanselminutes, and Radiolab, among others. Unfortunately (or to be honest, fortunately), my daily commute with kids usually consists of only 10-15 minutes, and isn't amenable to podcast listening. But when traveling I often have hours at a time to listen and…
Are You a Profit Center or a Cost Center?
Date Published: 26 April 2017
I recently was on a panel at the Hudson Ohio coworking space Tech Hub Hudson organized by the Akron Women in Technology group. There were four other panelists (I was a last minute addition) and the topic of the evening centered around advice for junior developers. There was a lot of great experience shared both by the panel and by audience members, and I'll probably draw on some of it again in…
Share What You Learn (even if you're not an expert)
Date Published: 12 April 2017
A lot of people, myself included, suffer from imposter syndrome. That feeling that you're really not good enough to be doing whatever it is you're doing. Maybe it's writing a blog. Maybe it's public speaking. Maybe it's just answering a question in front of a group, team, or class. Imposter syndrome is a real thing, and it's incredibly common, so first off, realize that most people feel that way…
Windows Mac Native Google Mail Client
Date Published: 02 February 2017
I'm involved in quite a few businesses and ventures at any given time, and most of them have an email account associated with them. My preferred email client is Google/GMail/Google Apps/G suite, mainly because it's fast, ubiquitous, and (mostly) free (google apps was free for a very long time, and now has pretty reasonable per-user pricing similar to O365). Checking a bunch of different accounts…
Open Command or Powershell Window From Explorer
Date Published: 07 December 2016
Command line tools are becoming increasingly popular, so this tip may save you some time. On Windows, there are several ways to open up a command window. My typical method is to just hit the Start key and type 'cmd' and then enter. This will open a window in my user folder, which is exactly where I want to be precisely 0% of the time. From there, it's usually just a few dozen commands to change…
Be a Thankful Developer
Date Published: 23 November 2016
It doesn’t cost much to acknowledge those who have helped you, and it can be very rewarding. Regardless of where you are in your career as a software developer (or most other careers, but this is mainly directed at developers), show appreciation for those who make your job easier or who help you improve. This might be a peer or mentor who takes the time to guide you, it could be your boss or your…
4 Tips to Integrate TeamCity and GitHub
Date Published: 06 November 2016
Last updated: 13 October 2023 TeamCity Logo I've been a fan of JetBrains TeamCity for many years now. It's a great continuous integration / build server product, with an extremely responsive web-based user interface that's great to work with. What's more, the basic version supports up to 20 projects for FREE, which is tough to beat. However, like peanut butter and chocolate, TeamCity gets even…
How to Change Drawing Scale in Visio Professional
Date Published: 14 July 2016
This is much harder than it should be to find, especially when most of the help online is wrong and refers to previous versions. For instance, there is no Page Setup menu under the File menu in recent versions of Visio. I have Visio Professional 2016 - if you're not sure, go to Start -> Add or Remove Programs and look for your version there. If you're creating an office layout, for example, and…
Speaker Alert
Date Published: 26 April 2016
I've wanted a decent speaker timer to use during my conference presentations for a while, now. Some of the fancier slide advancers have a timer functionality, but I'm pretty happy with the one I have and I was looking for something I could glance at on the table/podium rather than a tiny display in my hand. I have an iPhone, and a quick search through the app store (like, 5 minutes before my talk…
Developer User Group Tips
Date Published: 17 April 2015
I've been a participant in a number of software developer user groups for many years, and an organizer of the Hudson Software Craftsmanship group since 2009. A few years ago, I was a member of the INETA Speaker Bureau, and would travel to a number of user groups around the country (and occasionally, the world - including Moscow in 2006). Recently I participated in a discussion about things to…
Anthropomorphism Raised to Organizationalism
Date Published: 21 August 2014
Recently on twitter, Michael Feathers raised some interesting points about how the media tends to naturally group individuals together, especially “on the Internet”: As he notes, we already have a word for treating inanimate objects as if they were alive, sentient, humans:anthropomorphism: Obviously when we do this, we’re telling a small lie. Non-sentient objects do not have feelings or intentions…
Free Stock Photos for Presentations
Date Published: 10 July 2014
6812132167_e26473b22c_mIf you’ve graduated from basic death-by-bullet-point presentations to something that will keep your audience interested, you’ve probably encountered the problem of “where can I find the perfect image to underscore my point,” preferably without having to pay an arm and a leg for it. I recommend books like Presentation Zen to learn more about how to amp up your presentations…
Incent All Parties Involved
Date Published: 04 March 2014
Incentives and offers are a mainstay of modern business sales and marketing. People feel better about making a purchasing decision if they think they are getting a deal, and frequently people need some kind of a push to get them to buy now, even when they’ve otherwise made up their mind that they’re ready to buy, soon. In most cases, incentives are given to just one person, the potential customer…
Walking While Working
Date Published: 12 February 2014
DSC_0031 - Cropped Staying in shape as a programmer can be difficult, but recent studies have shown that even if you're among those in our profession who do work out regularly, sitting for long periods of time at work is detrimental to your health. To be a bit more dramatic about it, sitting is killing you (see Phil Haacks blog post on this from last year). So, how can we combat this risk while…
Final Verdict on Haswell Ultrabook
Date Published: 21 October 2013
I’ve had a pre-release Intel Ultrabook with the new Haswell processor in it for about two months now, so it’s time for one last review of the device. You can read my previous reviews: First Impressions of the Intel Haswell Ultrabook Intel Haswell Ultrabook Preview Unit Experience Overview This device has met or exceeded my expectations for performance, power use, and overall fit and finish. The…
3 Reasons Why DropBox is Your Friend
Date Published: 10 October 2013
I’ve been a huge fan of DropBox since its early days. In fact, I’ve been using similar tools, like FolderShare (until Microsoft killed it), for many years, but DropBox is by far the best one I’ve ever used. I work from 3 different machines on a regular basis (work desktop, home desktop, laptop for meetings/travel), and DropBox ensures that every one of them always has all the files I need to be…
Intel Haswell Ultrabook Preview Unit Experience
Date Published: 04 September 2013
I've been using my Intel Haswell Ultrabook for about a month now, so it's time to follow up on my first impressions review. Overview Last month I was happy to receive an Intel Haswell Ultrabook Software Developer Preview device, for review purposes. This unit is actually the 3rd Ultrabook I've used, and certainly it is the best of the three. The first one, an Asus Zen I got in early 201…
First Impressions of the Intel Haswell Ultrabook
Date Published: 10 August 2013
I was on vacation last week, and spent most of Monday driving home. When I got there, I found that a nice present had arrived: a new Intel 4th generation Haswell Ultrabook for me to review. If you haven’t heard about the latest generation of Intel processors, The Verge covered them in June. All of this adds up to what could be the most significant update for laptop processors in years… With faster…
How Do I Shutdown Windows 8
Date Published: 12 June 2013
With the new Windows 8 operating system, Microsoft has made it harder than ever to figure out how to actually shut down your computer. I think this is due to a major emphasis on the tablet form factor, which one will typically not shut down, or will shut down via a hardware button. In any event, many desktop and laptop users with Windows 8 installed must figure out how to actually shut down the…
Speed Up YouTube Videos
Date Published: 22 March 2013
If you’ve ever wanted to speed up a YouTube video, like you can do with Pluralsight training videos, here’s a quick tip to show you how to do so. Today, I was watching the KendoUI 2013Q1 Release Keynote on YouTube, because I wasn’t able to catch it live. It’s a little over an hour long, and I’ve become rather spoiled lately by Pluralsight’s video player, which lets you adjust the speed to whatever…
When Should You Arrive for an Interview
Date Published: 20 March 2013
We’ve been doing a lot of interviewing as we grow our team in Hudson, Ohio for Telerik Services. We have a fairly small office in a suburban environment, where you can basically park right outside the building and walk right in – no elevators, reception area, parking decks, or other hassles you might find in a more urban location. As a result, we’ve learned that if we schedule an interview, we…
Limit SQL Server Memory Use on Dev Machine
Date Published: 06 November 2012
If you’re a developer running SQL Server locally, you may sometimes need to limit how much memory the database is consuming. Under normal conditions, SQL Server likes to use as much memory as it can get, since keeping results in memory improves the database’s performance. In typical production scenarios, this is the ideal behavior, but on a dev machine you probably want your RAM for other things…
The Ivy Bridge Ultrabook Continued
Date Published: 19 October 2012
I’ve now had the new Intel Ivy Bridge Ultrabook machine for about six weeks, and have been carrying it as my primary machine for much of that time. You can read about my initial impressions of the Ultrabook here. The short version, for those who don’t like to click on links, is that this is a pre-release hardware clamshell Ultrabook with a touch screen and a slew of sensors that you can code…
Unboxing and First Impressions of New Intel Ultrabook
Date Published: 19 September 2012
I recently received a preview-hardware next generation Ivy Bridge Ultrabook from Intel, optimized for and pre-installed with Windows 8. I suspect we’ll be seeing these available in stores and via online outlets soon. I’m a fan of the Ultrabook brand and concept – thin, sleek, and light, with powerful hardware capable of running developer tools. I’ve already happily switched away from much heavier…
How To Disable ReSharper in Visual Studio
Date Published: 31 July 2012
Something I’ve had to do from time to time is disable a plug-in in Visual Studio, either permanently or temporarily, such as ReSharper. Just now was one of those times, and as in the past I had to hunt through a variety of Visual Studio menus in order to find it. Personally, I think Visual Studio has some work to do on how many kinds of plug-ins, add-ons, and extensions it supports, which I hope I…
Gas Pump UI Failure
Date Published: 07 July 2012
Take a look at this picture (click to enlarge): IMG_3346 What do you notice about the octane stickers? If this were a software application and you were implementing some kind of behavior/click tracking, where are most of the clicks taking place? Since this is basically a touch interface, you can see that the largest “buttons” are the octane stickers. Above them are small headings, but to the user…
Asus Zen Ultrabook Revisited
Date Published: 27 March 2012
A couple of months ago I got an Asus Zen ultrabook, which I posted about when I first got it, and a month or so later. Now that I’ve had it a while, I thought I’d post one more time with how it’s continued to work for me. I’m still very happy with its look, feel, and speed. It’s very responsive both while up and running and when waking up or shutting down. One thing I wish it came with is an HDMI…
Kanban Book Review
Date Published: 16 March 2012
While researching material for my Kanban Fundamentals video training course on Pluralsight, I read Kanban: Successful Evolutionary Change for Your Technology Business, by David J. Anderson. I’ve previously reviewed a couple of other related books, including Personal Kanban and Scrumban, if you’re interested in learning more about this topic. I would recommend Personal Kanban as the most…
Reviewing Scrumban the Book
Date Published: 24 February 2012
imageI’ve been reading a bunch of kanban and lean books recently as I work on my Pluralsight course on Introducing Kanban. The most recent one I’ve finished is Scrumban, Essays on Kanban Systems for Lean Software Development, by Corey Ladas (I’m doing the reviews in LIFO order). I made a bunch of notes while reading this book, and it has a great deal of useful information. I read David Anderson’s…
Asus Zen Ultrabook One Month Later
Date Published: 23 February 2012
I wrote a few weeks ago about my new Asus Zen Ultrabook computer. I’ve been using it as my primary laptop computer since then, and thought I’d write up a follow-up on how it’s been. Overall, I’m quite pleased with it. The performance is great, the battery life is quite good, and the instant on/off experience makes it almost as quick and easy to use as my phone or iPad. In fact, I’ve just spent the…
Excel Cumulative Flow Diagram
Date Published: 12 February 2012
I’m working on a Kanban Fundamentals course that should go live soon on Pluralsight. One of the topics I’m touching on is Cumulative Flow Diagrams, and how these can be used to analyze flow of a process. Some electronic kanban tools like AgileZen have some built-in support for CFD-style reports, but for instructional purposes it’s nice to be able to create one on-the-fly with whatever data one…
Team Workspace Reflections
Date Published: 08 February 2012
imageWe’ve been fans of team rooms and collaborative work environments at NimblePros for some time. In building out our new building, we took care to create several large open spaces to be used as team rooms, with plenty of room in the middle for workstations (configured for pair programming) and lots of open wall space around the outside for whiteboards and information radiators. You can see one…
Laptop Rebuild - Essential Apps
Date Published: 02 February 2012
When we last saw our hero, he had fallen victim to an evil plot to disable his computer’s ability to boot up. After great efforts at recovery, eventually he was forced to concede defeat to Vista and reinstall everything from scratch. Let’s return now to see what’s in store in the next chapter of our story, already in progress… So, day 2 after my issue with Vista and I’m now at least able to use my…
Outlook Send Mail Infinite Loop - Message in Outbox
Date Published: 02 February 2012
Last week I encountered a problem with Outlook that I’m happy to report I’ve just solved. I found a bunch of things on the Interwebs that looked like they might be useful, but none of the fixes there did the trick for me (of the ones I tried – some fixes were more extreme than I wanted to attempt). Here are some resources that may help you if my fix does not: Outlook Send-Mail Infinite Loop…
XBox 360 - Home Media Center
Date Published: 02 February 2012
Recently I picked up an HP MediaSmart EX470 Windows Home Server to help consolidate my files at home and to provide a simple backup solution. It’s been great and it’s an extremely economical way to get backups. You can hook it up with Amazon S3 using JungleDisk and get simple offsite backup of the files (but not the backups) easily and cheaply as well, and JungleDisk is just one of many plugins…
Updating Blog to Orchard and Switching Domains
Date Published: 26 January 2012
image So, yesterday I posted a review of the new Asus Ultrabook and, as has become rather predictable lately, the virtual web server hosting my Graffiti-powered blog started having 100% CPU for quite a while after the post went live. Now, I don’t get *that* much traffic, but apparently something with my configuration of Graffiti, the server, and the traffic that I do get is enough for it to bring…
Asus Zen Ultrabook First Impressions
Date Published: 25 January 2012
Last week a received a new Asus UX31E Zenbook Ultrabook laptop computer, which I’ve been putting through the paces. I’d like to write up my thoughts on the unboxing and my initial impression of the machine, and I’ll write more in a few weeks once I’ve had some more time to use it. Overall, I really like it so far. It’s thin, light, shiny, and feels solidly put together. It’s also extremely…
Getting Started with Kanban
Date Published: 29 November 2011
Kanban can mean a number of things. In Japanese, the literal translation is “signboard,” but it also refers to a system of lean manufacturing, or in fact to a process for eliminating waste from a production system of any kind. In this article, I’ll quickly describe how kanban cards are used, and how the Kanban with a capital K system can be used to improve existing systems. Examples of Kanban If…
Represent Behavior with Classes not Flags
Date Published: 11 November 2011
In any non-trivial software applications, there will be different kinds of behavior attributed to different kinds of objects. For instance, maybe a discount is only applied to some products, but not others. Or a validation rule is applied in most cases, but not for this particular class of item. Perhaps an email-sending application should perform some checks to insure it has certain elements…
View HTML Source of Email in GMail and Google Apps
Date Published: 10 November 2011
If you’re working on creating a pleasant-looking HTML email template for your site’s newsletter, you’ll want to test it out on the major email clients, including Outlook and GMail. For instance, if you get The Code Project’s Insider Daily News in your GMail inbox, it will look something like this: image Now, if you view the source for this page, you’ll get something that’s less than useful. The…
Using If This Then That to Automate Your Life
Date Published: 24 October 2011
I’ve just started getting into If This Then That (ifttt.com) and have set up a simple task that will update my Steve Smith Facebook Page whenever I post something here to my blog. Getting this set up was extremely simple to do, and so far although I’ve only been using it for about an hour I’m quite impressed and enamored with ifttt.com. Here’s how easy it is to set up something like this:…
Display Plus Sign in Excel if Value is Positive
Date Published: 20 July 2011
Sometimes in Excel you may want to actually display a + character (or plus sign) in front of the cell value if the value is positive. For instance, if you’re showing the change in a value, like this (note these are made up values): excel_1 In this case, you can imagine that the Change columns are relative to the previous month’s report, so this gives an at-a-glance idea of the trend. However…
Drawing Directed Graphs with GraphViz
Date Published: 15 July 2011
I’ve been wanting to draw some simple circle-and-arrow directed graphs for a while, because of a few problem domains I’m working in. One example pertains to articles and related educational content, which I’d like to represent as a series of modules linked by arrows that represent prerequisites. You can see a wonderful example of such a diagram on the Khan Academy’s site in their Exercise…
How to Find Conference and User Group Presenters
Date Published: 13 July 2011
5451873949_d43dbb8c2dIf you’re a user group leader or event organizer and are looking for quality presenters for your event, here are some resources that should help get you started. This is not meant to be an all-inclusive or exhaustive list, of course, and to that end I fully expect that there will be great resources left as an exercise for you, the reader, to add via the comments. Thanks for…
Working with Value Objects
Date Published: 12 July 2011
Introduction A Value Object is an object that has no unique identity, but rather represents a characteristic of something else. For instance, the integer 7 can be used anywhere and always means the same thing - we don't think about this or that particular instance of the integer 7. Likewise, a given date like 11 July 2011 (GMT) is the same everywhere - it has no additional identity. In…
How to Reset a SQL Server SA Password
Date Published: 28 June 2011
Introduction If you need to reset the SA (system administrator) password on a MS SQL Server database because you've lost or forgotten the old password or you've change your active directory domain, you can do so provided that you can access the server with an account that has local administrator permissions. This article describes the steps required to do so. Step by Step First off, you need to…
Single Payee Credit Cards for Recurring Payments
Date Published: 24 June 2011
4596638035_c616ea6a83_zHave you ever set up a recurring payment with a vendor using a credit card? I have. It’s very convenient, both for the consumer and the vendor, because neither one needs to be bothered with invoicing and paying bills on a regular basis. Everything’s great, as long as the consumer really does still want the product or service offered by the vendor, and as long as the…
Seth Godin The Dip
Date Published: 20 June 2011
imageI picked up The Dip by Seth Godin a while back and thought I’d post my thoughts on it. It’s a quick read, at only 80 pages or so. I’m generally a fan of Seth’s books, and I enjoyed this one. His style is entertaining to read, and the book was worth the < $10 it cost on Amazon. The key takeaway from this book is that when you hit the hard part of any activity you’re pursuing, you determine…
Creating a SOLID Visual Studio Solution
Date Published: 14 June 2011
Introduction The SOLID acronym describes five object-oriented design principles that, when followed, produce code that is cleaner and more maintainable. The last principle, the Dependency Inversion Principle, suggests that details depend upon abstractions. Unfortunately, typical project relationships in .NET applications can make this principle difficult to follow. In this article, I'll…
Using Google Realtime Search to track Trends
Date Published: 14 June 2011
You can use Google’s Realtime search feature to track trending topics on social media networks like Twitter. To find it, just do a search as usual, then click on the More icon on the left to open up the Realtime option (or just go to http://google.com/realtime). image image The default view will show you the most recent items for the given term(s). You’ll also see a timeline showing the…
Deploy and Test an Azure App with Platform Ready
Date Published: 10 May 2011
Introduction Microsoft Platform Ready provides technical and marketing resources for companies building applications for the Microsoft platform. Currently they are working with The Code Project on a promotion that will pay $250 USD to companies for their FIRST Windows Azure Application that is verified compatible using the Microsoft Platform Ready testing tools. The contest is valid only through…
Binding Data to Web Performance Tests
Date Published: 03 May 2011
Introduction Visual Studio's Web Performance Tests can be used to test whether web pages return the correct results and/or whether they respond quickly enough. You can record these tests manually, but if you have a large number of scenarios you need to test for using the same set of pages, it's much more efficient to use the built in data source and data binding tools to do so. This article…
ASP.NET MVC 3 Scaffolding Quick Start
Date Published: 26 April 2011
Introduction One of the new features in ASP.NET MVC 3 is its scaffolding feature, which basically lets you very quickly produce data entry controllers and views based on a particular model, even if you don't yet have a database in place. This can let you very quickly produce a proof-of-concept, or iterate through some design options, without the need to go through a big process of setting up a…
Creating a Simple ASP.NET Report with Export to Excel
Date Published: 19 April 2011
Introduction One of my very first articles was on exporting reports to Excel using Active Server Pages, and this article still gets over a thousand views per month. Today I had to create a quick report for internal use and I thought it would be helpful for the user to be able to quickly export the results to Excel. Thus I found myself, over a decade later, going through much the same process as…
Introducing Pair Programming at Cinci Day Of Agile
Date Published: 30 March 2011
Last weekend I presented at the Cincinnati Day of Agile event on Introducing Pair Programming (see on slideshare). The event was nearly sold out with about 240 people in attendance, a mix of devs and PMs. The content and (other) speakers I thought were great – Phil and his team did a great job. I took a few pictures during the event, which you can see below: Phil and Joel Semeniuk DSC_001…
Installing Orchard Content Management System
Date Published: 29 March 2011
Introduction Orchard is a free, open source, community-focused content management system built on the ASP.NET platform. It uses ASP.NET MVC 3, the Razor view engine, and is an Outercurve Foundation project. In this article, we'll look at how to get started with Orchard 1.0 by installing it. Installing Orchard There are a few different ways you can install Orchard. Probably the simplest if you…
Handling Errors with ASP.NET MVC
Date Published: 22 March 2011
Introduction Nobody likes to talk about it, but sometimes your web application is going to fail. When it does, you want to make sure your users still get the best possible experience, and ideally that you as the developer get what you need to fix the problem. In this article, you'll learn how to configure error handling in your ASP.NET MVC 3 applications. In the beginning... When you first…
Code Analysis Using Atomiq
Date Published: 08 March 2011
Introduction Atomiq is a code analysis tool that quickly locates duplicate code within software applications by analyzing the source code. It works at the source, not binary, level, and so can be applied to applications written in a variety of languages. Although it doesn't support auto-correction or refactoring within the application, it can quickly locate problems which can then be addressed…
Avoid Exposing Collections Directly as Properties
Date Published: 22 February 2011
Introduction Sometimes your domain objects have one-to-many or many-to-many relationships with other objects. For instance, your Customers might have collections of Orders associated with them. The simplest way to model this is to expose a field or property off of your Customer class. Unfortunately, this has a number of negative consequences because of how it breaks encapsulation. Fortunately…
How to Record a Screencast with Expression Encoder 4
Date Published: 16 February 2011
I’m a huge fan of TechSmith Camtasia and use it for pretty much all of my screencasts. However, I’m currently recording some presentations for the Code Project Agile Virtual Tech Summit that’s taking place next week, and the preferred capture program for the platform is Expression Encoder 4. So, I figured while I’m learning how to do it, I might as well share how it works and how I find it…
Live Essentials Evilness
Date Published: 31 January 2011
Hey, Microsoft, please stop trying to reset my home page and change my search preferences when I install the one tool from Live Essentials that I find useful, Live Writer (which is awesome, by the way). I’m pretty sure my browser already has a preferences section wherein I can set my home page, and likewise my search engine of choice, and your presumption that by installing another tool that is…
Where is Outlook 2010 Export
Date Published: 31 January 2011
In an example of extremely intuitive user experience, the latest version of Outlook has moved things around in the interests of ribbonizing everything. This would be fine if in fact the trendy new ribbon UI was organized in a fashion that was, well, based on logic. Sadly, at least in the case of Exporting data, this is not the case. In previous versions of Outlook, one could navigate to File…
Sharp XV-Z9000U Projector Wont Power Up - Solution
Date Published: 21 January 2011
I have a fairly old projector that recently required a new bulb. It’s a Sharp XV-Z9000U model, which has bulbs that last for something like 2000 hours, and the projector has a timer in it that starts warning you when you’re approaching this number. Ultimately, when you’ve ignored the warnings long enough (because the existing bulb keeps on working fine), the projector starts to shut itself down…
Introducing Command Query Responsibility Separation (CQRS)
Date Published: 11 January 2011
Introduction The Command Query Responsibility Separation (CQRS) pattern is an enterprise pattern that can be used to increase the performance, scalability, and reliability of distributed applications that may experience heavy load. It is especially effective in situations where an immediate response is not required, or often even expected, by the user, or to offload processing that need not occur…
Abstract to Privileges rather than to Roles in ASP.NET Applications
Date Published: 14 December 2010
The Problem If you've written much ASP.NET code since 2005, you've probably used the built-in role provider, or rolled your own, and written code that checks whether the current user belongs to a particular role. For instance, for an article site like ASPAlliance.com, you might choose to show an Edit link to editors with some code like this: Of course, it might also be true that authors should be…
Get the Batch Files Path in a Batch File
Date Published: 07 December 2010
I’m a huge fan of build automation, and all of my dev projects include scripts to build, test, deploy, run etc. Sometimes these use PowerShell and quite often they use MSBuild (or occasionally NAnt) but batch files remain a very simple and powerful way to take care of automation business. Today I’m trying to wrap up my use of NServiceBus on a project that’s going live with some CQRS goodness…
The Message Is The Message Received
Date Published: 27 October 2010
I recall early on in my military career, in an ROTC class, learning about communication. Communication is very important in the military, and at least as important in civilian life. Especially today, when there are so many ways to communicate, and so many ways to communicate poorly. In a recent twitter conversation, I was reminded of one of the lessons from this class, which was summed up as…
Startup Business Checklist 2010
Date Published: 18 August 2010
checklist Below is my current checklist for startup businesses in 2010. This is meant to be relatively industry-agnostic and focuses primarily on online components of the business (meaning, it may not apply to businesses which avoid the Internet for whatever reason). I’ve included numerous links to more information and references. Checklists are a great way to ensure you don’t forget important…
Screencast and Podcast Recording Gear
Date Published: 14 August 2010
I’m working on some screencasts and have had some gear recommended to me that I’m ordering now. I’ll post back later with an update on how I like these, but if anybody else is interested in what I’ve been told is the best stuff to get, here you go. Microphone rode-podcasterThe microphone of choice is the Rode Podcaster, pictured at right. It has a built-in pop filter, so no need to pick up one…
Shared Folders in VirtualBox on Windows 7
Date Published: 04 May 2010
In my adventures with VirtualBox, my latest victory was in figuring out how to share folders between my host OS (Windows 7) and my virtual OS (Windows Server 2008). I'm familiar with VirtualPC and other such products, which allow you to share local folders with the VM. When you do, they just show up in Windows Explorer and all is good. However, after configuring shared folders in VirtualBox like…
PowerShell Control over Nikon D3000 Camera
Date Published: 24 April 2010
My wife got me a Nikon D3000 camera for Christmas last year, and I'm loving it but still trying to wrap my head around some of its features. For instance, when you plug it into a computer via USB, it doesn't show up as a drive like most cameras I've used to, but rather it shows up as Computer D3000. After a bit of research, I've learned that this is because it implements the MTP/PTP protocol, and…
Inbound Marketing and Small Business Trends
Date Published: 03 February 2010
I recently read Dharmesh’s and Brian Halligan’s Inbound Marketing book, which has a lot of good tips for startup companies to follow in order to maximize their online reach and popularity. Many of the tips are pretty obvious: start a blog, get people linking to you, build a following on twitter. But there are some that are pretty easy to overlook, and at the end of the book is a very good appendix…
Goals for 2010
Date Published: 16 January 2010
I recently wrote about how I did with my 2009 goals, now it’s time to set a few for this year. Let’s start with two that didn’t go so well for me last year: 1. Get In Shape. By the end of 2010 I will be under 200 pounds. I will have achieved my Brown Belt in karate. I will have biked 100 miles. (I have a Wii Fit Plus now, so I’m sure I’ll also get better at many of the games on the system).…
Unlock All Doors When Parking Honda Ridgeline
Date Published: 04 January 2010
I’ve had a Honda Ridgeline for a little over a year now and one of the absolute most annoying things about this vehicle is that when you drive, it locks all the doors, but when you stop, it only unlocks the driver’s door. Now, this is independent of the child safety locks that are switch-activated for the back doors. This is just a pure annoyance that makes me want to strangle some engineer…
Hide Windows Language Updates in Windows 7
Date Published: 29 December 2009
Setting up a new machine and going through the Windows Update Dance as I install the various updates that are available now (Windows 7 has been out for almost 3 months now and you know). And of course once I’ve installed the required updates, it’s always nice to see what’s in the Optional list. However, I’d like when I’m done installing everything I intend to install for Microsoft Update (note…
Where is the Fix button in Windows Photo Viewer in Windows 7?
Date Published: 18 December 2009
I love Windows 7. I'm using it now on my new primary laptop computer, and going through pictures getting ready for the holidays. And of course, a few of them need cropped, or red eye fixed, etc. Simple things that Vista included in the Windows Photo Viewer that was one of the things I loved about Vista vs. XP (yes, there were things improved in Vista over XP). But wait, where'd the “Fix” option go…
Ad Landing Pages and Customer Conversations
Date Published: 04 August 2009
One of Lake Quincy Media’s clients recently wrote to me in response to my previous post about the Principle of Least Surprise and its relationship to online advertising. Their question revolved around whether it was appropriate in their case to use their company’s home page as the landing page for their advertisements, something they were doing across the board. I suggested to them that, in my…
Review - The Art of Agile Development
Date Published: 04 August 2009
Summary This book provides an excellent field manual for implementing agile software techniques. It includes practical advice with extensive cross referencing to theory and principles that are core to agile methodologies. I would recommend it to individuals in the agile team lead/coach role, or senior developers in general interested in agile in practice. Its primary focus is on Extreme…
Advertising and the Principle of Least Surprise
Date Published: 08 July 2009
Advertising on the Internet is here to stay, and love it or hate it, good advertising is certainly preferable to bad advertising. One thing that is important for advertising is that it follow the Principle of Least Surprise, which I recently discussed as it pertains to software application development. In online advertising, this principle can be applied in a couple of ways First, recognize that…
Silverlight 3 on XBox 360
Date Published: 23 June 2009
devmavens scottgu Scott Guthrie earlier today twittered about a sneak peek shown today of Silverlight 3 running on an XBox 360. I've been waiting a long time for this and I really hope that the XBox platform will be able to take advantage of some of the opportunities that Silverlight has to offer. I'd really like to see the XBox opened up into a more flexible app server, as well as having access…
Excel 2007 Named Ranges and Data Validation
Date Published: 22 June 2009
It’s hard to find information on Excel Named Ranges for Excel 2007 using a search engine. The problem isn’t that there’s no information available, but rather that most of it refers to older versions of Excel. And of course, that would be fine, if Excel 2007 didn’t go and move everything around and add that darned Ribbon thing to make it impossible to find anything. But I digress. Today I’m working…
Upgrading HP MediaSmart ex470 to 2GB of RAM
Date Published: 07 June 2009
After the horrible experience of trying to restore some files from my Windows Home Server while it was continuously thrashing due to insufficient memory, I picked up a 2GB stick of RAM (which arrived a couple of days ago) and am in the process of doing the upgrade with the help of this step-by-step guide which was the first result in my Bing Search. So far it’s smooth sailing, though as you can…
Vista Disconnect From Network Share or UNC Path
Date Published: 27 May 2009
Occasionally I'll try to connect to a UNC share or network device and I'll forget my proper username and password for the device (NAS, router, another box, etc.). In the case of one of my NAS drives at home, it will let me guess three times what my credentials are, and then it will just connect me as whatever my last guess was, but at that point I'm basically attached as guest. Once that happens…
Goals for 2009
Date Published: 25 January 2009
Wow, I’m really getting a late start on this post. I’d meant to come up with some goals for the year back at the start of the month, and here it is nearly February and I’m just now getting to it. So before the kids start screaming or some other emergency distracts me, here’s some quick things I’d like to achieve (personally, not business) by the end of 2009: Get In Shape (obligatory)– I’m hovering…
Zune Feature Requests
Date Published: 04 January 2009
I've been the proud owner of a black Zune 30 for a couple of years now. I think it's great and I really don't foresee a need to get a Zune 80 since I've never come close to using the 30GB of space available, even when I've put a dozen or so movies on the thing. The upgrades in software have been nice, though I do miss the quick list feature that used to be there on the device. Of course I noticed…
Travel Gadget – Power Splitter
Date Published: 22 July 2008
power splitter Something I always keep in my laptop bag is a Liberator power splitter. All this does is split one power outlet into two, with a little bit of extension cord thrown in for added convenience. You can find a wide variety of such things here. Always Enough Power For You So, what’s the big deal about having one of these? Well, you could throw a whole power strip in your bag, but that’s…
Blog Roll
Date Published: 13 July 2008
I want to update my blog reading habits and make sure there aren’t really great bloggers out there of whom I’m unaware (I’m sure there are plenty). If you’d like to help out, please email me with your top 3 bloggers whom you actually read on a regular basis. Please *leave out* the really big and obvious names like ScottGu,Jeff Atwood,ScottHa, and Phil Haack. I’m already subscribed :). You’re also…
Word 2007 Search Commands
Date Published: 13 July 2008
I recently complained on Twitter that the UI in Office 2007 (and specifically Word in this case) makes it incredibly difficult to find many of the things that I knew how to find in Word 2003/2000/XP/97/Every. Other. Version. This is understandably frustrating and I don't really see the Ribbon UI as a quantum leap forward in UI design. I do think it's nice, in many ways, and does make it easier to…
Going Solo Birds of a Feather Follow Up
Date Published: 10 June 2008
Last week I co-hosted a birds-of-a-feather session with Julia Lerman on Going Solo. Julie and I did a similar BOF session a couple of years ago at another TechEd and both times we’ve gotten a pretty good crowd. In an effort to continue the conversation and help people learn about the challenges of running your own business (be it consulting, ISV, or whatever), we are pointing anyone interested at…
Atlas Tripped Over His Own Feet
Date Published: 02 June 2008
Through Lake Quincy Media, we work with a variety of ad management platforms used by our customers. This is a story about Atlas, as told by our CEO Michelle. It is not a pleasant story, as a Microsoft customer and evangelist (Microsoft acquired Atlas a little while back), and hopefully there is enough constructive criticism in this story to qualify it as more than a simple rant. Read on… In our…
Implementing a Session Timeout Page in ASP.NET
Date Published: 02 April 2008
Introduction In many applications, an authenticated user's session expires after a set amount of time, after which the user must log back into the system to continue using the application. Often, the user may begin entering data into a large form, switch to some other more pressing task, then return to complete the form only to find that his session has expired and he has wasted his time. One way…
Review - eXtreme.NET by Dr. Neil Roodyn
Date Published: 06 March 2008
Review eXtreme .NET by Dr. Neil Roodyn provides a good introduction to Extreme Programming (XP) to .NET developers. The book's examples are in C# and include common XP tasks such as refactoring and writing unit tests. The book also includes exercises for the reader, which provide opportunities to gain practical experience, and which also may make the book appropriate for use in a classroom…
Review - Money for Content and Your Clicks For Free
Date Published: 26 February 2008
Overview "Money for Content and Your Clicks for Free" is by cartoonist JD Frazer, aka Iliad, author of the popular computer geek cartoon series, User Friendly. Right away, this should tell you that this book is not going to be boring to read and dry like many advertising and economics books can be. What is more, JD Frazer had direct experience building up an online community site driven by…
Extending the DropDownList to Support Enums
Date Published: 04 December 2007
Introduction A fairly common task in some of the applications I work with is to provide a user with a DropDownList of options that is populated by an enum. This can easily be done with a little bit of code to bind a stock DropDownList control to the enum, but this kind of thing quickly starts to violate the DRY (Don't Repeat Yourself) principle, so I created a simple derived DropDownList control…
Zune Hacks
Date Published: 19 December 2006
These are some cool links I've found for my Zune so far: HOW TO – Copy data off a Microsoft Zune (use as a hard drive) http://www.makezine.com/blog/archive/2006/11/how_to_copy_dat.html How To Bypass The Zune's WiFi Sharing DRM http://www.gizmodo.com/gadgets/portable-media/how-to-bypass-the-zunes-wifi-sharing-drm-217042.php HOW TO – Run Zune Software on Windows Vista http://www.modaco.com/zunevista…
Google Spreadsheets Announced
Date Published: 08 June 2006
From Online Media Daily: Google Unveils Spreadsheet App by Shankar Gupta, Wednesday, Jun 7, 2006 6:00 AM ET IN A MOVE THAT GIVESconsumers another reason to use Google for more than just Web searches, the company Tuesday released a spreadsheet program into a closed beta test. The new Google application not only allows users to post data to a Web-based spreadsheet, but also enables users to share…
Adobe, PDF, Microsoft, and Office
Date Published: 02 June 2006
Office 2007 won’t include Save As PDF by default, but you can still get it as a free download. More information here– I’ll save the analysis for others. http://blogs.msdn.com/brian_jones/archive/2006/06/02/613702.aspx
Visual Studio Debugger Tips and Tricks
Date Published: 29 May 2006
Introduction Visual Studio 2005 provides a powerful debugger which makes stepping through your code to find problems a breeze. However, sometimes it offers too much information, and it can become tedious to find just what you are looking for amidst all of the extra noise. Fortunately, the debugger can be customized using a few simple techniques. TMI! Too Much Information Many times the debugger…
Atlas GeoTagging Tool
Date Published: 11 May 2006
DotNetSlackers has a new Atlas tool written by Alessandro Gallo that combines geotagging, Flickr images, and a mapping tool. Pretty cool. One of these days I will have to play with Flickr…
Mini Microsoft Blog
Date Published: 24 March 2006
Just found the Mini-Microsoft blog– definitely a good read. I’ll be back.
IE6 Flash Eolas Patch Workaround
Date Published: 08 March 2006
I’ve been dealing with the IE6 Eolas Patch that was released last week (February 28) via Windows Update as an optional download. This patch affects IE by forcing the user to click on any active content (Flash being the one I’m concerned with here) to activate it before the use can interact with the content. Since I don’t want my Flash movies to alter their behavior in response to this patch, I’m…
Another Viral Marketing Buzz Campaign Almost Over
Date Published: 06 March 2006
Ron McDaniel who is into Buzz Marketing posted about the TextPayMe marketing effort that I’m participating in. When I last checked, they’d given away 11 $300 XBox 360 systems (5 of which appear to be to the same CP from Washington). That works out to about $3300 assuming they’re paying retail, which is unlikely. Considering the amount of buzz they’ve generated through this contest, and the number…
Review - BrowserHawk 9
Date Published: 08 February 2006
Bottom Line Up Front If you need to detect browser capabilities, browser settings, Java, JavaScript, or Flash, then I would strongly recommend you download cyScape BrowserHawk and give it a test drive. I found the product to be very mature, well-documented, easy to use, and full-featured. What issues I did encounter were "user error" (i.e., my fault), but even still cyScape's support was very…
Handy PowerPoint Tips
Date Published: 12 September 2005
Clemenscame up with a handy VBA macro that makes copying diagrams from one PPT to another much less painful. He explains the problem in more detail in his blog entry, but the basic issue is that different powerpoint files may use different color schemes. Copying from one to another may change all the colors in your diagram, often in ways you’d prefer to avoid. Another trick I recently learned…
Two Kinds of Writing
Date Published: 27 August 2005
If you don’t know me, just click here. Detailed Version If you do know me, you should read this interesting article(ok, blog entry) by Seth Godin, marketing guru, about why we are overly verbose when we’re trying to get information across to strangers, but typically too curt when we’re seeking to win over our friends and colleagues. I’m only telling you all this because, if you’ve read this far…
Laptop Stands
Date Published: 19 August 2005
I got a new laptop stand from my buddy Scott Cate last week which is making me much happier. I used to have to hunch over all day so I could look directly at my laptop screen, and I didn’t want to spend $100+ for a manufacturer laptop stand (and I don’t need a port replicator). So Scott’s cheap but effective (and light and portable!) solution seems to be working quite well for me. Here’s my setup…
Tip For Employees – Don't Stop Looking
Date Published: 28 July 2005
A few years ago, I worked for a consulting company for five years, which during that time (and somewhat still today) was quite a long time to remain with one company. It was a common occurrence for clients to offer me positions in their companies, but this practice was strongly frowned upon by my employer, who actively discouraged such recruiting. I never ended up accepting any such offers, but…
Write For AspAlliance
Date Published: 19 July 2005
As Ambrose has already announced, and Cindy has noted as well, AspAlliance.com is looking for more content. We’ve recently revised our article compensation model to make it much simpler and to provide a greater up-front incentive to our authors. The site publishes technical articles, product reviews, and even simple code snippets and samples that others may find useful. Anything relevant to ASP…
Google Earth
Date Published: 14 July 2005
If you haven’t played with it yet and you have a decent computer, download Google Earth. It’s very cool. It’s a desktop application that lets you view aerial imagery of the planet. You can basically fly around and zoom in and out, and it downloads the imagery on-demand (requires decent network connection). I was able to find the bases I visited while I was in Iraq last year pretty easily, and…
Reason Number 10,001 Why I Am Glad To Be Self Employed
Date Published: 14 February 2005
This article, When Blogging Gets Risky, talks about some of the negative effects blogging can have on employees when their employers read everything they say on their blogs. It also makes a good point that companies should have blogging policies, and talks about some success stories for companies who have embraced blogging (Sun, Google), though notably absent is Microsoft despite their hundreds of…
ASP.NET Whidbey Overview
Date Published: 29 March 2004
Introduction ASP.NET was first previewed at PDC in July of 2000. The first beta followed about a year later and the actual RTM of ASP.NET 1.0 came in February of 2002. ASP.NET 1.1 and Visual Studio 2003 came about a year after that, but did not include many feature updates. ASP.NET 2.0 / Visual Studio 2005, collectively code-named 'Whidbey', have been in development since before ASP.NET 1.0 was…
ASP.NET Caching Tips from PDC 2003
Date Published: 30 October 2003
Caching Tips I hosted a Birds of a Feather Session at PDC 2003 which was attended by about 30 people, including Rob Howard from the ASP.NET team. During the course of the event, a number of tips and resources for caching in .NET were revealed. The highlights are listed here. Output caching, even for just a couple of seconds, can dramatically reduce database load if pages are being hit several…
Review - Vault Source Control
Date Published: 27 October 2003
Introduction - What is Vault? SourceGear Vault (Version 1.2.2 as of this writing) is a version control system for Windows developers. If you've used Visual SourceSafe, Vault is a similar (but much better) product. It is built entirely on the .NET Framework with a SQL Server 2000 backend storage system (as compared to VSS's file system storage system). A key feature of Vault is its backward…
ASP.NET Whidbey Caching Overview
Date Published: 27 October 2003
Caching in 1.x... ASP.NET Caching in 1.x is very powerful and includes three pieces: output caching, fragment caching, and the cache API. The simplest form, output caching, simply caches the output of a page. Fragment caching is a bit more granular, and caches the output of a user control. Finally, the most powerful caching functionality is achieved using the cache API, and allows any…
Dynamic Excel Reports with ASP
Date Published: 20 September 2003
Technique There are many situations in which you may wish to convert table data into an Excel spreadsheet format for the user. There are several methods available for doing this; I will describe in this article one of the simplest ones. It basically tricks the user's browser into thinking the HTML it is downloading is actually an Excel document, and then Excel does the rest of the work by parsing…
Review - Dundas Chart 3.5
Date Published: 27 July 2003
Installation Dundas Chart 3.5 (in beta at time of publication) is the latest version of Dundas' Charting component for ASP.NET. I've had the opportunity to use it for some simple real-world applications I've been building, and I thought I'd share my experiences here. Detected and uninstalled previous version - no problem. Installed in about 5 minutes with no errors or problems. My configuration…
InfoPath / XDocs
Date Published: 26 July 2003
I'm learning more about InfoPath (formerly XDocs), and it seems like it'll be a really cool addition to the Office toolset. Has anybody had much of an opportunity to play with this using the beta? What did you think?
Outlook 2003 Beta
Date Published: 23 July 2003
Thought I'd blog about my experience thus far with the beta. As I wrote in an earlier entry, I upgraded to Outlook 2003 Beta some weeks ago. The results have been largely positive, but I do have a few complaints. Here's the rundown: Best Features: Junk Mail Support - It has yet to mis-classify a message as spam, and it has reduced my spam that I actually have to deal with by about 90 to 95% I'd…
Trying out w.bloggar 3.01
Date Published: 18 June 2003
I just installed w.bloggar 3.01 and the WMPAmplog Plug-In. Let's see how it works... I used Daniel Bright's setup instructions to get set up in about 20 seconds. If you're reading this, everything must have worked. Ah, something for the wmpamplog FAQ - it doesn't work until you exit and restart Winamp. Pretty easy one to troubleshoot, though. Also looks like I'll have to set up my own CSS file to…
Outlook 2003 Beta 2 (was Outlook Express)
Date Published: 12 June 2003
I'm finally upgrading from OE to Outlook on the advice of Brian Tinkler of the Wisconsin .NET User Group (among many others over the past few years). The main reason that I stuck with/chose OE over Outlook was that Outlook97 didn't have an easy way to select which FROM address to use for emails, and I was frequently switching between several POP3 accounts from several organizations. OE had a…
Review - MaxiVista Desktop Sharing Software
Date Published: 19 April 2003
Review Let me preface this review by saying that I'm one of those people who never has enough desktop space. I've got a laptop with a WUXGA screen that I run at 1920x1200 and it's still not enough room. A large part of the reason for this is that I typically have open Outlook 2003, Visual Studio .NET 2003, a few IE6 windows, and a few instant messenger windows. Since I like to be able to keep…