The command "cmd /c ""%VS100COMNTOOLS%vsvars32.bat" && sgen /nologo /assembly:"FOO" /force /type:BAR"" exited with code 255.

I got this when building a solution in Visual Studio. In order to figure out what the cryptic code 255 means, I ran this command at the command-line to see if there was additional output. I got:

"C:\Program was unexpected at this time.

It then printed my path and I noticed there were some entries with quotes. I removed the quotes in the path and tried again, and it worked. So the problem is that quotes cannot appear in your path to run the command as it is entered. I originally entered these in to appease Cygwin.

Read on →

A Debugging Blog

The premise of this blog is that in my day-to-day activities, I run across things that take me awhile to figure out. In an effort to help those that are searching online, it would be nice to put my findings somewhere. My main blog doesn't seem to be the right venue for this, since it contains longer articles and essays.

I was inspired to do this when working with Android and realizing how few solid resources there were at times. The edges of technology are more difficult to work with. It would have been handy to show myself and others how much I had learned, and for people to take the journey with me as well.

Read on →

What Does Everyone Know You For?

I can assure you that people believe you have skills that you don't actually have. They also don't know about some great skills that you do have. These phenomena are a result of personal marketing efforts–whether intended or unconscious.

Owning concepts

The 22 Immutable Laws of Marketing by Al Ries and Jack Trout contain a few laws that I'd like to highlight:

  • The Law of Exclusivity: Two companies cannot own the same word in the concept's mind.
  • The Law of Leadership: It's better to be first than it is to be better.
  • The Law of the Mind: It's better to be first in the mind than to be first in the marketplace.

Now consider the following categories and who pops into your mind:

  • a giving person
  • a great programmer
  • a do-it-yourself mechanic
  • a politically liberal or conservative person
  • a talented artist
  • someone who sells things online
  • someone who is in fantastic shape

My experiences

Generally I can think of only a person or two for any given category. I don't know why this is the case. But not knowing the reason does not stop it from being a useful thing to know about.

Read on →

The Four Noble Truths of Coding

The four noble truths in Buddhism are, approximately:

Life is suffering. The origin of suffering is attachment, due to ignorance. The cessation of suffering is attainable. The eight-fold path leads to liberation.

I was coding happily along, and realized in a flash of insight that this applied to what I was working on.

In coding, suffering comes from:

  • not being comfortable making a change because you don't quite understand how the system works
  • working hard but realizing your code is still buggy
  • a client being less than impressed by "a change that couldn't break anything", but did
  • not being able to refactor because you can't see all of the implications
  • wondering if this ever really worked at all
  • having that bug pop up again, although we thought it was fixed
  • not delivering with quality and on time

The Four Noble Truths of Coding

Coding is suffering. The origin of suffering is attachment, due to ignorance. The cessation of suffering is attainable. The path of executable specifications leads to liberation.

Read on →

A Tool for Your Toolbox: Fold Calendar

Have you ever scheduled something and then remembered you had another appointment? Have you ever had a big block of time or energy and wasted it, neither resting nor accomplishing anything?

Earlier this year I started a new near-weekly ritual. I used a tool that I found useful in college for busy weeks. The fold calendar is a way of quickly visualizing a week and using it effectively. Here's what the daily entries might look like:

Seven days of fold calendar

Basically, it lists the events of the day in chronological order, with times if I have them. It lists the main project that I want to advance this week and a couple of smaller tasks that I'd like to get done. For context, I list the big things that are happening next week as well.

Why is this useful?

This tool is useful because it:

  • helps visualize and use chunks of time
  • helps with being spontaneous
  • helps with being organized
  • helps budget time and energy

Skip down to the last section to learn how to build your own calendar, or keep reading for more context.

Read on →