FogCreek Posts

FogBugz SnagIt Output

Thursday, October 30, 2008 by Michael H. Pryor

Using the FogBugz Output Accessory with SnagIt

The FogBugz Output is the easiest way to get screenshots into FogBugz.

Download FogBugz.snagacc (249.46 kb)

Configuring the FogBugz Output Accessory:

The only thing necessary to configure the output accessory is telling it the URL for your FogBugz site, so it knows where to submit the screenshots.

From the SnagIt Editor, go to the Send tab and click on the arrow below FogBugz. Choose Options from the menu.

Enter your FogBugz URL:

Capture the Screenshot with SnagIt:

SnagIt includes a huge number of options for capturing and editing images.

Send the Screenshot to FogBugz:

On the Send tab, click on the FogBugz icon to create a new case with the image:

If you are not already logged on to your FogBugz account using Internet Explorer, you will be prompted to log on.

Other Options

Use the Existing Case... menu item to send a screenshot to an already existing case instead of opening a new one.

Use the New Email menu item to send a screenshot as a new email message through FogBugz.

Use the Send Reply menu item to send the screenshot as the reply to an email message received through FogBugz.

Troubleshooting

The FogBugz Output Accessory always uses Microsoft Internet Explorer to transmit the screenshot to FogBugz, even if your preferred browser is set to something else. Therefore, Microsoft Internet Explorer needs to be setup so that it can reach the FogBugz server. If you are having trouble sending screenshots to FogBugz and use a different browser, try running Internet Explorer once, and ensure that it can reach the FogBugz server and get you logged on.

Note that once the screenshot has been transmitted, the FogBugz Output Accessory will launch your preferred browser so that you  can edit and submit the case with the attached screenshot.

FogBugz Review

Monday, October 27, 2008 by Dan Ostlund

Peter Kent of Peter Kent Consulting wrote a nice review of FogBugz, and all the different ways you might use it yourself.  Take a look!

 

Categories: FogCreek | FogBugz
Tags:
Actions: E-mail | Permalink

Export a Filter to CSV

Wednesday, October 22, 2008 by Michael H. Pryor

Have you ever just needed to export a FogBugz filter to CSV to import into Excel or some other application and you really didn't want to figure out the API?  Well, John Januszczak from Meta Software just made that really easy for you.

BugzReport is an open source Windows desktop app that will export any FogBugz filter to CSV files.

In the next version of FogBugz, this action will just be one click, but right now you can do it with the current version using this awesome tool.

Categories: FogCreek | FogBugz
Actions: E-mail | Permalink

FogBugz Screenshot Hot Key

Tuesday, October 14, 2008 by Michael H. Pryor
  1. Create a shortcut to your screenshot.exe program under c:\program files\fogbugz\screenshot
  2. Right click the shortcut and choose "Properties..."
  3. Add /picture to the end of the target - making it "C:\Program Files\FogBugz\Screenshot\screenshot.exe" /picture
  4. Assign a hot key to the shortcut.
  5. Drink a lemonade.
More info courtesy of Stack Overflow's question on screenshot tools.
Categories: FogCreek | FogBugz
Actions: E-mail | Permalink

MySQL corruption

Sunday, October 05, 2008 by Michael H. Pryor
We have a fair number of customers who contact us with MySQL corruption horror stories.  Hopefully this blog article will help them recover their database.
Categories: FogCreek | FogBugz
Tags:
Actions: E-mail | Permalink

FogBugz on Windows 2008

Thursday, October 02, 2008 by Michael H. Pryor

FogBugz 6.x will work fine on Windows 2008.  The only things you need to do are

  1. Install IIS 7 (it doesn't come preinstalled) and check off the boxes for .NET/ASP/CGI/etc


  2. Disable DEP by typing "bcdedit.exe /set {current} nx AlwaysOff" on a command prompt. And then make sure you reboot afterwards.


Categories: FogCreek | FogBugz
Actions: E-mail | Permalink

Change your logo..

Thursday, April 03, 2008 by Michael H. Pryor

I have a bit of a confession to make.  I spend a lot of time interacting with customers (which I'm told is a bit out of character for the president of the company) but I enjoy getting feedback from them and it helps me know where we need to focus our efforts.  We get some requests over and over again and while to the end user they may seem very simple to implement, the reality is far from that.  But that wasn't going to stop me from getting a feature out that I really wanted customers to have in this latest release (coming to On Demand later this week).

One request that we get fairly often is the ability to customize the look of different parts of FogBugz, particularly the logo.  It probably makes the kiwi a little sad, but I understand ... no hard feelings.  The only issue is that FogBugz is not the same application it used to be when I used to write code for it in version 2.0 and 3.0.  It has lambda functions, code generators, ajax requests;  which is fine for our brilliant developers but not for me and my limited IQ... one change here can affect a bunch of things over there that you never expected.

I had a bit of free time and I thought, "How hard could it be to let people upload a new image for the logo?"  It turns out, in this case it's pretty complicated.  To upload files, a form needs to have a certain encoding: multipart/form-data.  In php and asp, it's not trivial to decode this file upload, and in asp in particular it means you have to treat the rest of the form elements differently than you would have if it was a normal form post.  We do this for cases currently, but it means I couldn't just throw a File Upload input in an html form on the Site Configuration screen.  Also, storing files in the database requires a special table that will hold binary blob data.  We already have this for uploaded Attachments in FogBugz.  And if we're going to be serving a file from the database, I had to make sure the browser would cache it for a long time, but still download a new one if an admin decided to change it.  It just meant my tiny little code change was growing into a bigger code change, which meant it was unlikely to get done because of the amount of effort it would take.

So in the latest minor version we're about to push out, I piggybacked my feature on the already existing File Upload mechanism.  I protected it so users' couldn't just mine for any old attachment, and I made it so when you change the logo, your browser knows to download a new one.  Unfortunately the user experience is, well, a bit clunky.  You have to make a case, add your logo, and then copy the link for the logo to the site settings  -- rather than just clicking "Browse..." and uploading a new file on the Site page itself.  Since this isn't a feature that would get used daily, or even monthly, I'm hoping I get some slack for my albeit strange design and that people are happy to use it.  

Categories: FogCreek | FogBugz
Actions: E-mail | Permalink

More feedback (unsolicited!) for Fog Creek

Monday, March 03, 2008 by Michael H. Pryor

An email from a customer who had posted a job, received no response, and then decided to run the add for an additional 3 weeks: 

Success!

We hired someone we got from the Joel board, and our second best candidate also found us there.

Thank you!

Cash that proverbial check.

Best,

Larry
 

 And another email we received about Fog Creek Copilot:

Hi Guys,

I'd like to thank you very much for helping solve a very important customer's problem.

As a long time Fogbugz user I had high expectations of CoPilot, all of which were met.

I had concerns about how difficult it would be for me to connect to my customer, but all was seamless.  I managed to solve their problem in 2 minutes instead of the 30 minutes of phone calls it would have taken previously.

A very happy customer,
 
Byron 

Categories: Copilot | FogCreek | FogBugz
Tags: , ,
Actions: E-mail | Permalink

Work at Fog Creek

Wednesday, January 09, 2008 by Joel Spolsky

Fog Creek Software has a bunch of great job openings right now. All are based out of our offices in New York City.

Categories: FogCreek
Actions: E-mail | Permalink

Customer service as a competitive advantage

Wednesday, August 15, 2007 by Jason Rosoff

In the early part of this year, I read Joel's 7 Steps to remarkable customer service. The piece resonated with me, and it was one of the reasons that I applied to the SMTP program. Customer service in the world of technology is, generally speaking, an embarrassing and dehumanizing process. Here was a person who believed that there was a better way to do it.

Shortly after joining the company, I asked the question "Why do we give this information away freely? Aren't we concerned that our competitors are bound to read it, see the wisdom of it, and emulate it?" At that point, I had about 4 weeks of customer service duty under my belt and was confident that this model could be scaled and replicated. Now, after 6 months and lots of conversations with customers, I understand why it is to our advantage to let people know that this is the way we do things.

It is hard work.

Real customer service is emotional labor. You have to dance between being truly empathetic to a frustrated customer's problem and self preserving as a customer, pushed beyond the limits of human endurance, takes out their frustrations on you directly. The former is the norm and the latter the exception, but both efforts take a lot of energy. Add to that the fact that the problems I am asked to solve are frequently subtly complex technical issues, and I am spent at the end of the day. The payback comes in the form of a tremendous sense of satisfaction from seeing Joel's suggestions work to make not just satisfied but fanatical customers.

The problem is, I honestly don't think most of the people that apply for customer service jobs could do it. Either they don't have the people skills, but are excellent technically, or they don't have the technical skills. This is not to say that I am a phenom, by any means. It is proof positive of the draw of the promised career advancement once the customer service stint is over.

I am willing and motivated to work hard because these are the same customers that I hope to be serving as I move on to QA and Marketing and, eventually, to management. Understanding them, and their needs, gives me the information I need to make decisions and trades-offs about the products on which they rely. If you ask most customer service people what they do, I bet they would say "I answer email and telephone calls". Customer advocacy is my job. It is the best way to keep customers happy and continue to increase our revenue

You have to get the environment right.

To get people motivated and give them the tools they need to do the job of customer management takes real effort. While Joel's steps are conveniently broken up to make them more understandable, combined they create the environment necessary to make my daily efforts possible. The entire company is oriented toward the customer. We are constantly evaluating how what we do and what we say will affect our customers.

This is hard to believe for some customers because they have been asking for this one feature (or that one) for 2 years, and we haven't implemented it. Although it is easy to imagine us in our ivory tower laughing with scorn at your feature request, I can honestly say that we agonize over our decisions as to which features to implement when. We honestly feel badly about not getting to your suggestion, but we can't cloister ourselves for 10 years writing the next version, so we need to choose.

Our incredibly lenient return policy allows me the freedom to say to someone "Try it, if you don't like it you get your money back immediately, no questions asked" and "I can't recommend that you buy FogBugz because it isn't going to do everything you want" and "I am really sorry that we couldn't get you connected, here is your money back and a free pass for your next connection". All of this is intended to show that the second reason we aren't at risk is that it is almost impossible to replicate this environment without tremendous effort, and true belief that it is worth it.

By telling customers that this is how we do business, and actually sticking to it, we make our customers confident in our ability to make them happy. We get more risk takers and advocates that push our products into markets where they might otherwise go unnoticed. And my life is better because when customers call or email, they (mostly) treat me like a human being that wants to help them, instead of their worst enemy.

We aren't at risk at all; we have a distinct advantage, a differentiator. While other service organizations understand that these are good ideas, they aren't able to implement them (the environment isn't right) or they won't implement them (don't want to do the hard work). In the rare cases that I come across one that is able and willing, dealing with the company is such a pleasant departure that I find myself liking them, even if they are one of our competitors.

Categories: FogCreek
Tags: ,
Actions: E-mail | Permalink

Finding FogBugz Documentation Quickly

Wednesday, June 06, 2007 by Jason Rosoff

Customers often ask us questions like, "How do I safely move FogBugz to another server?" or "How do I fix email notifications" -- things we've documented in our FogBugz knowledge base at fogcreek.com.  While we are truly happy to answer any and all questions via phone or email, I wanted to share with the FogBlog readers a few tricks that we use to make searching our support documentation easier and faster.

Google's search indexes all of our websites, so it's a great tool for quickly finding relevant help documents.  Many browsers now have a built in search box that will allow you to do this without having to open a new browser window. 

There are a few powerful ways to help Google get you to the right results quickly.  If you know which product you need information about, you can structure the search like the one seen above: fogbugz [your issue or error message].  Here a few common searches that help a lot of people:

If you are a bit less sure about the search, but know you want the answer from a Fog Creek website, you can structure your Google search like:

site:*.fogcreek.com [your issue or error message]

Last but not least, you can bookmark our support documentation homepage for your product.  The main FogBugz documentation page, for example, is at http://www.fogcreek.com/FogBugz/Support.html.  For CityDesk, it's http://fogcreek.com/CityDesk/TechSupport.html.  You can use the search box there to more specifically search just the knowledge base or the discussion forums.  If you still can't find what you are looking for, you are one click away from customer support; just follow the link to Email Us.

Categories: FogCreek | FogBugz
Tags: ,
Actions: E-mail | Permalink

Customer Service: Tools, Techniques, Training -- And Breaks

Tuesday, June 05, 2007 by Sumana Harihareswara

We want to provide remarkable customer service.  Our boss Joel has some tips on how we do that, including treating your customer service persona as a puppet, taking the blame for problems, and cheerfully refunding customers at the drop of a hat.  They're great.  Today I'll discuss a few other nuances of our customer service practices, and how FogBugz helps.

Ralph Wilson mentioned in his great textbook Help! The Art of Computer Technical Support (Peachpit Press, 1991) that customer service, via email, phone, or face-to-face, is emotional labor.  We're mechanics, yes, but we're also counselors.  If you have zero training and countdown timers on your support calls, then you're set up for frustration, failure, and burnout. You need breaks, you need tools, and you need techniques and training.

  • Breaks: Our official office hours for phone support are 9am-5pm, Eastern Time, Monday through Friday (although in practice we often stay here an hour or two later).  During that time, we have 2-6 people available to answer sales and customer support calls.  This means we can take snack, lunch, bathroom, and discussion breaks without always diving back to our desks at the first ring.

 

 

  • Training: At Fog Creek, front-line customer support folks use FogBugz to enter bugs and manage customer help requests, Fog Creek Copilot to fix FogBugz problems for customers, and CityDesk to write documentation (including this blog!).  We're using the same software our customers use, so we know its quirks, and we can follow assumptions and jargon in help requests.  And we read the knowledge base, install FogBugz on our own computers, and answer easy questions before the harder emails and phone calls get thrown our way.

 

  • Techniques: Wilson describes many useful techniques in Help!.  One of them: most callers welcome a bit of guidance on the call, so it's fine to structure it to get the problem solved efficiently.  As early as possible in the call (without interrupting the customer), I try to introduce myself, figure out what product's being discussed, and get the caller's name and phone number or email address.  "In case we get cut off, could I get your contact information?" always works for me.  And FogBugz makes a perfect place to store my notes as I create them during a call; you could even create a template snippet to remind yourself to gather certain information.  (This entry is already getting long, so I hope we'll talk more about specific techniques in a future post.)

The first books we management trainees read here at Fog Creek include Mike Gunderloy's book on FogBugz and Dale Carnegie's How to Win Friends and Influence People.  We need both technical and personal skills to provide great experiences to our users.  And Fog Creek helps us learn and deploy those skills, and teach them to the next round of trainees.

Categories: FogCreek
Tags: , ,
Actions: E-mail | Permalink

Competing with Open Source

Thursday, May 31, 2007 by Sumana Harihareswara

On the Business of Software forum, someone recently asked: how can software vendors compete with open source software?  Fog Creek is no stranger to that question.  FogBugz started as a bug tracker, and there are plenty of open source and proprietary competitors in that field.  And Fog Creek Copilot, our remote desktop service, incorporates software from the open source VNC project, and competes with various flavors of VNC and other open source and proprietary alternatives.

Our products compete against lots of other products - free and not, proprietary and open source.  To compete against all of them, we focus on the true, underlying interests of prospective customers.  (Yes, we management trainees just discussed "Getting To Yes" at work.)  I'm going to talk about how FogBugz and Fog Creek Copilot compete.

People consider using open source products for a few reasons. One possible customer interest is "saving money so I can look good to the boss."  In that case, we might talk about total cost of use and ownership.  We can compete there, since setup and support are so quick and easy.  And if the customer wants to see the source code and modify the look-and-feel, for control and reassurance, FogBugz has that too, since you can view and change the source code and the database schema.

But if a core desire for the customer is "using open source for ideological reasons" or "using in-house resources to massively customize all applications," then FogBugz is basically not going to meet that interest.  It's not for them.

You've probably also heard about other ways to compete with open source software: better design and user interface, brand reputation, customer service, features, ease of setup, and so on.  And we absolutely do compete on those factors, for example against Bugzilla, and also against quite a few commercial bug trackers.  But they aren't ends in themselves.  They all serve underlying customer interests.  A few examples:

  • Avoiding hassle: Using Bugzilla is like interacting directly with a database using a web form; the user has to learn to behave like a computer.  FogBugz sets up in minutes and treats users as humans, so it takes practically no time to learn.   Everything just works.  That way, customers can do what they're good at, instead of wasting time configuring a tool that's supposed to help.  The design, and our quick, smart support, reassures customers and saves them time.
  • Painless migration: People have fled from Bugzilla to FogBugz so many times that we actually wrote a special importer for Bugzilla databases.  We get emails from users literally begging us to help them convert their Bugzilla database to a FogBugz database.  Now every instance of FogBugz ships with this script.  So that's another way we compete: we make it very easy to switch. This saves customers time and worry.
  • Vendor responsiveness to customer requests: We have a built-in screenshot tool so testers can submit screen captures as bugs in just a few clicks.  We did this because customers asked for an easy way to attach screenshots, and we took that one step further to make the experience seamless and intuitive.  Customers get better bug reports, improving their software quality.  This works right out of the box and Bugzilla doesn't have anything like it.

As a service, Fog Creek Copilot has a different kind of competitive advantage.  It works through firewalls because we host a reflector.  We manage the server and pay for the bandwidth.  So it doesn't matter that we provide the client applications' source code under the GNU Public License.  Any copycat service would also have to provide a reflector (which costs money) or give up the core customer need of ease of use (because it wouldn't work through firewalls).  The partially hosted architecture provides some shielding against open source competition, but only because it fulfills a key customer interest.

Don't forget that competition intensifies over time.  Your competitors will watch your software improve, and copy it, and there will come a time when you can't make money off it anymore.  Open source developers are great at cloning.   Good software takes ten years but then it's done, and you will have copycats every step of the way -- open source and closed source.  In the long term, we hope that customer service, brand reputation, and other stuff outside the actual codebase will give us an advantage others can't duplicate.

Categories: FogCreek
Tags: , ,
Actions: E-mail | Permalink

Introducing the SMTP team

Thursday, May 17, 2007 by Eric Nehrlich

You're going to see increased traffic on this blog starting now, as Joel and Michael have asked the members of the Software Management Training Program (SMTP) team to talk about our experiences at Fog Creek Software, our products, and the people that work here.  If you've had any interaction with Fog Creek over the past year, you've probably talked to one of us, as we have been handling customer service as well as a variety of other responsibilities around the office, but this will give us an opportunity to talk more broadly about what's going on here in the office.

By way of introduction, we are:
Sumana Harihareswara, handling marketing for Fog Creek
Eric Nehrlich, developing the quality assurance department
Dan Ostlund, leading the sales efforts
Jason Rosoff, managing technical support

If you have any questions about Fog Creek Software, its products, or the SMTP program, drop us a line at customer-service@fogcreek.com and we'll be happy to answer you!

Categories: FogCreek
Actions: E-mail | Permalink

FogBugz for Customer Service

Thursday, October 12, 2006 by Sumana Harihareswara

We use FogBugz, Greasemonkey, Asterisk, and Snappy to manage Fog Creek's customer emails, phone calls, and faxes.  It's great for customer service, and for generally managing communication.  Here are some details.

There's a comprehensive email system in FogBugz that both allows email into the system and sends responses back out, tracking emails using case numbers in their subject lines.  We use "FC" as our unique prefix.

Sometimes people want to track their customers explicitly with Clients, Areas, or something like that.  That could make sense if you only have a few clients.  You can change the name of either the Computer or Version fields to whatever suits your needs, such as "Customer ID."  Also, as long as you're using SQL Server or MySQL for your database, you can use FogBugz's full-text search, which includes email addresses and case comments, whenever you're looking for something.

We have lots of customers, so instead of dedicating an Area or the like to each customer, we use search to track and find cases dealing with a particular customer.  We also use "see also from this correspondent" and "see also from correspondents at this domain name."  Those links appear automatically in a FogBugz case where email's been sent or received.

We also use a Greasemonkey script with our Firefox web browsers to automatically pull relevant customer information from our web shop's DB onto our FogBugz screens.  The key for us is the Correspondent email address, but you could use a customer ID number.

We use FogBugz to track phone calls as well as emails.  Whenever I receive a phone call for support and I don't have an immediate answer, I click "New Case" in FogBugz and start entering details.  Or I'll use FogBugz email to send a sales prospect information they request on the phone, and set a due date to remind me to ping them in a few weeks.

Our phones run on the open source Asterisk switchboard software, and we set it to turn voicemail into sound files and email it into FogBugz.  That way, each message a customer leaves for us turns into a FogBugz case.  We've set up separate email addresses and FogBugz mailboxes for sales and support messages, so FogBugz learned quickly which Inbox Area to put those cases in.  Incidentally, we also receive personal voicemails as emailed sound files, which I much prefer.

We do the same thing with faxes, using Snappy Fax Network Server.  Snappy receives each fax, turns it into a TIFF, and sends an email into FogBugz with the TIFF as an attachment.  Again, FogBugz learned quickly that those emails belonged in the Fax Area.

Our online shop sends special email into FogBugz if there's an error or a suspect charge to approve.  Our online contact form feeds into FogBugz, as does recruiting email.  And of course we use BugzScout to automatically turn crash reports from the field into cases.  It's our centralized repository of knowledge, it's easy to extend, and it's just one database to back up.

Categories: FogCreek | FogBugz
Tags: ,
Actions: E-mail | Permalink