Our Community is Strong

Using broken development frameworks, or why we don’t use Zurmo

The above is the title of a recent blog post about Zurmo that was recently published. It raised some great questions about our application, our community, and the difference between constructive criticism from serious developers and lashing out. Let’s go through that post, step by step.

People often wonder why DBA’s used to hate developers, and with DBA’s also the System Engineers, (note that I just expanded devops by adding dba’s to the picture…)

Hate is such a strong, nasty word. It is appropriately used when describing evil dictators or serial killers.

So let me tell you a story .. A couple of weeks ago one of our customers wanted to start experimenting with a new type of CRM. A gamified CRM. Zurmo …So we set this thing up in a dev environment and started playing with it , while at first it looks nice …

Thanks! We put a lot into the user interface. Glad you like it.

the application actually felt pretty slow.. however given that is a low resource development environment we looked no further. Yet the next step is that we run into missing features, such as the fact that every contact you create by default is set to private .. which really isn’t productive for a CRM system where you want to be able to follow up on different customer and share information.

Good call. You are totally right about that. We decided several months ago that it didn’t make much sense for record visibility to default to owner. So we changed it. It’s a configuration setting that can be adjusted by Admins. You can adjust the default however you want.

Are you sure that your installation was from just a couple of weeks ago?

So we tried figuring out what the database changes to do this in bulk would mean, surely it had to be a flag on the contact record. Wrong, Zurmo uses an ORM for their database connectivity …so their data model wasn’t really trivial.

So we decided to look at the MySQL log file to figure out what db changes happened when updating the record. Yes there’s better approaches but this one learned us a lot .. The procedure I followed was pointing my browser to the page where I wanted to switch the checkbox, log on to the mysql box, set global logging on. Clicked the checkbox and stopped global logging. This gave me a log file with all the database actions required to make that one single change. I had to cross check a number of times … the file created by this short and small action was about 70K

Yikes! Response from our lead engineer, “He definitely shouldn’t be getting 70k for creating or updating a contact record, so maybe he has some sort of environmental issue or something else is going on. Maybe he has debug=true and he’s not running memcache, but either way 70k is way too high even for that. It would be great to know what happened to cause that. Has he posted on the forums?”

We are guessing he is talking about using the designer tool and making a change to a field via designer. This issue with queries is being addressed here: https://www.pivotaltracker.com/story/show/50389649.

It’s kind of hard to know what the real issue is, however, unless if we can see a real world example. It would be nice if this issue could be posted in the forums so we can get to the bottom of it. That’s how open source communities work.

Puzzled you start looking at the queries … The query list was full with “SELECT * FROM ” stanza’s .. 70K whopping K of queries that make your hair turn grey …

Grey hair is no good. Life is too short. Some people try yoga. For others, going to the gym does the trick. Maybe a walk in the park to get a bit of sunshine.

I figured I’d file a bug .. but I couldn’t find no [sic] bugtracker for Zurmo, only a forum (and forums are the most broken form of communication imvho)

Oops! It looks like you didn’t see our bug report. It easily accessible link on zurmo.org under development ->report a bug. https://bitbucket.org/zurmo/zurmo/issues  

…yet the developers responded on Twitter.

That is correct. We did respond on Twitter (see below). We prefer it when people ask questions through the proper channels. But of course, if we see a tweet about us, we’ll usually respond.

The feedback wasn’t really satisfying so we quickly decided that supporting this application was not something we would like to do.. and abandonned it.. The real question is who needs a Gamified CRM anyhow…

That’s a great question. So far, from the number of people downloading Zurmo everyday, engaging with us through the forums, and giving us positive feedback, quite a few.

We’ve put about three years into Zurmo. 99.99% of all people who come across it have responded positively. Or at least their criticism has been constructive. Hate, on the other hand, is an entirely different kind of animal.

We know the author/reviewer is busy. Probably too busy to respond to this. But if he does have something productive and non hateful to say, he should feel free to submit a forum post where our community can respond in a useful way. We also have weekly dev sessions that he is more than welcome to attend. And once again, bugs are reported under “Development” in our main menu.

Moral of the story: We don’t believe Twitter is the place to support the intricacies of a sophisticated CRM system. Our community helps one another in our forums. We do have a proper channel for bug reporting, and we won’t be bullied.

*Let’s review those Tweets:

k1

k2
k3

Leave a Comment

  • krisbuytaert

    A quick response …

    If you would have replied to my tweet about a decent bug tracking system I would have filed a bug .. in the meanwhile we opted for VTiger … and never looked back … The blog post had been in drafts for ages .. and finally got out .. indeed missing the new release .. but then again .. to me March still feels like a couple of weeks ago … (must be the grey hairs..)

    And to clarify .. the hate was not pointed at you … I have all the respect for people building open source products and trying to improve things .. it was just a good example to point out the historical disconnect between devs and ops … and hopefully to learn a lot of people that a lot of the frameworks they use create more problems than they solve.

    As for the log itselve https://github.com/KrisBuytaert/snippets/tree/master/zurmo I don’t think we had debugging enabled , we did not set specific environment variables

    (PS: Yes I’ve updated the blog to clarify the file being 70K, not the number of queries..)

    • Stafford McKay

      Kris, thank you for your candid response. We appreciate this exchange. It helps us grow – and gain grey hairs of our own. And thanks for clarifying the hate was not directed towards us. As for your CRM selection, well we’ll be happy to help you migrate back to Zurmo when the time comes. :-) beste Wensen!

      • Giuliano

        Guys we are seriously considering Zurmo as a candidate for several CRM implementations… And really it does not look like future to me going for a system that is a 2007 clone a of a different system which every customisation gives us the gray hair you are talking about. Bud still 70k log is huge. If it was just a bad set up what is the normal log you get? What do you do about it?

        • Ray Stoeckicht

          We have made many improvements in installation since the summer of last year. I don’t think you will see any issues if you were to install Zurmo today. Have you given it a try?

          • Giuliano

            Yes, I have a local-hosted version and another one on our production server. The local is painfully slow, but I give credit for it due the miscofiguration (I have several “optional” services missing, so my bad like memcached) your DEMO and the production version is fast enough, but I did not ran tests for the DB logs (which I will).

            We are a consulting company that implements opensource CRM and we are looking for a serious SugarCRM alternative due the amount of bugs in the source code that makes every customisation with it a lottery. Still your answers are a bit slippery – I think this should be the place where to clarify what was the problem with the DB – if you did some optimalisation, what is the result and could you please give a link where to take a deeper look into it? Thank you.

            (Last question your Czech translation is a bit funny – translating a lead as an initiative is just weird, how do I get in touch with the translation team? – I did not find any registration form in the translation section, just the log in)

            (P.S. My developer was dancing with happiness when installed Zurmo and received no error log in comparison to thousands with SugarCRM, so we surely are amongs your 99,9% supporters, just making sure we do not fall in the same trap again.)

          • Ray Stoeckicht

            You might want to join our weekly Dev Session so that we can run the DB questions by our Lead Engineer.
            We have Developer Sessions every Tuesday at 10:00AM Chicago Time (http://zurmo.org/forums/index.php?/calendar/event/2-developer-learning-session/). You can always join an
            upcoming session and ask any questions to our technical team.
            As far as the Czech translation, it is done by contributors so I’m not sure how accurate it is.

  • Pingback: Top Apprentice Blog Zurmo Gamified Open Source CRM Releases Beta Version | Top Apprentice Blog