Continuous Integration and Continuous Deployment are strong concepts in modern software development and specifically useful and necessary for cloud applications. Delivering code continuously keeps the product development agile and allows for fast iterations. Specifically when it comes to SaaS products or services, the way to ship software has to follow the continuous track, delivering new “releases” several times a day. For example, at Quora every commit is submitted to the production system, unless this process is actively suppressed.
Ever decreasing software release cycles also require to rethink the way feedback from real users is gathered. Bimonthly user experience reviews with a selected set of customers are not suitable if new features of a product are published daily. Tools to suggest improvements and to report bugs need to be actively integrated in the product development process, addressing not only a selected group of testers but also includes real users.
This blog post is essentially an extended tutorial, explaining how to set up a 3C software production chain:- Continuous Integration, Continuous Deployment and Continuous Feedback.
We will use Microsoft Visual Studio and deploy directly to Windows Azure (Section 1). After that we connect Microsoft Team Foundation Server Online to our tool chain (Section 2) and subsequently connecting TFS with Windows Azure to establish Continuous Deployment directly from Visual Studio (Section 3). Finally we will add Usersnap to introduce Continuous Feedback to our setup (Section 4).
Since a standard “Hello-World” approach is always disappointing, we decided to create a tweet-wall which displays tweets containing the hashtag #usersnap. Lots of screenshots should provide a step-by-step tutorial to get you started with Visual Studio 2012, Team Foundation Service and Azure and finally Usersnap. There is no need to write code while walking through this tutorial.
Working with bug tracking software can be an extreme pain for the communication/marketing side of your startup. Oftentimes using one or more tools alongside is forced upon them and they don’t always have the notion how important browser- or OS specifics are. Believe me, I’ve been on both sides. If your communications team won’t happily help their programming co workers optimizing the side, how can you expect your users or customers to do so?
Let’s talk about how to make bug-fixing fun again!
It has been announced that YouTube gets another new layout and as always, YouTube offers a feedback button on the bottom right corner to collect textual and visual feedback from their visitors, which is an extremely good idea.
YouTube’s feedback system on the test bed
Clicking on the YouTube feedback button displays a text-box and you will be asked to describe your feedback in your own words. After that you can highlight important areas in your browser and blackout private information:
When I was 3 years old, my parents had a grocery store selling almost anything. I spent my days observing customers and finally I came up with the idea to sell onions in front of the store, directly on the sidewalk to attract more customers. My mum told me that I need to address everyone to offer what I had to sell. Finally, I sat there waiting for my first customer to do business. I took all my courage I had as toddler and did what I was told: I asked everyone passing my kiosk if they needed onions. Surprisingly an old lady wanted to buy a kilo of onions when I suddenly realized that I was not able to weigh them – I couldn’t even read numbers at this time.
At the end of that day my conversion rate was zero – I sold not a single onion but I learnt a very important lession: You’ll only have the chance to sell if you get in touch with your customers and if you can deliver exactly what they need.
My parents are still running their 1887-founded business. In the 125 years of its existence, some major pivots were made (they made pivots before it was cool) ranging from selling leather propulsions followed by a grocery store which transformed to a successful niche player: today Betten Leimer produces and sells feather beds.
Launched in 2004, Basecamp is one of the oldest web-based project management and collaboration tools on the web. With 150,000 companies using Basecamp, it’s definitely one of the most successful PM tools out there. 37signals, the company behind Basecamp relaunched Basecamp as “New Basecamp” back in March this year. The “old” Basecamp Classic is still available and it is still possible to sign up for a Basecamp Classic account. Since the classic version is not actively promoted any longer, this blog post refers only to the “New Basecamp“.
Instead of reviewing all features of Basecamp and comparing them to other tools, let’s focus on five real life requirements for a project management tool which is used for managing web development projects. These requirements are experiences we gathered in the last couple of years.
Let’s face it: There is no such thing as a perfect software. There are always bugs and you don’t need to be tech-savvy to find them. It is even crucial to test software with people missing a technical background – they are in general less merciful about issues which are trivial in a programmer’s eye. Getting trivial bug reports is the key to improve the usability and the user experience of web applications.
In general the person with the missing technical background will hit your inbox in this way:
A couple of weeks ago we were playing around with the famous web clipper from Evernote. The Evernote web clipper is a browser extension which lets you clip web pages directly to Evernote. Kasey Fleisher Hickey wrote a nice summary and gave some ideas on how to use the web clipper most efficiently here: Quick Tip: Remember Everything You See on the Web
While discussing the best use cases of the web clipper, the following idea came to our mind: Why not have a “shared” web clipper where visitors of a website can easily leave visual feedback which is then collected in an Evernote-notebook? This would be an easy and efficient way to collect customer feedback! Also, this might be very useful if you want someone else clip something for you, e.g. a typo on your blog.
It’s common knowledge: in a startup, you are your first customer. You are the first one eating your cooking – and unless you have some secret product-guy super powers it will taste like dog food. Dogfooding is a great way to get an idea of how your customer will perceive your product. Using your own software on a day to day basis takes you a long way finding the most important product improvements.