Surround SCM provides complete control over software configuration management processes. With its advanced feature set, including support for parallel development, automation capabilities, and extensive IDE integrations, setting up Surround SCM for your environment may seem like an overwhelming task. The following tips can help you set up Surround SCM to ensure maximum efficiency in your development organization.
Continue reading…

Share on Technorati . del.icio.us . Digg . Reddit . Slashdot . Facebook . StumbleUpon

No Comments

Tags:

Opposition Research

Jeff Amfahr talks about Seapine on July 18, 2008

One of the things I do is look at competitive products. I do this both to understand their strengths and weaknesses as well as our own. Looking at someone else’s solution to a similar problem can often give you a fresh perspective.

As I looked at several of these, a few trends showed up. The first is that security in other products seems to be left as an exercise for the customer. I’ve talked about that before. Another area where other products take a very different approach is around triggers and alerts. This is another part of an application that either isn’t shown in a demo, or if shown the trigger is already installed and working. The user sees that emails are being generated or actions are being triggered with an aside of “all this and more can be yours with just a little script writing.”

Continue reading…

Share on Technorati . del.icio.us . Digg . Reddit . Slashdot . Facebook . StumbleUpon

No Comments

Tags:

Isaac and Ishmael

Jeff Amfahr talks about Surround SCM on July 09, 2008

As a Macintosh user it’s easy to feel left out by cross platform application vendors. Microsoft is too easy a target (though I can’t miss the chance to say I use Entourage every day and it never ceases to make me angry), so I’ll pick on someone my own size. Seapine. Although we have a fully native (that means not Java, you cheaters. You know who you are) client and servers on Linux, Solaris, Mac and Windows we don’t always make them, well, native enough. Make all the command keys match common conventions on that platform. Take advantage of platform specific technology, or the latest UI craze.

Continue reading…

Share on Technorati . del.icio.us . Digg . Reddit . Slashdot . Facebook . StumbleUpon

No Comments

Tags:

What Kind of Day Has It Been

Jeff Amfahr talks about Seapine on June 26, 2008

Like everyone else, the state of the economy is something I watch. And lately its felt like watching a slow motion car crash. I can’t look away and yet I can’t really do anything either. Some days I feel like I’m watching from the curb, and other days I’m strapped to the hood.

Despite that, Seapine Software in general and Surround SCM sales in particular are doing well. We’ve had good growth each month this year, and good growth from last year. I’d like to believe that this is due exclusively to outstanding product management. A steady and seasoned hand at the wheel, guiding Surround through the rocky shoals of a troubled economic sea. I’d like to believe that, but I’ve been told in no uncertain terms by everyone around me that it just isn’t so. There even seems to be small but vocal minority that believes we’re succeeding despite product management, not because of it. Apostates.

Continue reading…

Share on Technorati . del.icio.us . Digg . Reddit . Slashdot . Facebook . StumbleUpon

No Comments

Life on Mars

Jeff Amfahr talks about -Uncategorized, Seapine on June 19, 2008

I’d like to draw your attention to an area of Seapine’s web site you may not be aware of. Seapine has a lab site at http://labs.seapine.com, where we post things that aren’t supported yet but might make your life easier. The Surround area has some nice tips and discussions about how some things work, and some scripts and add-ons that you might find interesting.

For the Macintosh users in the audience (we’re the ones looking all smug and superior till we have to connect to our companies Exchange server), I’d like to draw your attention to some AppleScripts written by yours truly. The first is here and provides some instructions on how to use Microsoft Word on the Mac for merging and diffing documents. In addition, this has some AppleScripts for adding common Surround commands to the Word menu on the Mac.

For everyone, there is also a python script to provide a rudimentary annotate function. And this is a whole set of sample trigger scripts. You may even find a set of Window batch commands for putting Surround reports on your web site.

Since this is the lab area, some things can be a little raw. And don’t be surprised if you blow the dust off a link and find something that now is incorporated in the product. But hopefully this is a collection of tricks and scripts which can make your use of Surround that much better. Feel free to wander around the lab, and take anything you like. Just don’t put anything you find there in your mouth. Those AppleScripts can leave a nasty aftertaste.

Share on Technorati . del.icio.us . Digg . Reddit . Slashdot . Facebook . StumbleUpon

1 Comment

Your doing it wrong
Security in an application is one of those things that rarely gets discussed in a demo. Most people say “we have excellent security control” and then move on to some alluring graphical drag and drop functionality.

But security is something that lots of applications get wrong, for lots of different reasons. First, I should say that I’m not a security expert. I read Bruce Schneier’s blog and newsletter (so should you), along with all his books.

With that said, I know that real security is hard. And one of the things to understand about Surround SCM is that the security we focus on is the internal security of the application. That is, how do we prevent users once they have authenticated themselves (either using our internal authentication or an enterprise solution like LDAP or Active Directory, both of which we integrate with) from doing things they should not do.

My mental model for this is primarily that our administrators are using our security settings to either make their users lives easier or prevent them from doing things they didn’t mean to do. For example, restricting users access to some branches and repositories is often used as a way to limit the list of branches that people have to choose among. Restricting their ability to permanently remove files prevents them from doing something that really needs a whole lot of thought first and probably isn’t what you want to do.

That doesn’t mean that our security isn’t for preventing evil doers from, well, doing evil. It is. But I think most of our customers are less focused with bad users and more with mistaken users.

I’ve been looking at other products in our space, and I’m often surprised to see the approach they take to security. Either they do very little, or they require you to write custom code to accomplish what you want. One company asks you to write Perl scripts in order to enforce restrictions on commands . Now, in theory, that is very powerful. You could write your script to make sure that only users whose last name begins with Q can destroy files, and only on alternate Thursdays. That is, if you need that. And can write Perl. And can debug Perl (clearly a separate skill from writing Perl, based on my observation.) And you want to spend your time writing and debugging Perl scripts rather than, oh, I don’t know, working on the things that make your company money.

I recently saw a presentation from another company that said over 5 years only 10%-15% of the total cost of ownership of an SCM system is license fees. I’m willing to bet that if you skip looking at how security works in some other SCM system, at least some of that other 85% will be spent on liquor to help you through those Perl debugging sessions. But just look at how cool drag and drop is!

Share on Technorati . del.icio.us . Digg . Reddit . Slashdot . Facebook . StumbleUpon

1 Comment

Tags:

Slow News Day

Jeff Amfahr talks about Surround SCM on June 04, 2008

It’s not unusual for someone to suggest a feature which, in fact, we already have. It’s not even all that unusual for that person to be using the version of the software that has that feature. So I thought I would take a few minutes to point out some features in Surround that you may have forgotten, or missed during an upgrade.

Repository differences

This was mentioned in our last newsletter but I think it’s worth pointing out again. The Repository Differences window shows the difference between the server repository and your local working directory. This includes files that are missing from your working directory as well as files in your working directory not in Surround. It can even do this recursively. Check out the newsletter or the user documentation.

View/Edit file options

If you don’t want to use the internal viewer or editor for files, you can easily customize what to do using your user preferences. If you have a favorite XML editor, for example, you can tell Surround to use that when double clicking on an XML file. This is especially useful for text files, which all default to the internal editor.

File list and Repository menu

Speaking of user preferences, you can customize the list of items in the context menu for files and repositories. That way, if there are some actions you rarely perform (like sharing files) you can remove the clutter from those menus. This is also a great chance to take a look at some items like the new Open Containing Folder feature we added in Surround 2008.1.

Changelists

Although one of the primary uses of changelists is to guarantee a set of actions occur atomically, they are also a great way to group a set of actions together and give them a name. Unlike a lot of other SCM systems, Surround allows you to give changelists a human-readable name. Then, if you ever need to know “what were all the things I did to address this request” you can pull up your list of committed changelists and see.

Share on Technorati . del.icio.us . Digg . Reddit . Slashdot . Facebook . StumbleUpon

No Comments

Tags:

Evidence of Things Not Seen

Jeff Amfahr talks about Seapine on May 28, 2008

One thing I think about is release frequency. How often should we release new, non-maintenance releases of our software? As often as possible? Bi-annually? Yearly?

On the one hand, I like to give user continual improvements. When people come up with great suggestions, especially when they are straightforward, you want to get them out into peoples hands. Customers will sometimes say “How hard can it be to add XYZ” and often they are right (though just as often they aren’t.) Sales and marketing folks often like something new to talk about, but making them happy isn’t always high on my list.

On the other hand, frequent releases can be a hassle for large (and small) companies. You might need to validate that the software doesn’t break something else you use. You might need to push the update out to lots of desktops. And the constant “noise” of releases can be annoying to decide if this release is worth the time of installing.

Continue reading…

Share on Technorati . del.icio.us . Digg . Reddit . Slashdot . Facebook . StumbleUpon

No Comments

A Change Is Gonna Come

Jeff Amfahr talks about Surround SCM on May 15, 2008

Conversion can be a tricky business. No one wants to convert from one thing to another. It assumes you were wrong in some way. And you know it’s going to be hard. And what if the new thing isn’t really any better than the old thing? Then all that work was for nothing.

It seems like when contemplating a move to a new platform like Surround from an existing one, you go through the seven classic stages of grief.

  • Disbelief: Can we really move over to a whole new SCM system?
  • Denial: It’s just too big a process. Maybe next year.
  • Bargaining: Maybe we’re not using are current system right. Let’s try harder.
  • Guilt: We’ve got this huge investment. How can I just throw it all away.
  • Anger: Why is our current system such a pile? How could a company ship this kind of crud?
  • Depression: I’m going to be swamped just installing and understanding this new system for weeks.
  • Acceptance: Fine. The sooner we switch over to the new system the sooner I can get back to real work.

I bring this up, because we’re talking about conversions internally. Today, we provide a number of conversion tools from other companies SCM tools to Surround. We do this because so many of our customers our moving from a competitive product to ours. However, I’m not sure it’s actually in anyone’s best interest to provide these tools.

When people use an inferior product, they find ways to cope. They come up with “creative” branching strategies (like not branching at all). They use labels in fun and exciting ways. They use weird naming conventions to convey metadata. That’s the reason they are moving off their current system. So, why is it a good idea to try and convert and reproduce all that in their shiny new Surround system, which doesn’t have any of those limitations?

In addition, no matter how good our conversions tools are they inherently involve some level of mapping. Labels, branches, security are all similar but slightly different in each tool so after conversion the system will be similar but not identical.

Finally, I think after the conversion is complete a number of customers realize they don’t want it. I know that before I joined Seapine, I converted to Surround from Visual SourceSafe. After the conversion completed, I realized that as part of moving to Surround, I wanted to rearrange my repository structure, so I threw that out, created my new structure and checked in the tip version of all my files. I also kept my SourceSafe server running in corner for the odd occasion I needed something from item.

Considering all that, and considering the amount of time to support, enhance and test conversion tools is this a good use of time? Would customers be better served if we simply stopped converting their data, and instead focused our resources on continuing to improve Surround? If you converted to Surround from another system, I’d be interested in your thoughts on how it went, and if you regreted converting rather than starting over.

Share on Technorati . del.icio.us . Digg . Reddit . Slashdot . Facebook . StumbleUpon

2 Comments

Tags:

The Short List

Jeff Amfahr talks about Seapine on May 07, 2008

One of the challenges with any product is how to handle “bad” feature requests. Not every user idea is a diamond in the rough. Sometimes it’s as simple as being very specific to that company/department/users use of the product. Sometimes what they want is counter to what the product is really designed to do. It may just be really, really hard. Or it just may be, in your opinion, a wrong-headed idea.

In any of these cases, what do you do with that idea and how do you convey that back to the user? The typical approach is to respond with something along the lines of “Your input really matters. Thanks for the idea. We’ll definitely consider it.” And that makes everyone feel good, but it’s not entirely truthful to anyone.

Continue reading…

Share on Technorati . del.icio.us . Digg . Reddit . Slashdot . Facebook . StumbleUpon

No Comments