Today we’re rolling out a new feature for Lighthouse that’s been needed for a long time: bi-directional ticket references. Since we deployed this internally, we’ve all been using this new feature like crazy, and it’s really helped get things done here. We’ve tried hard to make it as workflow agnostic as possible, as you’ll see.
While it’s easy to link to other tickets in the same project with a comment like “blocked by #145”, it’s not easy to see what links to a given ticket. This one-way relationship limits the applications of ticket links, so we decided to make it a two-way relationship.
When a ticket links to another ticket, we now create a back-reference that you can see from the linked ticket sidebar. An excerpt of the paragraph surrounding the link is also included, to provide context. This allows you to easily specify ad-hoc relationships between tickets the same way you do now, without having to take any additional steps.
In fact, there’s a good chance you’ll find a use for this feature right away. While back-filling the references for existing tickets, we found that of 12 million tickets, over 300,000 included references to other tickets, with a total of 1.5 million references across all of Lighthouse. This means you are likely to see new sidebar content for commonly referenced tickets in your Lighthouse.
We’ve also hooked up an API endpoint for this first version of the feature, for listing references to a given ticket (references can still only be created by comments, already possible via the API). By accessing the “references” resource on a ticket using the API, you can get a list of references for that ticket. Use it to build your own ticket dependency graph, or who knows what! Of course it’s up to you to parse out the words to infer the type of relationship, and enforce that across your team.
A few details: if a reference is out of place or irrelevant, they’re easy to remove, but they’ll reappear if the referencing comment is updated without removing the reference. References are added in an asynchronous job and may not appear right away. We actually pull these references out using an HTML parser, so even ticket links that are not specifically auto-links should still work as intended.
We hope you find this new feature useful, and we welcome your feedback on how it could be even more useful!
We are looking to add another software developer to the team here at ENTP.
You'll primarily be working on two Rails applications, Lighthouse and Tender. We recently implemented a Redis based analytics backend to Tender and are working on the next major update for Lighthouse.
It's a pretty fast paced environment. Aside from that, we love open source and solving problems, so the possibilities are endless. If you have an awesome idea, we'll back it. We're always looking at all sorts of fun programming challanges beyond the range of your typical web application.
Zack Hobson and Courtenay Gasking are the two developers you'll be joining here at ENTP. Both are awesome at what they do. You'll be working closely with Hobson, pairing on feature development and helping push our applications to the next level.
Everyone here at ENTP works as a team. We all chip in with customer support and contribute to bug fixes, brainstorming, and work towards a better future for our products.
Ruby, Rails, MySQL, Redis, jQuery, Prototype, Git, and a love for open source software. Bonus points for experience with Chef.
We're a team of eight. Most of us reside in Portland because it's the most awesome place on the planet, but part of the crew is down in Los Angeles. We typically roll in to work around 10:00 AM and have a serious love for coffee shop hack sessions, quality bourbon, and micro-brews.
What we bring to the table
Competitive salary with health, dental and vision. It's a great gig, an awesome team, and an opportunity to work on two extremely well established Rails applications.
How to apply
Send an email to firstname.lastname@example.org with links to your code and a blurb about yourself.
At approximately 1:00 AM PST Amazon's Eastern US data center started showing signs of latency and error rates with EBS volumes and connectivity issues. As a direct result we're seeing a number of issues on Lighthouse that are causing decreased performance and frequent connectivity problems.
Tender does not appear to be suffering from any of these problems.
04:07 PM PST on April 22, 2011
- Our additional application servers are back online. We stayed up through the AWS outage, but it's still nice to have those additional server muscle up and running again.
We've successfully forwarded all traffic to our servers that are not affected by the EC2 outage. Lighthouse is up and running.
We're rerouting traffic from the downed EC2 instances to app servers that are still functional.
Amazon now gives a high-level ETA of “a few hours” until the full recovery. As always, see http://status.aws.amazon.com/ for details.
For those of you who aren't Ruby geeks, Craig Anderson has created a web service based on the gem over at http://lighthouse-ical.craiga.id.au. The service allows you to get a subscription link for iCal.
or, Why I am a dick about tickets
My role at ENTP is primarily that of a developer, but I do support, as well as fielding questions from and doing research for the rest of our support staff. For both of these roles Tender and Lighthouse integration is a huge help.
Let me explain a little bit about my relationship with tickets. I love tickets and depend on them to do my job. Unlike my own brain, Lighthouse tickets are a steel trap of information, keeping track of relevant changes and discussions until they’re no longer needed. They help me avoid context-switching unless there is a real emergency. For this reason, my workflow is highly ticket-oriented. Having a steady flow of tickets is the easiest way for me to stay focused.
The support staff is sometimes annoyed at me because I can sound like a broken record when it comes to bug reports: “Were you able to reproduce the issue?” followed by “file a ticket.” It is a brusque reply because I want to minimize distraction and keep the important conversation in the ticket. With Tender’s support for Lighthouse integration, the rest of the support staff and I can communicate almost entirely through these channels, and everything stays on the record.
How we track customer issues
When a user opens a discussion in Tender, generally the first thing staff will do is determine whether the bug is a result of a defect or customer error (sometimes it’s a little of both). If it’s determined that there’s a defect that needs to be addressed, they’ll attach a Lighthouse ticket tagged with “to-do,” which is the tag we use to mark tickets that require a followup to the discussion.
On the development side, we track the “to-do”-tagged tickets in Lighthouse and schedule them by moving them into milestones. I generally prefer to have every second or third milestone dedicated to customer fixes, but often a customer bug ticket will make it into a feature milestone if the functionality is related.
At this point the developers can dive into the milestone and crank out a pile of fixes at once. When a milestone is completed and shipped, staff closes the loop on the tickets tagged “to-do” by returning to the associated Tender discussions and letting the customer know it was fixed. In this way, staff spends more of their time helping customers and developers spend more of their time hacking and solving problems.
So our bug-fixing process starts in Tender, moves to Lighthouse, and upon completion returns to Tender. By using each tool for the right job, it’s much easier for me to stay minimally distracted and for the support staff to efficiently address defect reports. Hopefully their annoyance at my obsession with tickets is a small price to pay.
That is why I am a dick about tickets. The fact is, I am coming from a place of love. My love for tickets.
We’re interested in hearing about your Tender workflow: Do you keep state in your tools or in your head? What sort of processes keep your support operation running smoothly?
Have you been developing custom solutions for the web? pick your best feature, module or UI component that can be packaged and re-used and publish it on Binpress. Binpress is a marketplace for source-code, where developers can sell and buy source code from each other.
The outage affected all files processed by our servers. We quickly contacted Amazon and resolved the issue, however the time delay for Amazon's system to accept our changes took longer than expected.
At 5:36 AM PST upload functionality was restored. This morning we began to reprocess the backlog of uploaded files that were not working from the outage. We've now successfully restored a vast majority of the backlog.
A small number of uploads returned errors during our attempts to reprocess them. If you notice missing files, please contact email@example.com or firstname.lastname@example.org and let us know, but you'll need to contact the user and have them upload the files again.
We sincerely apologize about the outage and are working to put countermeasures in place to prevent the edge case uploads that we've been unable to restore. When things go wrong, we hurt just as much as our customers using Lighthouse and Tender.
For all you OSX users out there who aren't too busy playing with the new Mac App Store that released today, here is a cool tip to add the Lighthouse mobile interface to your Menu Bar.
Step 1: Download Fluid.app
Download Fluid from http://fluidapp.com and place it in your applications folder.
Step 2: A better icon
Grab the Lighthouse Fluid icon HERE.
Step 3: Setup
Go ahead and run Fluid. First you'll see a box asking for some information. Enter
http://iphone.lighthouseapp.com into the URL field and give the application a name. Next, select the destination folder you want to install it too and then grab the Lighthouse Fluid icon from your hard drive.
Step 4: Create
Click the Create button and then sign in to Lighthouse! You'll see a list of all your projects right away.
Bonus Points: Menu bar
Fluid also gives you the option to place your newly created Lighthouse app in the Menu Bar. Just go to the Lighthouse app menu and select Convert to MenuExtra SSB from the drop down.
Now you have ALL your Lighthouse projects right at your fingertips!
A full tutorial on Lighthouse + Beanstalk / GitHub integration, courtesy of jblotus!
NewsCloud, a Seattle based Knight Foundation grant project, is working to pull newspapers out of the stone age and get them into the social media game. The application provides news organizations with a way to integrate their content directly into a customized Facebook application, helping them reach new audiences.
Earlier this week, the NewsCloud crew mentioned their use of both Lighthouse and Tender Support in their blog post, Development, Outreach and Financial Tools We Use - Managing Your Grant Project Series.
We'll be performing server upgrades to Lighthouse tonight at 8:00 p.m. PDT (UTC/GMT -8 hours). Lighthouse will be offline during the maintenance window is expected to take approximately 1 hour.
You can follow our Twitter account HERE for live updates.
9:02 p.m. - We just brought Lighthouse back online. So far so good. User avatars are currently broken.
9:12 p.m. - Working to get Avatars back up as soon as possible. It's no fun when nobody has a face.
9:43 p.m. - Known issue with attachment uploads hitting errors. We issued a quick fix. Large file uploads may time out from time to time until we have a permanent fix in place.
We’ve schedule an emergency maintenance window at 4 p.m. PDT (UTC/GMT -7 hours) to account for the slow response times users have been experiencing.
Maintenance is expected to take 30 minutes, with 5-10 minutes of downtime while we upgrade the current hardware and restart the servers. We apologize for the short notice and any inconvenience this may cause.
Friday @ 4:17 p.m. PDT
We've pushed the maintenance window back to Saturday.
Sat @ 9:18 p.m. PDT Servers have been rebooted and are back online.
Over the last few weeks, we've received a large amount of user feedback regarding slow response times across our servers. Lighthouse users in particular have been experiencing intermittent delays that result it long load times, often resulting in errors.
The spikes on the database appeared to be random, but over time, a pattern unfolded. We've grown a lot over the last few months, and it's starting to take it's toll on the servers, affecting the stability of the applications and the users experience.
We sincerely apologize about the issues. Our products are just as critical to us as they are to our users and we're currently working with our host to implement a fix and secure stability to the servers.
That's right! We're moving to the Cloud
Last month, we diverted a large portion of our attention towards preparing for the move. The good news is that we're almost there. Over the next few days, we'll start migrating key portions of the applications, followed by the applications themselves.
The most exciting part is the scalability and large performance gains. The core setup of our cloud infrastructure is a lot more hardware than we're currently running on. It feels like I'm trading in my Volkswagen for a Porsche.
We'll post more details about the move soon.
ENTP has some new exciting positions opening up. We're a small company of 10 employees located in Portland, Oregon. If you're an experienced web application developer or someone looking to gain experience working in a mature team environment, continue reading and check out the positions we have available.
Tuesday, March 16th at 5pm in the Austin Convention Center room 7:
For many small businesses, the need for an IT person (aka “Emergency Response Technician” or “ERT”) often falls on one employee who primarily has non-IT responsibilities. This humorous presentation will offer valuable tips and philosophies to improve the productivity, prioritization and sanity of that often-overwhelmed individual.