Author Archive

April 19, 2005

We’re in the Top 10!

Matt @ 2:48 pm

There are about 250,000 members of SpreadFirefox, and we’re currently 10th in the SpreadFirefox rollcall.

It probably won’t last long … and it might not happen again … but here’s proof.

PaperCut in the Top 10!

April 18, 2005

emailStripper recommended by Kim Komando

Matt @ 9:01 am

I’ve never heard of Kim Komando, but apparently she’s a radio show host in the US with a huge following. On the weekend she recommended our free tool, emailStripper. emailStripper strips those annoying >>>>> characters from emails that have been forwarded too many times. We wrote emailStripper about 5 years ago and its popularity never ceases to amaze us, getting thousands of downloads each month.

On the day emailStripper was recommended on Kim’s “site of the day”, we received about 13,000 unique visitors and used about 2.3 GB of bandwidth (and the day isn’t over yet). This is about 8-10 times our normal Sunday traffic of 1200 visitors and 250MB of bandwidth.

A side effect of this traffic was that our SpreadFirefox ranking jumped. Last time I checked we were 11th! Obviously many of Kim’s listeners took our recommendation of Mozilla Thunderbird and Firefox seriously.

Spreadfirefox ranking 2005-04-18

February 25, 2005

PaperCut listed in the SpreadFirefox Top 250

Matt @ 10:39 am

We at PaperCut are huge fans of the Mozilla Firefox web browser, and the Mozilla Thunderbird email client. We all use these products internally everyday.

Not only do they provide a great user experience, you’re not as susceptible to the viruses and spyware that plague the Microsoft products.

If you’re not using these products now … then start!

Get Thunderbird!Get Firefox!

To help promote these great products we’ve put links on our emailStripper page (which gets plenty of hits), and also on the footer of our blogs below.

We’ve only had these links on the site, and we’re already ranked 179 on the SpreadFirefox Top referrers page and rising fast. We’re happy to try to promote these products any way we can, but it’s also nice to get this recognition!

(PS: Coincidently, I’m wearing my Firefox T-Shirt today too!)

February 21, 2005

Layout is fixed with a Wordpress Template

Matt @ 12:05 am

OK, the blog is back looking quite close to what it used to. Chris’ blog is still running the old style, if you want to compare the differences.

I’ve implemented the new style using the new Wordpress 1.5 templating system, which will make things easier to upgrade in the future. It should also be much easier to share a template between blogs just with a symlink to another blog’s theme directory. This should make it much simpler to keep all the PaperCut blogs looking the same and result in less maintenance over time.

Thanks again to the Wordpress dev team for such a great product.

February 20, 2005

Upgraded to Wordpress 1.5

Matt @ 10:16 am

WordPress 1.5 was released this week, and I’ve only just found the time to upgrade. The upgrade process was a breeze.

I’m still running the default theme, so all I need to do now is to apply re-apply the PaperCut Software template. I’m wondering whether it’s worth creating a PaperCut theme, or just hack the template like we did previously. The themes seem to be a more manageable solution, but it’s probably a bit more work too. I guess it’s something to investigate over the next few days.

February 17, 2005

Gotta love open source … I fixed it myself

Matt @ 10:45 pm

I’m currently using the excellent Eclipse Java IDE for development work, and using the Jetty Launcher plugin to enable firing up the Jetty web server within Eclipse. It allows you to debug your web application directly in the IDE, making Java web development much smoother.

Unfortunately the current version of the Jetty Launcher does not work with the latest Jetty release (5.1), and Jetty 5.0 doesn’t seem to be available for download anymore. I searched the issue database at SourceForge and found that the issue had been reported by Marino Jonsson, and he suggested a possible fix. But there was no response from the project owner. The plugin is open source, so I figured I should get the source, code up the fix and build the project for myself.

I haven’t done any Eclipse Plugin development, so it took some fiddling with the Ant build.xml to get the plugin to build (the Eclipse jars could not be found when compiling). The result is a jettylauncher.jar that you can drop into your Jetty Launcher 1.2.1 directory and overwrite the old one (in [eclipsedir]/plugins/com.iw.plugins.jettylauncher_1.2.1).

Download the fixed Jetty Launcher (jettylauncher.jar)

If you’re interested in what I changed, here’s the unified diff …

diff -u -r1.9 Utils.java
--- Utils.java	29 Aug 2004 16:42:37 -0000	1.9
+++ Utils.java	17 Feb 2005 12:21:53 -0000
@@ -29,6 +29,8 @@
import java.io.File;
import java.io.IOException;
import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLClassLoader;
@@ -303,7 +305,8 @@
*/
public static String getJettyVersionString(File jarLocFile)
throws MalformedURLException, ClassNotFoundException,
-		InstantiationException, IllegalAccessException, NoSuchFieldException
+		InstantiationException, IllegalAccessException, NoSuchFieldException,
+        NoSuchMethodException, InvocationTargetException
{
ClassLoader currentClassLoader = null;
currentClassLoader = Thread.currentThread().getContextClassLoader();
@@ -314,10 +317,20 @@
URLClassLoader jarClassLoader = URLClassLoader.newInstance(
new URL[]{jarLocFile.toURL()}, currentClassLoader);
Class versionClass = jarClassLoader.loadClass("org.mortbay.http.Version");
-		Object version = versionClass.newInstance();
-		Field versionImplField = versionClass.getField("__VersionImpl");
-		String versionString = (String)versionImplField.get(version);
-		return versionString;
+
+        String versionString;
+
+        try {
+    		Object version = versionClass.newInstance();
+    		Field versionImplField = versionClass.getField("__VersionImpl");
+    		versionString = (String)versionImplField.get(version);
+        } catch (NoSuchFieldException e) {
+            // This must be Jetty 5.1+
+            Method method = versionClass.getMethod("getImplVersion", null);
+            versionString = (String) method.invoke(null, null);
+        }
+
+        return versionString;
}

/**


February 7, 2005

Squid Proxy and Windows Active Directory Authentication

Matt @ 2:00 pm

An Internet or Web Proxy is one of the most important applications on a large network. It allows you to

  • track user’s internet usage
  • save on bandwidth costs through content caching
  • limit user access to irrelevant or objectionable content

If you’re running PaperCut, and want to make use of Internet Quotas, then you will need a proxy server that logs the Internet usage and user names to a log file.

Squid Proxy is one of the best proxies out there, and is available for no cost, however it’s designed to run on Linux/Unix machines. This often poses a problem if you’re running a Windows Active Directory, because you can’t get Squid to authenticate users before giving them access to the Internet.

Fortunately, Squid comes with some utilities to solve this problem. The Squid LDAP authentication helpers allow you to authenticate users in an LDAP directory and even assign access rights based on their LDAP group membership.

So what’s this got to do with Microsoft Active Directory?! Well Active Directory is actually an LDAP v3 compliant directory, so it can be queried across a network from any LDAP compliant applications, including Squid.

Working with Ryan Brinch (one of our customers), we’ve written a how-to guide to configuring Squid to authenticate with Active Directory.

It details the configuration changes you need to make to squid.conf in order to use the Squid LDAP helpers (ldap_auth and squid_ldap_group) to authenticate with Active Directory.

This is a much easier way to get Squid/Windows authentication to work without having to install and configure Samba and Winbind … and you don’t need your Squid server to be a member of your domain. It’s much simpler!

Hopefully that helps you out. Feel free to get in touch if you have any questions or suggestions.

December 16, 2004

Guide to configuring your proxy server for PaperCut

Matt @ 12:22 pm

In order to use PaperCut’s internet charging/quota features you need to make sure that your Proxy Server is configured correctly. This is the most complicated part of deploying PaperCut Internet Charging. Once your proxy is configured correctly, there is very little else that needs to be done, and PaperCut will charge users seamlessly.

I’ve written a guide to help troubleshoot proxy configuration issues in our knowledgebase.

This will hopefully provide some insight into how PaperCut internet quotas work with proxy servers and allow users to configure their proxies correctly.

Appendix 2 of our user guide also contains a step-by-step guide to configuring Microsoft ISA Server 2004 for use with PaperCut Internet Charging.

October 19, 2004

PaperCut Quota 5.1 released

Matt @ 11:06 am

It’s been almost a month since we released PaperCut Quota 5.0 (and just as long since I’ve blogged). We’ve been working hard to make PaperCut even better!

This release includes a number of features you’ve been asking for:

  • Support for an unlimited number of printers per server
  • Advanced web based reporting in the Web Tools interface
  • Automated log import from secondary servers
  • Net Charging support for MS ISA Server SQL Server logging

There’s lots more … but you can read about that on the release history page.

October 5, 2004

Gmail invitations … anyone want one?

Matt @ 8:59 pm

I have 3 spare gmail invitations … anyone want one? Just leave me a comment with your email address. First in first served…

Update: I guess everyone’s got one by now …. oh well.