TeamworkPM's Engine Room http://engineroom.teamworkpm.net Thoughts from the monkey's in the engine room posterous.com Thu, 10 May 2012 05:17:00 -0700 Tech Note: Change to email notification subjects http://engineroom.teamworkpm.net/tech-note-change-to-email-notification-subjec http://engineroom.teamworkpm.net/tech-note-change-to-email-notification-subjec

Recently something changed in Gmail land and people who use Google Mail (Apps and Gmail) noticed their Teamwork email notifications were being grouped together even though they were from different projects.

We tracked this down to Gmail ignoring everything inside square brackets. We use the square brackets to show the Project Name but as Gmail now ignore this the emails were being grouped incorrectly.

While this technically is a Gmail issue and not a Teamwork issue, it's not good for our users and not good for our support staff ;-) Today we have changed the square brackets to round brackets.

Your email notifications will now be of the form "(Project Name ) Re: This is an example subject"

This used to look like "[Project Name] Re: This is an example subject [Teamwork Account]"

You'll also notice we took this opportunity to shorten the subject and remove the redundant [Teamwork Account] section at the end of each subject. Since we now have this in the From field of emails along with the senders name we decided to remove it to make subjects easier to read.

I know this is a small issue for many but we also appreciate that people get used to certain formats and also have filters set up on email subjects so it's only right we explain why this change has been made.

Dan.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/494690/dan_tshirt.jpg http://posterous.com/users/5emlvLljzHfr Daniel Mackey cfdan Daniel Mackey
Fri, 04 May 2012 06:46:40 -0700 Meet the team: Mike - Mobile Apps http://engineroom.teamworkpm.net/meet-the-team-mike-mobile-apps http://engineroom.teamworkpm.net/meet-the-team-mike-mobile-apps

Blog_title

Hi there,

My name is Mike and I'd like to introduce myself as the newest member of TeamworkPM. I've been around Teamwork for quite a while helping out on the iOS app as necessary. However the lads decided to put a big push behind mobile apps and I've been here full time for the last two months or so.

At 38 I'm a bit older than the rest of the guys at Teamwork.  So instead of an XBox I started messing around on an Oric 1 (google it).  It didn't do a whole lot and died within weeks, but it did have Zap and Ping as BASIC keywords and that got me hooked.  After that I was always messing with some computer or other.  At one point Myself and a friend somehow managed to convince Atari to give us some pre-production Falcon030's and set about creating the World's-Greatest-Application-Framework.  All written in 68K assembly.  It was about as successful as the Falcon itself.

Dad

After College, I went straight to work for Apple - it was a brand new department and we were all around the same age, so not only did we learn loads but we had a ball doing it.  Steve, however, didn't like having developers where he couldn't see them. The department was shut and I couldn't convince my soon-to-be wife to move to California.  My tan would be forevermore restricted to two weeks a year.

After that I spent a couple of years working on localisation tools for indie developers and freelance translators.  While that led to some oddities ( practically all of the open source software in Vietnam was translated using my software! ) it was no Instagram.  It did however teach me the value of listening to your customers - a whole section that I added as a favour for one particular client ended up being the most popular feature overall.

Not long after that Apple brought out the iPhone and finally - finally! - my parents could understand what I did!

Outside of work, my Family take up all of my time.  We have two kids and they're at that age where they're great fun but there's not a whole lot of rest to be had in our house!  The highlight of the family week is when we all get together to make the homemade pizza.  My daughter becomes the DJ and my son makes these mad little 1 inch wide minis.  It's good fun.

Dough_balls

Odd stuff that the Teamwork guys probably don't know:  I'm not a GAA (Irish Sport) person, but at under-age level I did captain a Waterford team with both Paul Flynn and Tony Browne on it (That'll mean nothing to people outside of Waterford.  And if you're outside of Ireland: Hurling is the best sport in the world : obviously!).  Odd part time jobs:  I was a Milk Man all through school and college, I spent some time doing Wedding and GAA Videos to help out a Friends business. I was one of the main characters in a bigish budget short movie (don't ask).  And I've been lucky enough to present at WWDC twice.

Office

Tools that I use.

Sublime Text  - Multiple cursors is Pure Genius.

Alfred - I'm a recent convert from Quicksilver and I love it.  Sit me down at a Mac without at least one of these installed and I feel like I'm missing some fingers.

XCode - Obviously.

git - once you start using git, you can go back to svn.

Terminal - for 90% of stuff it's simply faster and easier to use git from the terminal.

Spotify - I nearly always work with music on in the background.

Airfoil - Great for sending Spotify to the speakers connected to the AppleTV

WindowKeys - Allows me to Move and resize windows via a hotkey.  It's great for moving between screens too.

HipChat - How we communicate in the office

Dash - Extremely fast and efficient documentation viewer.  Great for iOS but supports Javascript, Ruby and plenty more.  Very nice.

Twitter - !

Magic Trackpad - I prefer using the keyboard as much as possible ( hence Alfred ) so it's nice that the trackpad just sits there in the same place, unlike a mouse.

 

Of course I use my iPhone and iPad every day as well so :

Paper - makes even my scrawls look presentable.

Bamboo Stylus - I liked Paper so much I went out and bought a good stylus.

Adobe Ideas - I actually don't like the UI.  But I do like its fast zooming - perfect for writing down ideas with the Bamboo..

Zite - the best thing about this app is that it pulls out great articles that I never would have found otherwise.

And finally, I don't actually use any of the UI mocking apps.  I've bought nearly all of them, but I find they're usually just too clumsy. Go detailed and they're not that much better than Interface builder.  Go vague and they're not as good as Paper.

 

I live and breath what I do.  The Teamwork guys do to and that's why I came to work here.  I think you'll enjoy the stuff coming down the line for TeamworkPM.

 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/825575/Avatar.jpg http://posterous.com/users/YMUAQOXdgEF Mike Butler triplespin Mike Butler
Mon, 30 Apr 2012 10:33:55 -0700 Box.com integration now available on Business 2, Corporate and Enterprise plans. http://engineroom.teamworkpm.net/boxcom-integration-now-available-on-business http://engineroom.teamworkpm.net/boxcom-integration-now-available-on-business

When we started out this year we made a decision that it would be the year of integrations with other apps. So far we have really stuck to this. This year you have seen some really useful systems linked to TeamworkPM such as Dropbox, Freshbooks, Google Docs, Harvest Blinksale, QuickBooks Online and now box.com.

Box_logo

For those of you who have already used Dropbox with TeamworkPM, box.com works in pretty much the same way. You select your top level box.com folder to add to your TeamworkPM account and then for each project you select both the folder and set the users that you want to have access to your box.com ffiles on that project.

Adding and removing access is dead simple. All the controls for each individual project are handled within each project's Settings page.

If you already use box.com within your business to handle large files and to share files with clients and work mates, having box.com now fully integrated into your TeamworkPM account is going to make managing and running your projects even more useful and efficient.

So how do you hook box.com into your account?

The first requirement is that you are using a Business 2, Corporate or Enterprise account.
Next you need to click on Settings->Site Settings and choose Integrations. Scroll down to the box.com section and authenticate your box.com account. Once authenticated you need to select your top lever folder to use within your TeamworkPM account. No user can browse above this top level root folder so choose wisely.

Box
box.com is all set up and ready to attach to projects. Browse to a project where you would like to have access to box.com. Go the  Project Settings page and again scroll to the bottom where you will see all the box.com options.

Box

The settings here let you turn on or off box.com on the project. You also pick the Box folder you wish to be use for the project and you also choose who you wish to have access to Box on this current project.

Box
Once you have done this you will now have the option to attach files from your box.com account to tasks, comment and the files section within your projects.

It’s all pretty straight forward and easy to use. As with all our new features we hope you love this new addition and as always any feedback or questions you may have please let us know.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd
Mon, 30 Apr 2012 10:33:01 -0700 The full list of April updates. http://engineroom.teamworkpm.net/the-full-list-of-april-updates http://engineroom.teamworkpm.net/the-full-list-of-april-updates

This month seemed to fly by but again we managed to get a whole load of new features and tweaks into the application to make TeamworkPM even better!

The big ticket items this month were:

Updates

  • Update Tasks by email/Quickadd: Added ability to add a task description by putting the description in curly braces ie:{this is a description}
  • UI Calendar - month picker improved
  • Can set privacy on items - new project permission. Adds ability to disable users from setting Privacy on items
  • Can now login with your username OR email address
  • Update Login: IE9 running in compatability mode: Added new link to our FAQ on how to force IE9 out of compatability mode (http://www.teamworkpm.net/technicalfaqs?#q187)
  • Update Notebooks: Added "Print" option directly in to Notebook Options menu
  • UI Lightbox appear/hide effects for modern browsers
  • UI Most CSS loaded initially instead of on-demand - no flicker
  • UI iPad sidebar icon - toggle siderbar on/off 
  • UI Replaced transparent png curves with border-radius - IE678 still use transparent png method
  • UI User project permissions - Improved interface - collapsed view - new permission - nicer header
  • UI Improvements to Templates page of settings
  • UI Changed the old  "New project message categories" editor to use Category Manager:
  • Update Companies: Edit Company: Auto-populate current users country code to make editing faster
  • Added "invoiceno" to time.xml
  • New Caching System
  • Update Trial Notification Emails: Improved layout and readability
  • Basecamp Import Update to strip escaped html tags from task comments (This is working over-time ;-))
  • Reordering task lists - need to hide the "Edit" option on the Task List header
  • Update Notebooks: Improved styling and added css for code blocks
  • Tasks Added Pagination to completed tasks
  • Optimization Login page loads faster - unnecessary scripts skipped.
  • Improvement to Move Task process
  • Update Tasks: Added title tip showing the complete due date of a task to compliment the text friendly due date
  • Update Task Lists: Sort: Added new sort method "Sort by date created"
  • Comments - don't notify self with all
  • Update Project Report: Changed "Upcoming (7 days)" to "Upcoming (within 7 days)" to clarify any confusion in wording
  • Update Files: Editing file details now puts full file details and download link in notification email
  • id=pageTitle added to page titles - needed for pushState update "."
  • Update Tasks by email: If mail client adds "<no subject>" to the email remove it for adding multiple tasks
  • Update Milestones: Add day to Milestone badge to easily see what day the milestone is due on
  • Update Milestones: Added new option when shifting milestones so you can adjust by the same number of days but the due date is kept off Saturday's and Sundays
  • Update Milestones: Remember the method of date calculation picked for each user
  • Google Docs Removed Table and Form as documents that can be created (Google Docs API doesn't support it yet)
  • Update Email Notifications: Removed replyByEmail identifier from subject {tw.XX.XXXX}
  • Update Google Docs: Relax restriction on who can set Access Rights when linking documents in to project ("Who can browse" setting covers this)
  • UI Enabled pushState support on "All comments" page
  • UI Enabled pushState support on "All time" page
  • UI Enabled pushState support on "Workload" page
  • UI Enabled pushState support on "Calendar" page
  • UI Enabled pushState support on "Statuses" page
  • UI Enabled pushState support on "People" page
  • Push state support for "Projects" page
  • More robust javascript lib loading - callback fires if script already loaded
  • Box Integration: Better handling of thumbnails if file is renamed in Teamwork file listing
  • Update Box.com oAuth Callback complete
  • Update Dropbox: Added ability to create folders on Dropbox from within Teamwork Dropbox browser
  • UI pushState supported added to "All Messages"
  • UI pushState support added for "All milestones" page
  • PushState support for "All completed tasks" page
  • Merged project and dashboard headers
  • Update Settings: Added new section to set default user that emailed tasks/messages are posted from if we can't match a sender email address to a user on the project
  • Update Notebooks: Swapped position of indent/outdent buttons on editor toolbar
  • pushStateProject to dashboard level - hide project nav and change to top level header
  • Dashboard pushState working nicely
  • Update Email Dropbox: Added ability to match users by name and auto-populate alternative email addresses
  • Update Email Dropbox: Added ability to set a default user as the poster if we can't match a sending user by email address
  • New Error report and silent error report format
  • Update Messages/Tasks by email: Added extra code to check for forward addresses to match back to users on a project
  • Calendar iCal: Added new parameter &limit=X to limit feed events to X number of days ahead
  • Optimization PushState - ajax loading of project content from top level
  • Update Google Docs: If file is renamed in Google Docs and linked in again, update the file name in TWPM Reference
  • Files Can't drag and drop files in to categories anymore
  • privateInfo ripped out of activity log – mp longer made sense with lockdown user-specific privacy
  • Update: Soft delete of tasklist templates
  • Update If time is logged on the Everything->All Time page, the report is regenerated
  • Update: Added ability to get comments on a file without having to pass fileVersionId
  • Added email-alt-1/2/3 field to PUT & POST people calls
  • Update API: Validate user via temporary password sent in forgotten password email also
  • api added alt email addresses to GET people api calls
  • Fix for API passwords with semi-colons.
  • Fix Billing: Items not loading (Time logs and Invoices)
  • Can't unattach files from tasks
  • Fixed Daily Report: Logo images that have a "+" should encoded to %20 instead of %2b
  • Fixed: Reorder task lists should not show on sidebar
  • Fixed: Search: Tasks associated with a deleted task list are returned by search
  • Fixed: New project URL rules break viewing messages
  • Gantt chart export fix for non-utf8 task names 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd
Mon, 30 Apr 2012 10:25:17 -0700 QuickBooks Online Integration - How to set up your connection http://engineroom.teamworkpm.net/quickbooks-integration-how-to-set-up-your-con http://engineroom.teamworkpm.net/quickbooks-integration-how-to-set-up-your-con

I am very happy to announce our fourth (and not final) billing integration; it is a big one. QuickBooks Online!

This integration works very similarly to our other integrations. There is one difference though, and that is in setting up the connection between Teamwork and QuickBooks Online. I have outlined the steps involved below. We hope you find it useful!

QuickBooks Online Setup

1. Choose an Invoice and click the Export Invoice link at the bottom of the page.

2. A dialog appears asking you to choose an export option. Choose QuickBooks and click the export button.

3. Another dialog appears asking for your connection key. To get your connection key click the "Set up connection" link on the top right.

4. This brings up another window asking you for your QuickBooks login details. If you are currently logged in this step will not apply.

5. Click "Continue".

6. Enter a connection name or leave it as the default "Project Management". Click "Continue".

7. Click the no option for login security.

8. This will bring up another window confirming your choice of login security. Click "I still want to turn login security off" to confirm. Then click "Create Connection".

9. This page will contain your connection page. Copy the connection key to you clipboard (The "copy to clipboard" link doesn't work consistently so do a manual copy of the key).

10. Now you can click continue and close the window.

11. Go back to your TeamworkPM Account and paste your connection key into the field. Click "Authenticate".

12. A loader should appear once your key has been authenticated and then a list of companies associated with your QuickBooks Online account should be loaded in.

13. Choose a company and click Export to QuickBooks.

14. You're done! When you go to export another invoice the list of companies should appear immediately.

Permalink | Leave a comment  »

]]>
http://posterous.com/images/profile/missing-user-75.png http://posterous.com/users/ehTshIpzd7Unw Donal Linehan donall Donal Linehan
Mon, 30 Apr 2012 10:14:39 -0700 3rd party App highlight: Eon time tracking for Mac http://engineroom.teamworkpm.net/3rd-party-app-highlight-eon-time-tracking-for-73403 http://engineroom.teamworkpm.net/3rd-party-app-highlight-eon-time-tracking-for-73403

This month we thought we would quickly highlight our developer zone. For those of you who aren’t aware of this we have a full API to allow 3rd party developers to extend the functionality of TeamworkPM by building their own custom apps, or by hooking TeamworkPM into other existing apps.

This month we would like to highlight a 3rd party timer app for the Mac made by the team at fuelcollective. The app, called Eon, is a time tracking app for the Mac.

It’s simple and easy to use and allows you to to set multiple timers up to record your time and then allows you to easily log the time directly into your projects.

Eon_timer_tracking

You can read more about Eon and download the app from their website here.

If you too would like to have your app highlighted in our newsletter just send us an email to support@teamworkpm.net

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd
Mon, 30 Apr 2012 10:12:34 -0700 Introducing Trash can - You can now restore deleted items http://engineroom.teamworkpm.net/trash-can-restore-deleted-data http://engineroom.teamworkpm.net/trash-can-restore-deleted-data

The trash can is used to restore items which have been deleted from your teamwork account within the last 30 days. There are two distinctly different trash cans; one for restoring data within a project and another for restoring projects. Both trash cans are only accessible to administrators in the owner company.

 

Restoring tasks, milestones, files etc..

To restore either milestones, tasks, task lists, notebooks or files within a project: Go to the project settings page and under project options, click "Trash can". This will bring up a lightbox containing a list of all data deleted from the project listed by date deleted. On the top right of this lightbox there is a dropdown menu for filtering by type. To restore an item simply click the restore button beside its name.

Restoring a project

To restore a project- go to the projects page. This link is accessible through the menu in the top left of every page. At the bottom right of the projects page there is a "Trash can" button. Click it and it will list all deleted projects. Again, hit restore and your project will appear 

 

Permalink | Leave a comment  »

]]>
http://posterous.com/images/profile/missing-user-75.png http://posterous.com/users/ehTshIpzd7Unw Donal Linehan donall Donal Linehan
Mon, 30 Apr 2012 09:10:19 -0700 Update for moving multiple milestones http://engineroom.teamworkpm.net/update-for-moving-multiple-milestones http://engineroom.teamworkpm.net/update-for-moving-multiple-milestones

This update is due to some really helpful feedback we received from one of our customers, over the last few weeks. A big thanks to Matt for all his patience and help with this.


Moving multiple milestones has always been possible within TeamworkPM but the issue Matt was having was is that he wanted to move a large number of Milestones in one go and have them all stay off weekends, yet hold pretty much the same space between them all.


We had the option to keep milestones off weekends but if you selected this option, it would count the weeks as five day weeks and not as seven. This meant if you moved the first milestone forward by two weeks, or 14 days, it would move all the others forward by 14 working day. This means that any affected milestone could move forward by more than 18 days, as there are two weekend in two weeks. At this stage my head is starting to hurt, so imagine the headache Matt was getting trying to move forward more than 20 separate milestones. It was throwing his whole schedule completely out of whack.

This is about the time Matt starting emailing wondering what he was doing wrong . All he was looking to happen for was that no milestone landed on a weekend day. This means that if a milestone was going to fall on a Saturday or a Sunday it would just be pushed forward to the next Monday.

Shift_milestones

We all discussed Matt’s problem here and we all agreed that a change was needed. This month we are happy to annouce the rolled out milestone update.  We are really happy with update and we feel this will make the section easier for all users as well as making sure there is an option here to suit each user.

I have also put together a short video to demonstrate how this new update looks and works.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd
Mon, 30 Apr 2012 07:30:00 -0700 Still Obsessed with Speed (Part 2) http://engineroom.teamworkpm.net/still-obsessed-with-speed http://engineroom.teamworkpm.net/still-obsessed-with-speed

Obsessedtopper

Last month, I explained that I am completely obsessed with making TeamworkPM insanely fast for you.

This month we've been working hard behind the scenes to finish what we started with last months update.

 

pushState everywhere!

I explained last month that "pushState" is something that allows us to serve you pages insanely fast without having to reload everything.

Pushstatetoplevel

When we left you last month we had PushState rolled out for all project-level pages: Overview, Tasks, Milestones, Risk register, Files, Time and Notebooks.

However we didn't have pushState implemented for the top-level pages so clicking the Dashboard link for example, did a full reload of the entire page.

The good news is that we have now implemented pushState for all top-level pages! You should find that the Dashboard, All Tasks, Projects, All Milestones, Calendar, Statuses, and the People pages are now loading much faster than before.

 

Minimal login page

The login page of your TeamworkPM installation now loads faster. We've ripped out all the unnecessary stuff so it loads just what it needs to look pretty.

This is important because we want to show you the login instantly, even when you are on a slow connection. We want the entire TeamworkPM experience to be amazing for you.

 

JavasSript and CSS Pre-loading

Once the login page is displayed, we instruct your browser to start loading CSS and JavaScript libraries in the background. These files will then be in your browser cache so that when you login everything loads faster and seems snappier.

 

Object-level caching (V2 Caching System)

I'm so excited about this one! :D

At the moment we used project-level caching on all objects. So if you add a notebook for example, you've just invalidated all tasks lists on the project. This is less than ideal.

Internally we've started a new project lovingly referred to as the "V2 Caching System" (inventive eh!).

V2

The new "V2 Caching System" is smart. Now if you add a notebook, only the "Notebooks" page is invalidated. And when you edit a comment attached to a task, the V2 Caching system is smart enough to know that it only needs to invalidate the task and not the task list or the project it resides in.

In addition, we now store the last-modified-date for every object in memory! This allows us to instantly serve you unique "eTags" for every object that hasn't been updated. Also we can now serve you something called "far-future expires headers" on specific data fetching URLs to prevent data from ever having to reload (this system is even faster than eTags).

Phew. All you have to know really is that over the coming weeks, as we carefully roll out the new caching system, you are going to be blown away by the speed of TeamworkPM.

 

So you see there are a lot of incredibly nerdy happenings behind the scenes to deliver you the world's best online project management system. It's a lot of work, but hey, you're worth it!

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/494712/Copy_of_Dsc00055.jpg http://posterous.com/users/5emlvLNxf917 Peter Coppinger Topper Peter Coppinger
Fri, 27 Apr 2012 05:28:00 -0700 iOS Update : Search, Files, Notebooks and Contacts http://engineroom.teamworkpm.net/ios-update-search-files-notebooks-and-contact-18063 http://engineroom.teamworkpm.net/ios-update-search-files-notebooks-and-contact-18063

We've got a really nice update to the iOS app this month, we have added a few really nice new features to the App.

Search

First up, and the most obvious: full Search available right from the main screen.  Type in anything you waant and it will go search the server for the latest most up-to-date information possible. Tap on one of the results and if it's something that's not already on the phone the details will be instantly downloaded automatically for you - so no stale information here.  

Search

The list of search results has been designed for quickly skimming through, however if you need more detail then tap the 'Expand' button and it will give you that extra bit of context. Hit it again to go back to the simple display.  And finally, to help you get around, start scrolling and a large index bar will fade in allowing you to jump straight to the section that you're most interested in.

Notebooks

The Project screen sports three new sections, one of which is Notebooks.  As you'd expect, this new Notebook section gives you the ability to read all of your Notebooks directly within the app.  So no more having to go out to Mobile safari and zooming around to fit the notebook to the display - the display fits the notebook. Exactly.

Files

Just like Notebook, the Files section gives you full access to all of the files available in your Project. Plus, as you can see from the screenshot, you can easily send the file to your favourite App.  So if you like reading PDF's in iBook or presentations in Keynote, no problem

Files

Contacts

Finally, Contacts.  A full listing of everyone associated with the project, this screen has a couple of nice touches.  Each detail of the person's information can be used - so, for example, tapping on a Skype address gives you the option of starting a Skype call, a chat or simply copying the account name.  Same goes for GTalk, Email and, of course, Phone Numbers.

Contacts

We hope you like it and as usual, let us know what you think!

Download the app from the App store today.

 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/1371861/tw.png http://posterous.com/users/5emdLgvef20h Teamwork Project Manager teamworkpm Teamwork Project Manager
Fri, 30 Mar 2012 10:41:01 -0700 Google Docs Integration has come to TeamworkPM http://engineroom.teamworkpm.net/google-docs-integration-has-come-to-teamworkp http://engineroom.teamworkpm.net/google-docs-integration-has-come-to-teamworkp

It’s a fantastic feeling to be able to announce this integration. We’ve been working on this feature for quite some time, refining the functionality and battling with Google’s Docs API.

We wanted the Teamwork Google Docs integration to be as smooth and flexible as our Dropbox integration. At times it felt like fitting a round peg in a square hole. Google Docs are not exactly files and they are not placed in folders as such but live in Collections.

We looked at many other cloud apps out there and how they handled Google Docs and we found them lacking. All these apps just gave a list of your Google Docs. No categorization, no folder structure and no way to allow editing of these documents without first sharing them with the user.

We knew we could do better, and we did!

Like Dropbox, Google Docs can be shared with multiple users. This allows us to link one main Google Doc account in to each Teamwork account to be used as the document repository. Individual users can then share their documents with this main account and the files magically show up in Teamwork.

For example: 

Internally we created a new Google Docs account info@teamworkpm.net and linked that in to our Teamwork account. The rest of the team then shared out their own personal documents they want to share to info@teamworkpm.net and the files show up in Teamwork.

Hooking your Google Docs account into Teamwork is a very simple process. Click Settings in the top right of your Teamwork account, choose Site Settings and pick the Integrations tab.

Settings
From the "Integrations" tab you can connect your Teamwork account with Google Docs and allow access. Pick the top level folder to use within your TeamworkPM account and you're up and running!

I have also run through all these steps in the short video I have attached here so you can see exactly how to hook your Google Docs account up with Teamwork.

As you would have seen from the video, if you watched it ;-) was that you can also create Google Docs from within your TeamworkPM account. It's a great enhancement and something that was brought up a good few times by the users who took part in the beta test. So we took the feedback on board and Dan got to work building this in for the final release. We also added the ability to create "folders/collections"

The last really important thing to run through is the Access Control for a Google Doc. By default, linking a Google Doc in to Teamwork sets the access control on the document to be viewable by any person who has the link.

You can set this to one of 3 levels

  1. Anybody with the link can view
  2. Anybody with the link can view and edit
  3. Do not modify the access control list - This means that you have to explicitly share the document with Google Account holders from inside Google Docs.

After I finished the video (typical ;-)) we made a slight change to highlight the Access Control settings more and make it more obvious to users.

Access_rights

As with all our new features, we really hope you like it. We enjoyed building it and we look forward to hearing your feedback.

 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd
Fri, 30 Mar 2012 10:40:08 -0700 The full list of March Updates. http://engineroom.teamworkpm.net/the-full-list-of-march-updates http://engineroom.teamworkpm.net/the-full-list-of-march-updates

This month it's been all about behind the scenes updates and working on tweaks to current features. It's also been another month of integations and this month it's a big one with our Google Docs integration. This is now ready and available to hook into your TeamworkPM account if you are on the Business 1, Business2, Corporate or Enterprise plans.

Features/Updates

  • Notebooks: Added the ability to copy a notebook from one project to another
  • Dropbox: Added new feature so you can create a Shareable Link that can be emailed to people
  • UI Themes updates (about time!)
  • UI Project category listed on "Project overview" page
  • UI Milestone delete animation added
  • UI Prettier calendar
  • UI Milestone improvements
  • UI Improvements on User Statuses to match new comment listing style
  • UI Comments/Messages: Attachments: Improved the layout of this. My eyes were bleeding looking at what we had
  • UI Cleaned up style of View Pages for Tasks, Milestones, File and Resources
  • Notify picker improved - "Everybody" option checks on everyone
  • Comments: Added confirmation if you post a comment and have not selected people to notify
  • Comments: Added link to close comments thread when inline
  • Invoices : Updates to subscription receipts
  • UI When you select privacy on Comments, Notebooks, Resources and Files; we now automatically select to notify "Everybody possible".
  • Lockdown/Notify When privacy is set to at least one person or company, set Notify to all
  • Speeeeeed push states - overview and tasks so far
  • Push state support for "risk register"
  • Push state - sidebar shows dynamically
  • Push state supports for "notebook view" and "notebook categories"
  • Push state supports for "notebooks"
  • Push state supports for "task list view" and "time" view
  • Update Project Report: Added in "Created Date" for tasks
  • Added a confirmation if you try and send a message or reply and you haven't notified anyone
  • Update Project Switcher: Match on company name associated with projects
  • Update Search: Added in ability to search for projects associated with a company
  • Optimization CSS/JS compiled in developer mode - static files for production
  • Optimization Task page loads task lists dynamically with smart caching
  • Update Everything: All Time: Added ability to edit time logs from this view
  • Everything All Tasks: Retired old version of All Tasks page
  • Update Task Lists: Reassign: Added in an option to pick whose tasks to reassign to another person
  • Tech: Improved efficiency for Milestone listing
  • Update Tasks Report: Excel: Add "Assigned To" column
  • Update Tasks Report: Excel: Convert total mins to hours and mins for Billable and Non-Billable time logged
  • Comments Added back in slurry green colour for comments posted by current user


Bug Fixes

  • Billing not loading properly every time
  • eTags were not being served for main content areas
  • Item selected in billing displays above sceen on billing page with large items list
  • Privacy not cleared on activity page when cleared on task
  • Fixed issue with project new categories not showing up in select options
  • Dropbox caching selection mode without (when using pushState)
  • Clicking through to a project for the first time requires reload
  • Dashboard/Project Overview: Fixed duplicate entries for people in owner company but not Administrators
  • Messages: Added DISTINCT when looking up the number of people notified on a message or reply
  • Everything: All Tasks: Inherited private tasks not showing for users who were not admins
  • Comments: Markdown preview not firing
  • Notebook Category Manager: Sleep deprivation induced typo
  • Update Google Docs: Handle situations where refresh token is expired
  • Log Time: Fix for possible NaN values
  • Update Reply by email: Fix put in place when mail parse exception occurs. 

 

 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd
Fri, 30 Mar 2012 10:13:58 -0700 iPhone App Update http://engineroom.teamworkpm.net/iphone-app-update http://engineroom.teamworkpm.net/iphone-app-update

What's new in this version?  

 It's almost easier to say what isn't!  Practically every screen has had a lick of paint, while some screens have been totally transformed.  We'll take a quick look at a few of the major changes here and leave you to discover the rest as you use the app.

 

File Attachments for Messages and Tasks

Attachments

First up is perhaps the most requested feature: the ability to attach and view files.  Attachments are available on Tasks, Messages, Replies and Comments with support for attachments on Projects being rolled out soon after. 

You can upload and attach images directly from your device - great for when you're out and about as it turns your phone into a portable document scanner. It also comes with support for viewing most of the standard file types such Word, Excel, PDF, PNG, GIF.  

 

New "My Tasks" and Milestones Sections

Milestone_updates

In version 1.5 of the app, the whole top line of the Home Screen was taken up with Today, Pending, Overdue.  Tasks and Milestones were mixed across all three of those screens.  If you were looking for a task you thought was coming up but was actually late then you'd have back out and change screens.  With this update we've replaced those three with dedicated "My Tasks" and "Milestones" screens.  

My Tasks gathers all of your tasks into one place where they can be filtered by whether they're due today, are late or have no due date at all.  They can then be sorted by Priority, Project or Date.  Same for Milestones - it gathers all of your Milestones in one place and allows them to be filtered by Upcoming, Late or Completed. Should make it much easier to stay on track.

 

Message Viewer

Messages_updates

Let's face it, the old style message screen wasn't that pretty.  So we've brought the styling over from new Task Viewer screen.  Not only does this look better but, as with the Task screen, this layout allow us to display more information without overwhelming the small screen.

Refinements

Launchboard_changes
You'll find refinements spread throughout the app.  The home screen, for example, is simpler and cleaner, yet leads to screens that are more powerful and usable than their predecessors. Projects and Starred Projects have been combined so that you don't have to remember if a project is starred before you go look for it, and so on...

We have lots more to do, with big plans for mobile in general, but hopefully this update should make keeping on top of your projects that bit more enjoyable.

 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/1371861/tw.png http://posterous.com/users/5emdLgvef20h Teamwork Project Manager teamworkpm Teamwork Project Manager
Fri, 30 Mar 2012 10:10:00 -0700 Obsessed with Speed http://engineroom.teamworkpm.net/obsessed-with-speed http://engineroom.teamworkpm.net/obsessed-with-speed

Obsessedtopper

Between you and me, I've developed a bit of an obsession... I lie in bed awake thinking about it... and there's no support network I can join. Yes that's right, I've become completely obsessed with making TeamworkPM insanely fast. It's an issue. ;)

 

Introducing pushState

It started off as an experiment but I got so excited with the speed improvements that I worked solid for about 12 hours adding pushState support to the TeamworkPM.

Pushstate


"pushState" is a part of the HTML5 specification. It's essentially a system used by modern browsers to change the current page address but only load in the changed data.

So instead of a full page refresh which requires all the boilerplate HTML, CSS, Javascript and images to reload, only the part of the page that need to change is loaded.

So now if you are using Chrome, Firefox or Safari, pages will load much much much much quicker as you move between tabs.

Sweet... dreams are made of this. HTML5 rocks – the whole Internet will use pushStates shortly.

A little side note: We have pushState support coming for IE9 and IE10 shortly - we just want to do more testing to ensure that everything is perfect for you first. IE10 has 'proper' support for pushStates. Can't wait.

 

 

Page partials

It's a simple idea used by lots of high performance websites like Facebook and Google – load just enough primary top-of-page content so that the user sees something immediately, then load in the remaining segments as fast as you can.

We've applied this idea to activity steam sections on the Dashboard and Overview pages. We've also applied this to your task lists so you will see them subtly stream in now.

 

Browser caching with eTags

We've got incredibly serious about making sure your browser caches everything possible using eTags. So if you've loaded a task list a few minutes ago and there's been no changes to that task list, then when you revisit the list we tell your browser that you have it already. The result is that the task list loads instantly for you the second time round.

 

In-memory components

This month we also changed the internal architecture of TeamworkPM so that the underlying code that runs TeamworkPM is held in in-memory classes instead of slow template based files. It was a lot of work and we had a few glitches and long days but the result is definitely worth it.

 

Database optimisation

Last but definitely not least, this month we did some tweaking to the database servers settings to allow them to hold more data in-memory, allowing them to serve data quickly from memory instead of reading from the hard disk. It's very geeky so I won't go into too many details... (InnoDB cache size doubled).

 

This is just a start! We have some big plans to make TeamworkPM even faster including introducing pushState support to the entire application.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/494712/Copy_of_Dsc00055.jpg http://posterous.com/users/5emlvLNxf917 Peter Coppinger Topper Peter Coppinger
Fri, 30 Mar 2012 09:49:00 -0700 Meet the team: Donal - Lead Lacky Developer http://engineroom.teamworkpm.net/116926081 http://engineroom.teamworkpm.net/116926081

Hi,

Donal here! I'm 22 years old, live in the hills of Cork City. I love programming, music and design. I am one of the three developers here at TeamworkPM HQ. I joined the crew back in June straight out of university after doing work experience with them the previous summer. This was back when the lads were still involved in web consultancy.

I was delighted to have the opportunity to do my work experience in an area of computer science which interests me so much. I thoroughly enjoyed the six months I spent working with them and that hasn't changed.

Going further back..

My interest in computers, programming and the web stems from a lot of different places. For one, my father worked for a company who made components for macintosh computers (pre Jobs v2 and iEverything), so there has always been a computer in the house.  It being a mac there were not many games that I could play, so I had to actively find ways to entertain myself on it.

So most of my time was spent tinkering and doing things like making very short animations using Corel Draw and QuickTime. Later on- around the time I got broadband I became interested in how the web works. I started making websites using Microsoft word, then moved on to dreamweaver and later to learn the w3c's xHTML and CSS standards.

Before college I hadn't written one line of code (bar failed attempts at writing applescript scripts) but i quickly became hooked on all things PHP and JavaScript after having an excellent professor in first year.

In my free time I'm usually playing music around the place. My musical past and present consists of playing trumpet in a marching band and an orchestra, singing in a choir and later teaching myself to play the guitar and bass. I currently play bass guitar in a couple of bands. 

Some of the areas of Teamwork I am responsible for include:

  • Teamwork Mobile
  • All Tasks v2
  • The API
  • Search v2
  • BlinkSale integration
  • General maintenance

 

Tools I use for Development:

Now, I am new here so I don't want to keep you.  I look forward to answering some of your feedback and helping the rest of the the team make Teamwork the best online PM solution digitally possible!

Permalink | Leave a comment  »

]]>
http://posterous.com/images/profile/missing-user-75.png http://posterous.com/users/ehTshIpzd7Unw Donal Linehan donall Donal Linehan
Fri, 30 Mar 2012 09:40:51 -0700 UI improvements around TeamworkPM http://engineroom.teamworkpm.net/ui-improvements-around-teamworkpm http://engineroom.teamworkpm.net/ui-improvements-around-teamworkpm

As great as it is to release and work on new features it's still really important for us to keep looking for more ways to improve and refine the current features of Teamwork. We are always looking out for ways to improve the user experience and user interface. This month we have rolled out quite a few updates to the UI to make Teamwork easier and more intuitive to use.

Project Category displayed on the project overview

The Category a project is part of not showing anywhere on the actual project overview is something we have heard many times from users through feedback. This month Peter finally got the chance to fix this. The project category is now displayed on the project overview for users who are part of the Owner Company.

Milestone listing and layout updates

This month has also seen a lot of tidying up done to the milestone listings within a project. We have removed the eye hurting bright bar and placed the colour into the milestone date display which lets you know if the milestone is late, upcoming or completed.

The milestone images and text here have also been improved to make them clearer and easier to read. We compacted some wasted space and also introduced more proportioned margins. 

Comment listing and layout updates

We have also given a lick of paint to the comments to make them more pleasing to the eye. You will also notice we have added a very handy hide comment link as well to quickly collapse the comments when they are opened inline from an item such as a task, milestone, file or resource.

The highlight for comments written by you is also subtler and we compacted the Add Comment form until you require it. Any attachments on the comments (and in messages) also got some love and attention.

Comments

Task List updates

We standardized the UI for Adding and Editing Task Lists. We had 2 different views when Adding or Editing and we've corrected this. We also added a small but very handy update so Milestones can be created when you are adding a Task List. Now when you create a new task list you have the option to also create a new Milestone directly from the task list creation area instead of having to jump to Milestones, create a milestone and jump back to add the Task List.

Create_new_tasklist_milestone

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd
Wed, 21 Mar 2012 05:17:45 -0700 Colorado design firm Phases, share their TeamworkPM story. http://engineroom.teamworkpm.net/colorado-design-firm-phases-share-their-teamw http://engineroom.teamworkpm.net/colorado-design-firm-phases-share-their-teamw

Having tried a number of different project management applications including Zoho and Basecamp, Colorado based graphic design firm Phases had been consistently disappointed with the lack of features and collaboration tools on offer. Dealing with small businesses, Phases were looking for an application that was easy to use allowing clients to take as much ownership of the projects as the company itself. In house web designer with Phases, Kandra Churchwell says they found exactly what they were looking for in Teamwork PM and since implementing it in the day to day running of the business, they have never looked back:

Group_pic
“We had tried many different applications, heck I think I tried them all, but they just didn’t scale well and didn’t offer the same mix of features, ease of use and great customer service you get with Teamwork.

Here's how we use TeamworkPM to help our projects go smoothly.

·       Adding a project is totally simple, and the customizable welcome email allows us to introduce our clients to the system in a very friendly and specific way, which is important to clients who don't have a lot of time, or the inclination, to learn a new software tool.

·       We use TeamworkPM from the very beginning of each new project, communicating internally about the prospecting and proposal process using tasks, the message center and the file uploading tools.

·       The privacy settings are great. We often go through several rounds of internal revisions on graphics files and word processing documents before we're ready to show them to the client. The privacy tools allow us to chat and share all of this stuff inside a "cone of silence," so we can discuss the project openly without fear of releasing anything before it's ready, or of our clients being inadvertently offended by our sometimes frank discussions.

·       The file-uploading tool is excellent. All the information you might need about a given file is available at a glance, and the version tracking is so simple, even our least tech savvy clients can easily tell what version of the file they're looking at, when it was uploaded, what category it's in, and who's been working on it. The new Dropbox integration has made file sharing even easier than it was before.

·       Did we already mention how great the Dropbox integration is? Several of our staff, team members, and clients were already using Dropbox for backup and cloud storage, so adding this feature was a no-brainer and has already simplified our process.

·       The time tracking feature helps us stay on top of the budget, even down to the task level, which keeps the stress level low for us and for our clients.


For Phases, ease of use and smooth communication between both company and clients made TeamworkPM stand out from other project management applications available:

“A powerful aspect of Teamwork is that it keeps all project communication, files, task lists, meetings, everything in one place where everyone working on the project can access it from their desktops or mobile devices. With team members working remotely, clients spread out over the country, and hundreds of files and messages that need to be tracked, stored and managed in a user friendly way, this is an invaluable benefit.”

As well as offering a wide range of features, the one aspect of Teamwork that stood out for Phases as a company was the speed at which the customer service department dealt with any issues:
“Teamwork PM has some of the best and most responsive customer service in the business in our opinion. We’ve requested features on more than one occasion that would make our workflow or communication processes more efficient and easier. Not only did we receive a quick response- in some cases the features we were interested in showed up in the production software just a few days later- now thats service!”, she added.

Denver Web designer Kandra Churchwell is a branding and graphic design guru at Phases Design Studio, the premier Colorado branding firm for emerging and established businesses seeking a unique blend business savvy, creative fire, and passionate customer service. Visit www.designfiles.net to view a selection of projects created and managed with TeamworkPM.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd
Tue, 20 Mar 2012 05:35:00 -0700 Tennessee based creative agency share their TeamworkPM story. http://engineroom.teamworkpm.net/tennessee-based-creative-agency-share-their-t http://engineroom.teamworkpm.net/tennessee-based-creative-agency-share-their-t

A few weeks ago I put out a request on our Facebook page to chat to a few design houses that use TeamworkPM so they could share their experience with you, about what they do, and how they use Teamwork.

Paradigm-logo-new1

One company that has found Teamwork Project Manager effective in the day to day running of the business is Paradigm Marketing and Creative, a boutique style agency based in Tennessee that assists clients with all their marketing needs. The sheer breadth of services offered by Paradigm include everything from branding, analysis, web and print design, and advertising to creative services such as 3d animation, videos and photography. President of Paradigm, Charles T. Gaushell explains why the company relies so heavily on an effective project management application:

“Because our services are so broad, our client base is also broad. Projects we’re involved with can include everything from completing an initial brand analysis to designing websites and brochures; from producing online PR to shooting a high definition video and rendering an extensive 3d floor plan to animating a 2,000 acre community. Using Teamwork enables everyone in the company to keep track of their tasks and assign tasks to coworkers.”
Now in its 20th year in business, Paradigm’s focus on creativity has assisted clients across seven countries and 43 states, and two years ago the company decided to get rid of their older time keeping program to focus solely on Teamwork to keep track of all tasks, a decision which Gaushell admits has made the day to day running of Paradigm much easier:

Team_pic
“We use Teamwork to remind ourselves of deadlines and milestones- we’re big Dropbox and ProofHQ users, so being able to link projects has been a critical update. Also having Teamwork accessible at home and on the road using our smart phones, tablets and computers saves time and effort. Teamwork guides us through our project reviews at our weekly meetings by giving us a snapshot  and roadmap for the given week. It’s also great for organizing and keeping assignments and projects accounted for and features such as Messages, Comments and Notebooks are used daily. Teamwork for us has made communication much smoother and easier since we can track every email, reply and text version,” he added.
Teamworkpmparadigm_screen

If you too would like to share your TeamworkPM story with everyone here then please get in contact as we would love to hear from you.

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd
Wed, 29 Feb 2012 16:13:49 -0800 The full list of February Updates http://engineroom.teamworkpm.net/the-full-list-of-february-updates http://engineroom.teamworkpm.net/the-full-list-of-february-updates

Even though it's a slightly shorter month we haven't held back on the amount of updates we got out this month and that's not counting the mother of all updates : Lockdown.

We really hope you find these updates help you be more productive and allow you to manage your projects just the way to want. As always we are open to feedback and if you have any other ideas on new features or comments on current ones please let us know.

Key features rolled out in February.

Lockdown for tasks.

Lockdown for Notebooks.

Lockdown for Messages and files.

New calendar for Teamwork Mobile

 

Small Ticket Items

  • Comments update
  • Sites Switch Uses cache, shows loader image and displays installation favicon.
  • Messages If the word attach is in message body when no files are attached; prompt the user.
  • Return results which contain the search term within the title ahead of the rest.
  • Dashboard Increase number of Late/Upcoming milestones shown from 15 to 50
  • Companies Deleting a company should mark all users in that company as deleted
  • Subscription Page Type changed "your" to "you"
  • Companies Improve search so "St Johns" will match companies with "St Johns XYZ.."
  • Update People: Import: Check to see if user is already in the system and not deleted
  • Update Copy Project: Project Settings now copied to target project
  • Update Project Chart: Improved "scale" when min date and max date fall within same year
  • Update When uploading a new version of file, display the original file's name for reference
  • Update Milestones: Allow a person to complete a milestone if they are assigned to it even if they don't have Add/Edit Milestones permission
  • Update Tasks: Report: Added in Completed Date to Excel report
  • Update Dropbox: Added new option to get a permanent shareable link for a Dropbox file that can be emailed to people or sent to someone without having to have a Teamwork account
  • Update Quick Add: Remember last project used when adding a task for next time to speed things up for user
  • Update Workaround for .xlsx file viewing in IE
  • Update All Completed Tasks: Add option to filter by "Completed between dates" or "Due between dates"
  • Update All Completed Tasks: Changed date chooser to Date Picker control instead of selects
  • Update Everything: All Completed Tasks: Added new option to filter by either "Compelted by" or "Assigned to"
  • Update Comments: Show a hover on number of people notified to show who received an email notification
  • Update Resources: Add ability to copy resources from one project to another
  • Update Dashboard: Activity: Yesterday not highlighted like Project Overview Activity
  • Update Dashboard: Limit Late/Upcoming Milestones to 15 records and display message showing count of others
  • People & Companies Fix clipping issues - long company names
  • UI Messages - category picker uses new drop-picker interface style
  • UI Sidebar - Completed task lists limit to 10 items with "more" option
  • UI  Task Lists: Reorder: Added "drag handle" to make it more obvious that they can be reordered by dragging/dropping
  • Optimization All tasks new version now uses eTags

API Changes
  • Sessions removed after one time access
  • Rate limit now IP based rather than userId based
  • Proper http error codes added
  • File on tasks - option "removeOtherFiles" added
  • Ability for the site owner to get all user API keys
  • Send back "private" in GET /comments call

Bug Fixes
  • Import Users shouldn't be available to ordinary users
  • Files page: problems when changing user on left and sort mode set to size
  • Renaming file can change file type display
  • Friendly date as text need to round up instead of down
 

 

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd
Wed, 29 Feb 2012 15:53:24 -0800 Lockdown available for Tasks http://engineroom.teamworkpm.net/lockdown-available-for-tasks http://engineroom.teamworkpm.net/lockdown-available-for-tasks

Having answered a huge amount of feedback over the years, the release of this update fills me with great joy - I know from now on I will no longer have to tell people that you can't make a task private to just one user!

So from today you can make tasks private to individual users regardless of the company they are in. Gone is the "only private to the owner company" option. Now you are free to pick and choose who can see what within a project.

Working with multiple departments or even outsourced companies?  No problem. You can keep tasks private between you and one, or indeed, a handful, of them.

These screenshot show the new Lockdown feature. You can find it in the privacy tab when creating tasks. This gives you the power and freedom to specify exactly who can see the task.

 

It really is a thing of beauty!

Permalink | Leave a comment  »

]]>
http://files.posterous.com/user_profile_pics/714176/Sam_profile_pic.jpg http://posterous.com/users/5emlvLShjzLX Sam Kidd samkidd Sam Kidd