Category Archives: Engineering

Updates to the Doodle Wizard – we’ve made it even easier for you to invite your participants

In the past several weeks, our Doodle Engineering Team has worked hard to help people who are using our scheduling tool for the first time. In fact, we’ve redesigned the invitation step of the Doodle poll wizard and we’re launching the updated version today. So what are these changes and how do they help?

First of all, you can now use Doodle to send out up to 20 invitations without needing to sign up for an account. We increased this number because so many Doodle polls include up to 20 participants, and this number has risen week by week. This tells us that you’re using Doodle with more and more people, which is simply awesome!

If you want to invite more than 20 people, then we will require you to sign up, simply to prevent misuse and spamming. Doodle will send out beautiful emails to your invitees, all of which you can preview in the wizard. These emails explain what Doodle is and they contain the invitation link to your poll. You can even add a personal message to these emails.

Invite more friends, colleagues or guests easily

Invite more friends, colleagues or guests easily

Secondly, you can now connect your Google and iCloud address books right in the wizard to make it even easier to find all of the email addresses for the people you want to invite. We honor your privacy and only send invitation emails to the users you want to invite – we will never contact someone from your address book without your permission. We do not even store your address book on our servers.

For our regular users, we want to point out that you can still use Doodle the way you always have. You can still invite people by sending the link to your survey on your own. Just skip the invite step and you’re good to go.

What do you think? What other ways to invite people would you like to see on Doodle? Please give us your feedback right here on our blog.

Your Doodle Team

Ever wondered how Doodle works?

Have you ever wondered how the red and the green boxes are getting from your friends to you? The engineers at Doodle work hard each day to keep this process as easy and straightforward as it always has been.

It is very important to us that every person all over the globe is able to use Doodle to make scheduling possible between all kinds of people. This is why we support all major browsers (IE8+). Mobile devices are covered by native Apps (Android & iOS) or our mobile web version for other smartphones.


But what exactly is happening under the hood?

When a page is requested by a browser, our servers are serving a skeleton HTML page using JSF. This page includes some basic HTML, JSON data, templates and an initial JavaScript AMD module.

This module is the starting point for everything you see on Doodle. It loads all its dependencies with the help of RequireJS, reads the provided JSON data and finally renders the data with the Mustache template engine. To give Doodle a modern face we use the famous Bootstrap3 framework and customize it with SCSS. Since HD screens become common we are building Doodle to become Retina-ready.

At this point it’s on you – the Doodle scripts are loaded in your browser and now await your input; be it creating a poll, participating in one, or adding a comment. Most of these actions do not need the page to be reloaded, since our client handles your input and actions immediately and communicates asynchronously with our servers in the background using a RESTful API that is provided by the Java Jersey framework implementing JAX-RS. The responses of the server can be handled again by the JavaScript and give you immediate feedback using jQuery to handle the DOM easily.

To offer the huge variety of all our features we use the following third-party-libraries: FullCalendar to show you the polls within context of your personal calendar. Feature detection (legacy support) with Modernizr. Fancy Input elements with ChosenJS and Select2.

How your Doodle polls are stored and how the infrastructure looks like has been explained by this Blogpost; so this post will focus on the frontend part of the web app.

Doodle adds “reset admin link” feature to help administer your poll

Who hasn’t experienced this problem before: we click the SEND button in our eMail program and realise just in that same second, that we have sent a wrong link or have sent the eMail to the wrong person. Our Doodle users told us that they would love to get security for such error when sending the participation links for a scheduled poll out.

With today’s release, we have improved the use of Doodle admin links. Within the admin panel for your poll we now have added a functionality for organisers to reset the admin link. Such new admin link will be sent to the organiser by eMail, actually to that address that was used for setting up the poll. All users that have received the former admin link will be able to participate in the poll but not be able to administer the poll.

In hoping that we were able to help our users with such change we wish you happy Doodling on the world’s easiest scheduling tool.

Your Doodle Team

Important security news from Doodle

Earlier this week a vulnerability in the OpenSSL library was disclosed. Doodle uses this library to encrypt data transmissions like many other Internet services. Therefore Doodle might be affected by this issue. Learn more about the vulnerability on

First and foremost we want to express that all Doodle systems have been updated after the disclosure and the issue is therefore resolved on

There are no signs that the vulnerability was exploited to tap into Doodle’s data transmissions. However, due to the nature of the vulnerability this cannot be completely ruled out, though.

We want to emphasize that NO credit card data could have leaked via Doodle as this data is sent directly to our billing provider from your browser.

As a precaution we recommend that you reset your passwords and reconnect your calendars:

Do not hesitate to contact our support team in case you have any questions.

Doodle switches to HTML

We send hundreds of thousands of notifications per day that are related to the administration of Doodle polls. Some of you may have already seen that we’ve switched to HTML e-mail notifications. This was an important step to improve the overall user experience of one of Doodle’s core communication streams. We handle these messages in-house so that we can have full control over what our users get. You’ll notice that the HTML e-mails look better and offer more helpful information in one look.


The basic approach to develop the new e-mails involved iterative steps and a lot of testing. Over the course of a month, we released six layout versions to small subsets of users and measured KPIs like the opening rate and the click-through rate. Many users and a service called Litmus helped us test the designs in a variety of e-mail clients. We immediately incorporated the feedback and were able to measure the improvements instantly.

Initial text-only notifications

First iteration

Five iterations later: today’s notification


As a result, you can now experience HTML notifications in a fresh and structured layout that gets displayed in all modern e-mail clients. Poll initiators are much less likely to send out the admin link that is not intended for the participants. They can also invite participants by clicking on the invite buttons in the HTML e-mail. The final layout has been selected because it achieves an optimum click-through rate on links to Doodle polls, other Doodle content and advertising partners. Just like before, you can get rid of all advertising on Doodle by choosing a premium subscription.


  • a text-only fall back increases the click through rate significantly
  • over 50% of all Doodle notifications get opened
  • less clicks on advertising was equivalent with a higher lead rate, which is good for the advertiser as for the Doodle user

In the end, it was trickier to develop a good HTML e-mail than a website because there are even more e-mail clients than there are Web browsers. That was one of the lessons that we learned that anyone who’s created HTML e-mails before has also learned. Here are some helpful resources that we used:

Calendar connections: update

Being able to connect one’s calendar to Doodle is a great feature–and one we recently invested into making faster and more reliable. It works best with Google Calendar (both via individual Google accounts and via Doodle’s Google Apps integration), but our goal is to also play well with Apple and Microsoft.

Until there are calendar APIs for Apple’s iCloud and Microsoft’s Office 365, we want to provide Doodle connectors for iCal and for Outlook. The iCal connector already works reasonably well even though it is still in beta. While the Outlook connector also works well for the majority of its users, it does not work well at all for a large minority of its users. And in the case of the Doodle’s Exchange integration, the situation is even worse: it kind of works for a small minority and does not work at all for a large majority.

We apologize for this unsatisfactory state of affairs and are going to remedy it as follows:

  • The Exchange integration is going to be discontinued (by May 2nd) in order not to eat up more precious time that is better spent on Google Calendar, iCal, and Outlook.
  • The Doodle connector API is going to be modified according to the actual use of the Outlook connector. One important reason for the problems that the large minority of Outlook connector users experience is that some of the assumptions that we had made for Doodle’s connector API turned out to be wrong.
  • We try to outsource the maintenance of the iCal connector and the Outlook connector. We have developed them ourselves in order to verify (and, as it turned out, falsify) the Doodle connector API, but we are experts in Java and Web development and not in Mac or Windows development.

If you are a Google Calendar user, all is good. If you are an iCal user, keep updating the Doodle connector as it is maturing. And if you are an Outlook user, please remain patient (we realise that you have been patient with us already!): the Doodle connector API in general and the Outlook connector in particular are slowly but steadily going to improve over the next weeks and months.

by Paul E. Sevinç, Co-founder & CTO

Scrummy Doodle

As our group of developers has grown in the past few years, the development structure has become disorderly and the engineering team has been looking for some (but not too much) structure. In the past, Doodle released new features monthly, so the development process was kind of agile for years and this shouldn’t change. We liked it, and our customers (you …) liked it, too.

The most famous method of agile development is probably Scrum, and Scrum seemed to be a good fit for us. If you want more information about Scrum, check out Wikipedia or read the book “Scrum mit User Stories” (ISBN 978-3-446-42660-3), which we like and recommend. Unfortunately, this book is only available in German.

After a few weeks of preparation and research, we started our first cycle on September 28th and are running it for 3 weeks. The beginning was interesting, kind of exhausting, but fun, too. We also now have fancy task boards and burn down charts on our wall.

The engineers are looking forward to planning meetings, extreme programming, and retrospectives.

Do you have experience working with Scrum or do you have any questions? We love to hear from you, so please feel free to share your feedback.

Oliver Ganz