Delivering the MTV Video Music Awards & European Music Awards Live Interactive Experience

Well these have been quite a hectic two months after we partnered with MTV to deliver the two major music events of the year Video Music Awards and European Music Awards. The challenge was huge, our Studio admin tool was used by a number of editors to push interactive content in real-time to an outstanding 6 digits number of concurrent interactive viewers using our system to get feed updates, vote for polls, share content and more. This has been a great lesson on how to make our product usable to multiple editors in multiple regions simultaneously as well as testing our architecture while it’s being used by this great number of engaged users.
We hope to get the permission soon from MTV to publish here some of the amazing results of these events, stay tuned.

EMA live interactive experience

Posted in Uncategorized | Tagged , , , | Leave a comment

A Flex Air app to transfer bugs from Bugzilla to Jira

On my first week in attracTV and as my first aquaintance Flex, I was given a seemingly simple task: to move all the bugs listed in  Bugzilla to JIRA, our new system. Problem was that in the new system we also wanted to reorganize our bugs and use different categories of projects and components. Furthermore, manually handling ~300 bugs from Bugzilla and creating 300 matching issues in JIRA would take quite some time. So we wanted a simple solution which allows the user to create each issue more easily, with a simple click.

I created a tool which lists all existing bugs in Bugzilla on a datagrid (using an XML file downloaded from our Bugzilla system), automatically establishes a connection to the JIRA server (with the user’s own username and password, of course) and thereby lists the available projects and relevant components available to the user in JIRA. Each row in the datagrid represents a bug from Bugzilla which is either to be ignored or created in JIRA. To create a new issue in JIRA the user simply chooses a project and component from the scrollbars and clicks “create issue”, otherwise the user can click “Ignore”. The user can then save his work. Clicking “Synchronize Data” synchronizes the datagrid with the information last saved and deletes irrelevant rows (rows that were already handled in the last/current session).

The tool runs as an AIR application, where the main class (JiraHelp) is an mxml which holds the data grid as its main component, as well as outside buttons for downloading and saving the data in the grid. The data grid includes the “ignore” or “submit” buttons as item renderers which use the data in the current row to submit the issue / mark current row as “ignored” (row is to be deleted at the click of the “synchronize” button outside of the datagrid). Choice of projects in the “project” scrollbar is taken from the “projects” array (which is either to be hardcoded or downloaded from Jira. Unfortunately we noticed the relevant API function used to fetch projects from Jira did not function properly). The list of components in the scrollbar is made available by binding to the project chosen by the user within the same row, therefore the list of components open for the user is always in accordance with the chosen project within the same row.

The source code is available here. Enjoy :)

Posted in Uncategorized | Tagged , , , , | Leave a comment

Choosing our development environment

Lately I decided it’s time to upgrade our development tools. Up until recently we used Bugzilla (installed on one of our servers) for bug tracking, subversion was installed on one of our servers as well and Google sites was used for wiki.

The advantage was it was all free! Well not really – the servers for Bugzilla and SVN did cost some money, having our sys admin manage these servers + backups costs money and most important – these tools aren’t the most comfortable ones around so I’m sure some industrial engineer could calculate the costs of our developers using non-fun tools (or worst – not using them).

So I decided it’s time to grow up and defined the following requirements for my search for the best development project management tools combination:

1. It should include comfortable bug tracking
2. It should include a wiki system
3. It should integrate to Subversion (or alternative source control system)
4. It should have built-in support for agile development
5. It should support multi-project for all the above
6. Preferable: a hosted solution where we don’t need to maintain the system.
7. Preferable: A single integrated tool for all the above

Apparently, with all the project management tools out there, meeting all these requirements in a single solution is still VERY rare. Here’s the list of tools I looked at, my thoughts and why I didn’t use it (those are the ones that I found worth mentioning, there were a few others):

  1. Basecamp - Very easy to learn and use but very basic. I think this tool is great for project manager of different kinds but not for development projects.
  2. PivotalTracker - This tool is really fun to use, I think it’s the best tool for agile development but that’s the only thing it is, it does not meet any of the other requirements
  3. Redmine – Seems to answer all the requirements and also quite easy to use but for some reason I couldn’t find any hosted solution for this
  4. fogbugz – one the most suitable options I checked. They also have a comfortable model that charges you per user rather then packages. I didn’t pick them eventually because I preferred to stay with Subversion as the source control rather then studying and migrating to their proprietary klin

Most other solutions were kind of clones of the basecamp, none answered all my requirements.

Eventually I chose Jira Studio from atlassian. I’ve known their great tools from the past, the only 2 reasons I didn’t use them from the start were: 1) They’re a bit complex with sometime too many options 2) I didn’t like the fact that their pricing comes in packages (rather then per user) and make me pay more monthly.

So far I’m very happy with my choice, only thing which is still a pain is migrating the subversion repositories but that’s not atlassian’s fault and it’s a topic for another post.

Posted in Uncategorized | Tagged , , | Leave a comment

Opening Our Developer Blog

The last few months have been exciting for attracTV and we’ve been enjoying the attention from new clients and partners.

Now after the successful work with the big brother broadcast on mako and the NBA intl playoff broadcast on http://ilp.nba.com we are putting our efforts on productization of our service in order to open it for any publisher with video on his website (“publisher” would have been enough…) that wishes to enhance the video watching experience with vidgets.

During this work we’ve used so many great open source projects, so many small examples from bloggers, tips from experts and answers on forums that I thought it’s about time we’ll share some of our knowledge with the community.

Thus this blog is going to be about things we do in the R&D and later on about technical tips to our customers/partners.

Enjoy.

Posted in Uncategorized | Tagged , , | Leave a comment