Archive for the 'General' Category

March 24, 2009

Election Time

Chris @ 5:35 pm

We’ve just rolled a new “Vote for a Feature” survey form. This is your chance as a PaperCut user to influence our development priority and ensure your most demanded features are pushed to the top. To vote, log into PaperCut as an admin user, click on the About tab and under Application News, click Vote now and have your say.

The survey results are sent through to the development team in real-time and are discussed at our feature review meetings. Please take a few moments to full it out and let us know what you think!

March 13, 2009

We like graphs…

Chris @ 4:50 pm

Rick, our first USA based member of the team started with us late last year. One of our goals was to ensure we had someone during US business hours to help speed up response times for customers in North America. We’ve recently run the stats across our support system and it’s great to see some movement. The graphs summarize our average response times. It’s consistently dropped over the years and much so over the past two months since Rick started. It’s now down to under 4 hours during weekdays. This is a great achievement seeing during this time our customer base has continue to grow at amazing rates!

Average Reply Time By Hour (last two months) Average Reply Time By Month (last few years) Response Time By Day of Week (last few months)

(click on a thumbnails to view)

I should also point out that this is 4 hours for a quality response – not an email from someone in an outsourced call center letting you know that “Your support issue has been elevated” and you end up getting a real response days or even weeks later. All our support is done by the developers that write the code. This offers a number of advantages to you and to us:

  • You get the correct answer first time. No buck passing, no question is too hard.
  • We, as developers, benefit from direct contact with our users. This open channel helps us turn your ideas into features faster (or your bugs into fixes faster!).

One of the downsides to this approach however is that trivial support questions get a bit annoying. Us developers love working on the hard problems, especially the ones that force us into source code and debug logs. The trivial RTFM questions get a little frustrating at times! If you’re reading this blog, here are a few tips that would help us out:

  • Always check the manual and search the knowledge base for answers. You’ll fine hundreds of common questions answered here.
  • Make sure you review the reporting problems KB article and include the information requested in your email. Simple things like the full version number, and/or logs are always a great help.
  • Try to put something interesting in the email support request! We love to hear little stories like how PaperCut helps you, what funny things have happened on your network over the years, or even simply what the weather is like in your end of the world! We’ve formed great friendships with many PaperCut users and it’s always fun to talk not just about computers and print management software.

Oh, and if you say you read our blog, you’re bound to get even better support :-)

February 13, 2009

New Website Additions

Chris @ 5:43 pm

The developers have taken a few days out this week from programming Java and C/C++ and switched over to HTML and JavaScript. We’ve added two new sections to our website:

A New Tour
The first area is our new product tour. The old tour was getting a little crusty. It did not show off many of the new features we’ve added to PaperCut over the past few years. The new tour is a clean start, a new design and shows off what we feel are PaperCut’s best assets. Tom’s done some great work with CSS and jQuery to implement some interested lightbox effects when you click on the image thumbnails.

The ROI Calculator
The state of the economy is a hot topic at the moment so we thought’s we’d put together a tool to help you work out how much PaperCut will help you save. Unlike a lot of software, PaperCut actually saves you money (That’s a jibe at Microsoft as we all like to bash them from time to time :-) ) The ROI Calculator will guide you through a series of questions and generate a series of charts and statistics to help you understand how much PaperCut will save over a 5 year period (return on investment). As you will all know we’re also all keen on the environmental stance of PaperCut, and the calculator will also project the environmental impact savings. We hope this will give system administrators one more tool to help convince management about PaperCut!

Matt’s done a great job on the ROI Calculator. It’s all implemented in client-side JavaScript. Even the chart generation is done in DHTML with some fancy DOM manipulation.

Next week we’re back on normal coding busy working away on the 9.3 release!

January 27, 2009

In the “Midst of Things” instead of “Out of Touch”

hendrik @ 9:23 am

What sets working at PaperCut apart from run-of-the-mill jobs is the fair balance of hands-on customer care and high-minded technical development that everyone here gets involved in. (Well that and the free gourmet coffee.) In other companies out there these activities are usually separated into separate departments, which more often than not results in some sort of Chinese Wall that makes sure customers’ concerns get preciously little attention in product development.

In “The Power of the Marginal” technology entrepreneur and writer Paul Graham writes about the competitive advantage of companies thus structured: “The needs of customers and the means of satisfying them are all in one head.” In practice that means that at PaperCut, the customer’s question about a printer that seems not to be supported and the resulting update to the software that is being delivered to them by email are not more than a few hours apart. Bigger features may take a few weeks but we don’t usually refuse any functionality that has been demanded by at least 5 or so of our customers. And while other software products will entertain you with messages like “Error 0×800051ef has occurred”, error messages in PaperCut come with a one-click button that will deliver detailed information directly onto the developer’s desk so that the problem can be pinned down on the spot and the answer emailed back to the customer.

This is also why I recommend our customers to subscribe to Upgrade Assurance, where at little additional cost to their license they get a first-row seat in this feedback loop and can focus on their actual work, knowing that their print accounting will be kept up-and-running for years to come.

January 24, 2009

Green is Out

rick @ 5:44 am

I’ll have to admit I’m a bit of a pop culture junkie. Each December I like to watch some of the year in retrospective television shows that go through the highs, lows and woes of the previous year. As I watched the 2008 wrap-up of the most over-used words in use in the United States I was surprised to hear that ‘green’ made the top 5. At first I thought; that’s too bad, after 15 minutes of fame green is no longer in. Then I thought maybe the green movement has become so widespread that folks are getting overwhelmed with its new prominent position in our lexicon. I really don’t know why green made the list, but I hope it doesn’t foretell a lack of interest or apathy in the future.

I live in Portland, Oregon USA where green has been a hot topic for decades. Portland is a major hub for the timber industry. The people in this area have experienced the downside of ignoring the environment for economic gains. Throughout much of the 20th century clear cutting was the standard logging technique here. In the 80’s as the environmental impact became obvious, public lands were protected from clear cutting. In the following years the timber industry nearly collapsed as enforced protection of the forests worked its way through the economy. The loss was 2 fold – first the environment, then the local economy.

Things are better in Oregon now, the local economy is much less dependent on the timber industry, logging practices are more environmentally friendly, and green is definitely in. When I tell people about my new job at PaperCut and show them our Environmental Impact Gadget I almost always get a ‘cool’ or ‘wow’.

If you would like to try the gadget and you are running Windows Vista, send me an email and I will send you a link to the download. The gadget is a part of our print management software that is used throughout the world to reduce waste by applying print quotas and providing network managers with information that can be used to track printing resources.

January 15, 2009

More Success

Chris @ 5:10 pm

We were quite proud to be nominated as a finalist for the Australian Telstra Business Awards last year and it’s nice to see our software helping some of our customers win awards too. Congratulations to Tim and the team at the University of Iowa for winning an Improving Our Workplace Award for their project to implement PaperCut. To use a quote from Tim:

I just wanted to let you know that PaperCut was a key component in our ITC Print Accounting team winning an IOWA (Improving Our Workplace) Award this past fall. Using the features in your product have allowed us to reduce our printing by about 3% per year vs. an anticipated 10-12% annual increase using our previous print accounting solution. In addition, we have opened up printing from wireless laptops, student dorm rooms, and off-campus locations with the use of release stations and client-based authentication, providing a much more convenient environment for our students, staff, and faculty. We’re looking forward to even more service enhancements with the new features available in PaperCut 9.

There is also a write up in The Daily Iowan. It’s nice to see some of our Environmental Impact figures making their way into people’s minds!

The deployment at University of Iowa is one of many very large deployments of PaperCut that were conducted through ‘08. Two other successful projects of note have been implementations at Miami Dade College (the largest college in the US with 260,000+ users!) and the region of Oslo in Norway that have deployed PaperCut on a single clustered server instance supporting almost 200 schools via a WAN. I hope to have some time next week to talk more about these larger projects as we’ve done some really cutting edge tech. work in the areas of clustering and asynchronous I/O to get scalability up to handle deployments of this size.

Oh! I also forgot to mention the team at Nevada State for their successful eco-aware implementation. Thanks to them for their comments about our friendly support too!

November 26, 2008

Save Paper, Save the Environment

other @ 4:55 pm

Climate change and pollution are major issues that concern all countries across the globe. At present, it is imperative that more environmentally conscious practices are incorporated into everyday routines.

More importantly, the urgency to continuously act on current environmental problems has never been more emphasized. One such example that many people can relate to is saving paper.

Environmental campaigns have taught consumers to recycle paper, but the damage doesn’t stop there. The goal should be to stop use in the first place! With the widespread problem of pollution, saving paper and curbing wastage is now a more pressing concern, because of the harmful pollutants released during the manufacturing process, and the chain of negative effects associated with this.

During the manufacturing process there are many area’s that for different reasons, produce pollution. In paper manufacturing, pollution begins with pulp pills, where wood chips are made into thick fibreboards, which are later sent to paper mills for further processing.

The process of burning bark so it can be transformed into usable fibre releases toxic greenhouse gases, which eventually can cause acid rain, destroying marine life, crops, and polluting drinking water.

The process of bleaching pulp to create various finishes on paper also involves draining water that contains bleach chemicals and harmful dioxins, which instantly pollute water catchments.

In addition, transporting mass quantities of wood chips by sea cargo is often the most cost-effective, but has recently been scrutinized for the high levels of CO2 produced by ships and their associated long distance travel.

Hence, saving paper and making the most of daily usage in homes and the workplace is important not only to save on unnecessary extra spending, but also to cut down on the unnecessary harmful effects unleashed into our environment.

Now seeing we’re on the PaperCut website, we have to say that the obvious: To help cut down the paper usage in your school or business, take a look at PaperCut. It’s easy to install and to use. With handy features like printing charge and control, print quotas, real-time environmental impact reporting, and seamless function across various operating systems and multiple servers, using PaperCut for your print management is the easy step in your paper-saving efforts.

November 14, 2008

Using KVM to securely host servers in a DMZ

Chris @ 4:17 pm

We host a number of web services and applications on the servers in here in the PaperCut office. We’ve always planned on hosting these on an isolated server inside a demilitarized zone (DMZ) to ensure public applications are isolated from internal servers. This usually requires separate dedicated servers, however with the recent growth in virtualization technology, we decided to see if we could accomplish the same in a virtual environment. There was not a lot of information out there so I embarked on a project to develop our own. The solution has worked very well over the past 6 months so I’ve decided to open source the configuration and control script so others in the Linux community can benefit. (One of my Friday projects when I’m not working on print accounting software!).

The crux of the script is to host a Qemu or KVM virtual machine on an independent subnet via a tun/tap interface. iptables on the host (Dom0) is used to ensure that connections can not be instigated from the VM in the DMZ to any system in the internal network. They say a picture is worth a thousand words, so here’s a diagram:

Network Setup - KVM running in a DMZ

The key items are:

  • The host (dom0) hosted the VM on a tun/tap interface.
  • The VM is on a separate subnet.
  • A firewall on dom0 (important) prevents access to the internal network.
  • A static route has been added to the router so internal network can “find” the systems in the DMZ.
  • Public ports (e.g. port 80) on the router are forwarded into the server in the DMZ.

This strategy will provide an extra layer of protection as a compromise on the server in the DMZ (say hosting your website) will not automatically mean a compromise on your internal network. There are however come caveats to this: It may be possible to “jailbreak” from the VM into the host by exploiting vulnerabilities in the hypervisor/host. For example, some exploits were found in QEMU in 2007.

The control script and its brief setup procedure should work on most modern Linux distributions.

file: dmz-vm-controller

#!/bin/sh
### BEGIN INIT INFO
# Provides:          vm-dmz-controller
# Required-Start:    $local_fs $network
# Required-Stop:     $local_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: VM Management in a DMZ
# Description:       QEMU/KVM VM Management in a semi-secured DMZ.
### END INIT INFO

##############################################################################
#
# VM-DMZ-Controller is a wrapper script written to help with the management
# and setup of a VM running inside a secured demilitarized zone (DMZ).  The
# objective is to ensure the host/vm inside the DMZ are firewalled in a way
# that ensures connections from the DMZ to the internal network are not
# possible.
#
# Brief summary:
#
#   1. Install QEMU or KVM, and socat, iptables and tun/tap tunctl
#      (uml-utilities).
#
#   2. Create non-privileged user on your system called "vm".
#
#   3. Create a sub-directory in the VM user's home directory to host your VM
#      files.
#
#   4. Create your disk images (e.g. qemu-img) in this sub-directory.
#
#   5. Copy this script into the directory and modify configuration section
#      below.
#
#   6. Link in this script into /etc/init.d/ and configure runlevels as
#      appropriate.
#
#   7. Add a static route in your internal network default router so internal
#      systems can connect to the VM.
#
#   8. Start your VM and test.  Confirm that the VM is unable to access your
#      internal network.
#
# See here for details:
# http://www.papercut.com/blog/chris/2008/11/14/using-kvm-to-securely-host-servers-in-a-dmz/
#
#
# Copyright (c) 2008, PaperCut Software International Pty. Ltd.
# http://www.papercut.com/
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#     * Redistributions of source code must retain the above copyright
#       notice, this list of conditions and the following disclaimer.
#     * Redistributions in binary form must reproduce the above copyright
#       notice, this list of conditions and the following disclaimer in the
#       documentation and/or other materials provided with the distribution.
#     * Neither the name of the  nor the
#       names of its contributors may be used to endorse or promote products
#       derived from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY PAPERCUT SOFTWARE ''AS IS'' AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL  BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
###############################################################################

###############################################################################
# VM Configuration - modify below as appropriate
###############################################################################

# The name of the VM instance (should be unique if hosting multiple VMs)
#
VM_NAME=external-web-server

# The non-privileged user ID used to run the VM.
#
VM_USER=vm

# The VM kernel module to load (e.g. kvm-intel, kvm-amd, qemu). Leave blank if
# using QEmu as a kernel model is required.
#
VM_MODULE=kvm-intel

# The name of the virtual network tap to bind/host to the DMZ network on.
#
IFNAME=tap0

# The .1 gateway address that denotes the DMZ subnet.
#
DMZ_IP=192.168.100.1

# The subnet range of the internal network (the range to firewall/protect)
#
INTERNAL_SUBNET=192.168.1.0/24

# Your DMZ system may need DNS access provided by your internal network.
# Set this if required. This will leave a hole in the firewall allowing
# DNZ access (UDP source port 53).
#
INTERNAL_DNS_IP=

# The directory with disk images (and pid files, etc.) are hosted
#
VM_DIR=/home/${VM_USER}/${VM_NAME}

MONITORFILE=${VM_DIR}/.${VM_NAME}.monitor
PIDFILE=${VM_DIR}/.${VM_NAME}.pid
LOGFILE=${VM_DIR}/${VM_NAME}.log

# VM Start command-line. No need to define:
#    -pidfile, -net, or -monitor
# as these are all appended as part of this script.
# Add -cdrom and -boot d to boot and install your VM off a CD.
#
VM_START_CMD="kvm \
        -hda disk1.qcow2 \
        -m 384 \
        -vnc :0"

# The maximum time to provide the VM to conduct a graceful shutdown.
#
SHUTDOWN_TIMEOUT=20

###############################################################################
# End Configuration - DO NOT MODIFY BELOW THIS LINE
###############################################################################

start_vm() {

    echo_n "Starting VM ${VM_NAME}..."
    if isrunning; then
        echo "ALREADY RUNNING"
        exit 0
    fi

    setup_networking
    start_firewall

    if [ ! -z "${VM_MODULE}" ]; then
        modprobe "${VM_MODULE}"
    fi
    cd "${VM_DIR}"
    su "${VM_USER}" -c "${VM_START_CMD} \
                -net nic -net tap,ifname=${IFNAME},script=no \

                -pidfile ${PIDFILE} \
                -monitor unix:${MONITORFILE},server,nowait \
                >> ${LOGFILE} 2>&1 &"

    for i in 0 1 2 3; do
        sleep 2
        if isrunning; then
            echo "Started ${VM_NAME} at: `date`" >> ${LOGFILE}
            echo "started."
            exit 0
        else
            echo_n "."
        fi
    done

    echo "ERROR"
    exit 1
}

stop_vm() {

    echo_n "Stopping VM ${VM_NAME}..."
    if isrunning; then
        # Send nice powerdown command
        echo "system_powerdown" | socat - UNIX-CONNECT:${MONITORFILE} \
                >/dev/null
        clean_shutdown=
        for (( i = 0 ; i <= ${SHUTDOWN_TIMEOUT} ; i++ )); do
            sleep 1
            if isrunning; then
                echo_n "."
            else
                clean_shutdown=y
                break;
            fi
        done

        if [ -z "${clean_shutdown}" ]; then
            echo_n "forcing..."
            kill -TERM "${pid}"
            sleep 2
        fi

        if isrunning; then
            echo "problem stopping!"
            exit 1
        fi

        rm ${MONITORFILE}
        rm ${PIDFILE}
        stop_firewall
        stop_networking
    fi
    echo "Stopped ${VM_NAME} at: `date`" >> ${LOGFILE}
    echo "stopped."
}

status() {

    if isrunning; then
        echo "Running (pid: ${pid})."
    else
        echo "Not Running."
    fi
}

forcekill() {

    if isrunning; then
        kill -9 "${pid}"
    else
        echo "Not running!"
    fi
}

isrunning() {

    if [ -r ${PIDFILE} ]; then
        pid=`cat ${PIDFILE} 2>/dev/null`
        if [ ! -z "${pid}" -a -d /proc/${pid} ]; then
            return 0 #Success - running
        else
            return 1 #Failure - not running
        fi
    else
        return 1 #Failure - not running
    fi
}

setup_networking() {

    tunctl -u ${VM_USER} -t ${IFNAME} >/dev/null

    ifconfig ${IFNAME} ${DMZ_IP} netmask 255.255.255.0 up >/dev/null

}

start_firewall() {

    modprobe ip_tables
    modprobe iptable_nat

    echo "1" > /proc/sys/net/ipv4/ip_forward

    #
    # Deny new connections to internal network (forwarded) and Dom0 (input)
    #
    iptables -A FORWARD -d $INTERNAL_SUBNET -i $IFNAME -p tcp --syn \
            -m limit --limit 6/h --limit-burst 5 -j LOG

    iptables -A FORWARD -d $INTERNAL_SUBNET -i $IFNAME -p tcp --syn \
            -j DROP

    iptables -A INPUT -d $INTERNAL_SUBNET -i $IFNAME -p tcp --syn \
            -m limit --limit 6/h --limit-burst 5 -j LOG

    iptables -A INPUT -d $INTERNAL_SUBNET -i $IFNAME -p tcp --syn \
            -j DROP

    # Also need to protect the DMZ side of host box.
    iptables -A INPUT -d $DMZ_IP -i $IFNAME -p tcp --syn \
            -m limit --limit 6/h --limit-burst 5 -j LOG

    iptables -A INPUT -d $DMZ_IP -i $IFNAME -p tcp --syn \
            -j DROP

    #
    # Allow DNS UDP packets to DNS server (required if on internal network)
    #
    if [ ! -z "${INTERNAL_DNS_IP}" ]; then
        iptables -A FORWARD -p udp -d $INTERNAL_DNS_IP \
            --dport 53 -i $IFNAME -j ACCEPT
    fi

    #
    # Deny UDP packets to internal network
    #
    iptables -A FORWARD -d $INTERNAL_SUBNET -i $IFNAME -p udp \
            -m limit --limit 6/h --limit-burst 5 -j LOG

    iptables -A FORWARD -d $INTERNAL_SUBNET -i $IFNAME -p udp -j DROP

    iptables -A INPUT -d $INTERNAL_SUBNET -i $IFNAME -p udp \
            -m limit --limit 6/h --limit-burst 5 -j LOG

    iptables -A INPUT -d $INTERNAL_SUBNET -i $IFNAME -p udp -j DROP

    # Don't log Windows/Samba name broadcasts as they will occure often
    iptables -A INPUT -d $DMZ_IP -i $IFNAME -p udp --dport 137 -j DROP

    iptables -A INPUT -d $DMZ_IP -i $IFNAME -p udp \
            -m limit --limit 6/h --limit-burst 5 -j LOG

    iptables -A INPUT -d $DMZ_IP -i $IFNAME -p udp -j DROP

    #
    # Deny selected ICMP to internal network
    #
    iptables -A FORWARD -d $INTERNAL_SUBNET -i $IFNAME -p icmp \
            --icmp-type echo-request -j DROP
    iptables -A FORWARD -d $INTERNAL_SUBNET -i $IFNAME -p icmp \
            --icmp-type redirect -j DROP
    iptables -A FORWARD -d $INTERNAL_SUBNET -i $IFNAME -p icmp \
            --icmp-type router-advertisement -j DROP

    iptables -A INPUT  -d $INTERNAL_SUBNET -i $IFNAME -p icmp \
            --icmp-type echo-request -j DROP
    iptables -A INPUT -d $INTERNAL_SUBNET -i $IFNAME -p icmp \
            --icmp-type redirect -j DROP
    iptables -A INPUT -d $INTERNAL_SUBNET -i $IFNAME -p icmp \
            --icmp-type router-advertisement -j DROP

    iptables -A INPUT  -d $DMZ_IP -i $IFNAME -p icmp \
            --icmp-type echo-request -j DROP
    iptables -A INPUT -d $DMZ_IP -i $IFNAME -p icmp \
            --icmp-type redirect -j DROP
    iptables -A INPUT -d $DMZ_IP -i $IFNAME -p icmp \
            --icmp-type router-advertisement -j DROP

    #
    # Deny spoofed packets from DMZ
    #
    iptables -A INPUT -s ! ${DMZ_IP}/24 -i $IFNAME -j DROP
    iptables -A FORWARD -s ! ${DMZ_IP}/24 -i $IFNAME -j DROP

}

stop_firewall() {

    #
    # Remove all rules added on the IFNAME interface
    #
    iptables -S | \
            egrep "${IFNAME}" | \
            egrep "^-A " | \
            sed "s/-A //" | \
            while read rulespec; do
                iptables -D ${rulespec}
            done
}

stop_networking() {

    tunctl -d ${IFNAME} >/dev/null

}

# Hack for POSIX echo -n support on all platforms
if [ "X`echo -n`" = "X-n" ]; then
    echo_n() { echo ${1+"$@"}"\c"; }
else
    echo_n() { echo -n ${1+"$@"}; }
fi

#
# Begin Main
#

userid=`id | sed "s/^uid=\([0-9][0-9]*\).*$/\1/"`
if test "${userid}" -ne 0; then
    echo "Error: You must be root to run this program" 1>&2
    exit 1
fi

if [ -z `which iptables` ]; then
    echo "Error: Please install iptables." 1>&2
    exit 1
fi

if [ -z `which socat` ]; then
    echo "Error: Please install socat." 1>&2
    exit 1
fi

if [ -z `which tunctl` ]; then
    echo "Error: Please install tunctl." 1>&2
    exit 1
fi

case "${1}" in
    start)
        start_vm
        ;;

    stop)
        stop_vm
        ;;

    forcekill)
        forcekill
        ;;

    restart)
        stop_vm
        sleep 1
        start_vm
        ;;

    stopfirewall)
        stop_firewall
        ;;

    startfirewall)
        start_firewall
        ;;

    status)
        status
        ;;

    *)
        echo "Usage: vm-dmz-controller start|stop|restart|status" >&2
        echo "Advanced Options: stopfirewall|startfirewall|forcekill" >&2
        exit 1
        ;;
esac

October 24, 2008

Ride to Work Day 2008

Chris @ 12:28 pm

Here is another “behind the scenes” post of the happenings here at PaperCut. Last Wednesday was National Ride To Work Day. This is an initiative of our local bicycle association to raise awareness and get more people riding to work around the country. Tom, Matt and myself already regularly ride to work (at least on the sunny days!) and we decided to put the invitation out to all to join us. Priyanka took up the challenge even though she has not ridden a bike in many years.

Here are some pictures of the day. Tom, Priyanka and myself met in Glen Iris and did the 30 minute ride along the Gardiner’s Creek trail through to our office in Mount Waverley. I’m sure Priyanka now has a good appreciation of the word “Mount” in Mount Waverley after tackling the climb for the first time!

Matt, Priyanka, Chris and Tom after the morning ride - we don
Matt, Priyanka, Chris and Tom after the morning ride

Priyanka and Tom climbing the mountain!
Priyanka and Tom climbing the “mountain”!

Hope you all find the behind the scenes look interesting, and yes, we don’t just work on printer log software all the time!

October 20, 2008

Ten Tips to Save Paper

other @ 1:58 pm

While using our print management system is an obvious paper saving tool, here are some other handy ideas to reduce your impact on the environment and save paper.

  1. Print duplex or two to a page- Print on both sides of the page or print two pages to a single side (also called N-Up printing). Combine both of these to print four pages on only one piece of paper! Not only save paper but also take longer to reach your print quota!
  2. Use PDF and go digital- Send business documents by e-mail in PDF format rather than printing and then faxing/mailing them. You no longer need to print, sign and send. Use an electronic signature and email documents that require a signature. While you’re at it, consider an FAX-to-email gateway so your inbound faxes arrive in your inbox.
  3. Use an electronic diary- Install a program on your laptop or computer and record all appointments and diary entries electronically. Google Calendar is our program of choice.
  4. Send e-cards- Save money and save the planet. Personalised season’s greetings can be sent quickly and easily by email. Save on stamps, cards and envelopes. Note: Some may thing you’re “cheap” doing this so make it known that your driver is not cost savings but the environment!
  5. Use a whiteboard- Forget sticky notes and note pads. Use a white board to record all those quick and temporary notes.
  6. Electronic memo’s and bulletins- Communicate in the office electronically. Invitations, instructions and important notices can be sent via email or viewed daily on an updatable document on your intranet.
  7. Be selective- Print only what you need to print. Cut and paste relevant information from longer documents and print only when and what you absolutely need to.
  8. Proof work on screen- some people prefer to print documents for proofing as it’s difficult and taxing to do so on the screen. Be kind to your eyes and simply enlarge the text temporarily while you proof.
  9. Promote awareness- place signs around your office or study encouraging these and other paper saving ideas. (Laminate them so you don’t have to reprint them!) Gentle and polite reminders are all you need.
  10. Recycle, recycle, recycle- have recycle bins in prominent places so people remember to use them, use the back of old documents as scrap paper etc. Lead by example and watch others follow!

Did you know, that today, 10% of the world’s population, including Western Europe and North America, are responsible for over half of the world´s paper consumption, more than six times the world average. Paper consumption in Europe alone has increased six-fold since 1950. Some 10,000 sheets of paper are used each year by your average office worker in western industrialized countries. (information and more tips published by the WWF)