Interview with creator of IM startup Digsby Steve Shapiro

    image

    On December 2, the Lifehackers.com online magazine published a list of the best software products of 2008 in the New and Updated category. Along with such giants as Firefox 3, Google Chrome, Google Android and iPhone2, we can see an image of a modest, but very charming guy in a cap. His name is Digsby .
    This is not the first award of a multi-protocol messenger with support for social networks and mail (more about its capabilities can be found on the official website or from this post on Habré). Already in April, the product received 4 of the 6 IM Best Awards 2008 awards (and this despite the fact that the beta release took place only in March!).

    Last week, I had a chance to chat with the author and project manager of Digsby in one person - Steve Shapiro. I want to share the text of this 15-minute conversation with habrapolzovatelyam.

    Initially, the conversation was conceived as a video interview, but to my deep regret, there was a failure when recording sound (our tracks overlapped strongly). I tried to somehow rectify the situation, but it still didn't work out very well. Nevertheless, I post the video and some kind of podcast for those who are more interested in hearing the answers in the original. For the rest I offer my free translation of the transcript.

    21csm: Steve, how long has your team been working on Digsby?

    Steve:Well, we started work in March 2006. It took us two years to develop a product that could be released as a public beta. This is a rather complicated product in terms of development, as we support so many different protocols for IM, email and social networks ... Development and qualification level in all these protocols, reverse engineering (where it was necessary) - all this took quite a lot of time. In addition, we made a big emphasis on the user interface and tried to make Digsby as easy to use as possible. And we needed to make sure that these goals were achieved before the public release was released.

    21csm:Who was the author of the idea? Well, you know, the idea is not so innovative and in 2006 it was just “another messenger”. Surely there were a lot of people around who said: "This will not work."

    Steve: Generally speaking, the idea came about as a course project. I just got an MBA in RIT and took the course “Entrepreneurship”. And this entire course was aimed at developing a business plan. So Digsby turned out to be my student.

    21csm: Cool! :) Please share your success story.

    Steve:With pleasure, although we are still working to achieve success :) Of course, we are happy to see the results: our launch in March was quite successful, we hear many excellent reviews, we are seeing a steady increase in users ... Just a few days ago Lifehacker called us among "New and updated products 2008." Other products on the list were Firefox, Google Chrome, Android, iPhone, and it was just awesome to be on a par with such brands! We are proud to have climbed this far.
    You know, a success story is simply to make a product that serves the true needs of users and make it as easy to use as possible. At Digsby, one of the tasks we tried to accomplish was to make it easier for people to manage everything they have to do online. After all, many have several IM accounts, most people have several email accounts: for work and personal ones, many also use social networks. So our main goal was to feel the true needs of users and try to give them the opportunity to do what they could not before, well, or at least let them do the same, but much easier.

    21csm: Well, if I understood correctly, you were the main driving force promoting this idea, and those who brewed all the mess.

    Steve:Yes, but I cannot be called the chief designer of this whole thing. As for the idea, yes. The business plan is there too. But software development was carried out by a full-fledged team of programmers. I myself did not code anything.
    We have one amazing feature of IT education: all training programs actually go on for at least 5 years, because require years of joint practical work in order to get a diploma. So our whole team actually consisted of “student interns” who were hired on the job, and then they graduated from university and switched to full-time employment. All development efforts are entirely in their hands. And I must say, we have just a wonderful team here!

    21csm:Which platform underlies the Digsby - C ++ software implementation? What framework was used to develop the UI?

    Steve: Digsby is completely written in Python. Yes, I see your smile :) In C ++ it would be much more fun to write all this, and nevertheless, we chose a faster tool. Using high-level languages ​​has many advantages: when working with a network, in managing the data generated by our huge list of protocols. The GUI is written using the wxPyhton library , which, in turn, is an add-on to wxWidgets. So the guish library itself is written in C ++. But we interact with her from the Python environment. And this allowed us to control everything we need and make the GUI in python, despite the fact that the foundation on which everything rests is actually C ++. So we managed to get the best of both worlds: C ++ performance and simplicity, and the pleasure of developing in Python.
    The other side of the issue is that both wxPython and Python itself are completely cross-platform. So our code runs on Windows, MacOS and Linux. Since we have a relatively small team, we decided to make a release for Windows first. As soon as this version is stable enough, we will release releases for Mac and Linux.

    21csm: What was the size of your original team?

    Steve:We started with four developers. Then they began to grow rapidly, because realized the scope of the project. Now the team consists of seven people. Perhaps we will expand a little over time, but explosive growth is not planned.

    21csm: Do you have all team members present locally?

    Steve: Nope. Most, of course, are here, but some work remotely. When we see someone with an impressive skill level in a certain area, when you need to do some subproject and this person seems to be the most suitable candidate, we can take him.
    In general, remote work does not pose any problems. We use IM for communication, Skype and all that. Technology has made it possible to remotely work on projects like this. Especially when there is a version control system. A team whose members are located in various places can work quite effectively on a software product.

    21csm: What process do you use in development?

    Steve: Something like Agile. We, of course, use code reviews.
    Every week we have alpha builds that we stabilize and give to users. Digsby has a built-in auto-update system, so whenever we release an update there, you will have the latest version with the next login.

    21csm:How many productive hours did you spend a day before the first public release?

    Steve: Our work day ends at eight in the evening, but people like to work on the project so much that they always stay longer. The team works hard and for a week we get a decent number of hours.

    21csm: More than 40?

    Steve: Yes, yes. Usually we get 55-60 hours a week on average for a team.

    21csm: And now?

    Steve: Yes, the same. You know, we have so many requests for versions for Mac and Linux that we try to achieve the necessary results as quickly as possible.

    21csm: Tell us a bit more about code reviews.

    Steve:We are reviewing revision revisions in SVN, which is used as a version control system. For project management, we use TRAC - it's just a great product! We definitely recommend that others use it. We review each revision. All team members try to describe the results that they tried to achieve with their code, what ticket it is associated with, etc. We all carry out code reviews and one of its advantages is that bugs are found before they reach users. But most importantly, absolutely the whole team is well acquainted with the protocols and other important aspects of the project. This is great when you have any kind of bug in AIM asking for help from teammates who also understand this protocol.

    21csm:After you had to delve into the structure of various IM clients, which of them became the most hated for you?

    Steve: :) Yes ... the protocols are different. It’s a pleasure to work with Google Talk, for example, which is based on Jabber. It is just perfectly made, well standardized, and no reverse engineering is needed.
    Probably the most hated is MSN. He is perhaps the most complex of all. In particular, due to the peculiarities of its structure. Every time you start a new conversation with someone, MSN connects to a new server, instead of leading just one pool for messaging, this protocol is the most hated now, because after starting up it worked most with him bugs. But when we first started, I would call the most hated Oscar (which ICQ and AIM use). First of all, because there everything is in binary form. There the source codes are completely unreadable and it is very difficult to work with them. I had to dig deep into them.

    21csm: What was the most difficult technical problem you had to deal with?

    Steve:Yes, you know, I somehow will not name any one problem the most difficult. In principle, there has never been such a thing that we ran into something, got stuck and could not budge. The team is very gifted and we work together harmoniously, this allows us to successfully cope with problems.

    21csm: What is your favorite bug :)

    Steve:Or my most unloved :)) We happened to observe a very interesting bug ... For some Windows Vista x64 users, when they turned off the cursor shadows in the settings, if Digsby was running, explorer.exe would start eating 10-20% of the CPU. When the 32-bit version of Vista came out, there was this problem too, but they released a hot fix that solved it. And on x64, this problem still comes out in some people. This is one of those mystical bugs when something is wrong with the operating system and we are trying to find out what caused it.

    21csm: What is the most fascinating part of your work?

    Steve:I would say the most fascinating part is to hear all these reviews from users, perhaps this is the most valuable part. Whenever we receive email from someone or see someone tweets about Digsby, we hear positive feedback about how he makes them more effective, about how they love this product - this is the most worthwhile part of all our work. It fills us with energy and gives greater acceleration.

    21csm: Do you have investors or does dotSyntax LLC independently invest in Digsby?

    Steve: Yes, we have two business angels. When I finished my business plan for Digsby, I started contacting everyone I knew to find out if they had any contacts among potential startup investors.

    21csm: What helped you attract them?

    Steve:I presented them with the main idea, product features and the results that I planned to achieve. So I approached the issue of financing. Just use personal contacts to attract investment for your company.

    21csm: Do you have plans to monetize Digsby?

    Steve: Yes. We have a lot of ideas. But now we are still aimed at increasing the user audience and improving the product. However, we firmly know that we want to leave Digsby free and ad-free.

    21csm: What about the global financial crisis?

    Steve::) It does not seem to me that we experience its effect directly. If we were dealing with the sale of advertising, now we would have to observe a decline in income. If you need financing now, it’s much harder to get compared to the opportunities two years ago. But since we are still in a rather early phase and focused on growth, the crisis did not affect us as much as the rest, larger companies.

    21csm: When will the Linuxsoids finally get their Digsby version?

    Steve:Mmm ... we don’t have specific time forecasts right now. However, I must say that making the Linux version a lot easier. In general, this is a real dilemma. On the one hand, Macs have a very unique operating system, especially in the sense that Mac users expect certain behaviors from programs, the GUI should look different. With Mac, things will not be so simple, and you will need a lot more native GUI elements for Mac release. I'm not ready to say which version we will release first, but it will definitely be easier for us to make it for Linux. And we have many requests for both of these operating systems. So we still see which one will be more popular, and try to release them one by one as soon as possible.
    Speaking of time, we don’t have a specific date yet. Two public releases are approaching. Both are bug oriented. Then there will be one or two, focused on new features. We also have a lot of requests for the implementation of additional features: group chat, the best integration with Twitter ... Again, we plan to concentrate on the most popular of them. After the release of all these releases, we will begin to devote much more time to the Mac and Linux versions. When we understand that our product is stable enough and we are ready to move to other platforms.

    Also popular now: