Skip navigation
All Places > Developer > Blog > 2018 > October
2018

Hi peeps! My name is Kristján Geir Mathiesen and I work for Origo, an Icelandic Sugar partner. I´ve enjoyed attending SugarCon for the last three years - this year was just as much fun as ever

 

Me being from Europe and the year being 2018, GDPR has been on my mind and to do list for the past 18 months. When I looked over the SugarCon agenda and saw that David Wheeler was doing a presentation on data privacy, I just knew I had to attend it.

 

 

 Below are some of the highlights that stood out for me.

 

  • Consent should always be stored with audits and how it was obtained - basis for the processing is additionally very important.
  • Basis for processing must be checked and re-checked since the basis for processing might be revoked at any time! Make sure the basis are kept up to date.
  • Great idea to audit anything that relates to data privacy - including the source - to make any post-work easier to perform.
  • Sugar recommends: Don´t erase records, erase content of records.

  • New ErasureFieldList function was added for manual erase (see code in slides).
  • Personally Identifiable Information (PII) is tricky and can be delusive, like the 2006 paper reveals in this slide:

 

 

David´s presentation is called "Deep Dive into Data Privacy Architecture."  You can check out his slides here.

Hello!  I'm Justin Kuehlthau (@justinkuehlthau), Director of the Sugar Practice at Technology Advisors (Technology Advisors, Inc.).  This was my 8th SugarCon, and this year I was lucky enough to be selected as a Sugar Scholar! 

 

One of the interesting sessions I attended was presented by Jorge Arroyo, VP of Engineering and Fellow at SugarCRM, and Alexey Klimko, Senior Software Engineer at SugarCRM.  This session covered planning and architecting for and troubleshooting performance in Sugar.

 

This break out session started with Jorge discussing performance in Sugar and ways it can be improved.  My favorite quote of the presentation was:

Solutions must be architected and designed for performance.  The #1 element of user experience is performance.  You must plan for it during all phases of your project.

Main Takeaways

Jorge and Alexey split the presentation into two main parts:  performance and troubleshooting.

 

Performance by Jorge

List Views

List view performance is determined by the database.  The key to list view performance is indices.  If you’re going to sort on a field, you should consider having an index on it.  On the other hand, you do not want too many indices.  As such, you must be judicious with the fields you allow your users to sort on.

 

When typing in a search, Sugar list views automatically search by your filter after a 300ms pause.  If you type "Arr", pause for more than 300ms, type "oy", pause for more than 300ms, type "a" and then stop in order to search for Arroya, you’ve actually performed 3 searches for 1 search.  The pause delay can be modified via Sugar Config or you can disable the type-ahead search.  List views and search queries are 80% of the load on your instance.

 

Record Views

To improved Record view performance, only show the information you need.  Every chart in a dashlet in the Intelligence Pane is a report that runs.

 

Save action performance is affected by Workflows, Logic Hooks or external APIs.  With poor planning, 1 record save can easily be turned into many record saves.

 

Home Page Dashboards

Be careful when designing your Home Page.  Every chart is a report that runs and every report can potentially be looking at several different modules.  Only show what you need.  If you’re deploying a default Home Page, don’t deploy a default Home Page to all users that has a lot of Reports on it.

 

Troubleshooting by Alexey

Pay attention to where the issue may be.  A slow client machine cannot run Sugar well because Sugar uses a lot of JavaScript.  Sugar will not run well if there is slow network performance.  PHP runs on the web server, which must be setup properly on a correctly scaled machine.  Finally, it all requires good code.

 

Things To Check

Use Chrome Developer Tools to determine if Sugar is actually the issue as opposed to the Network.  PC/Browser?  What is the DB Server doing?  (Are other databases hosted on the DB Server?)  What are the slow queries in Sugar?  Review the DB statistics.  Get as many details and facts as possible: Which view? Which action? Specific user? Any page? Specific time? Specific IP? Logs? HW usage graphs? Data volume? 

 

When all else fails, ask Sugar Support for help.

 

Use Sugar's XHPROF!

SugarCRM XHProf viewer is an extended viewer based on the standard xhprof viewer by Facebook that shows some additional information like sql and elastic queries, their timing and stack traces. (https://github.com/sugarcrm/xhprof-viewer)

 

Get their slides

I tried to summarize Jorge and Alexey's big points above, but you can check out their full slide deck here.

In our recent release of SugarCRM Mobile 6.2, we made a change to the way our mobile app talks to the Sugar server.  

 

We made this change because Apple deprecated their UIWebView component (since iOS 8) in favor of their optimized WkWebView.  In addition to providing performance improvements, WKWebView also provides additional security features and a more responsive user experience.  But WKWebView also added enforcement of cross-origin resource sharing (CORS), so the mobile team needed to add a native proxy that runs locally on your mobile device at localhost:8081. 

 

This proxy allows the SugarCRM Mobile app to work around these restrictions and can introduce connectivity issues for some SugarCRM Mobile users. Most users of SugarCRM Mobile are not affected, but if you are using SugarCRM Mobile with Enterprise Mobility Management (EMM) infrastructure (i.e. Airwatch with App Tunneling configuration, or VPN) then you may have already noticed connectivity issues after upgrading to 6.2. For example, some customers have reported an issue with the app hanging on the splash screen.

 

If you are affected, you will need to adjust the whitelist in your EMM or Mobile Device Management (MDM) tool to allow traffic to localhost:8081. Please consult your EMM / MDM documentation for steps necessary to perform this configuration change.

 

Below is a diagram showing how the new proxy should work in an EMM infrastructure.

If you are an on-premise customer using our Mobile SDK, you have the option of enabling CORS support in Sugar by adjusting your .htaccess configuration to send the correct CORS headers (and removing the proxy). Sugar Enterprise customers with access to the SugarCRM Mobile SDK can build a custom app with adjusted the proxy settings for their own environment.

 

Please leave any questions or feedback below and we'd be happy to help!

Hi everyone! I’m Megan Sheehan, business analyst and trainer at Technology Advisors, and proud Sugar Scholar at sugarcon 2018.

 

Lauren Schaefer (@Lauren_Schaefer) gave the first developer-focused presentation this year, “Dissecting Professor M for Best Practices,” and it was great! Lauren did an awesome job engaging the audience with polls and interactive Q&A while sharing insights into how and why developers should engage with professor m.

 

The developer community is hopefully already familiar with the basics of Professor M, but Lauren explained how we can use the Professor M repo for examples of both customization and DevOps best practices. Even better, we can contribute our own code examples to the repo so that Sugar Engineering will test against them as part of their testing process – meaning your customizations will be even more ‘upgrade safe’ than ever!

 

Check out Lauren’s slides for all of the details.

SugarCon and Sugar Scholars

Posted by lschaefer Employee Oct 16, 2018

We had a fabulous time meeting so many of you in Las Vegas for SugarCon 2018 last week!  We learned, we laughed, and we danced.  It doesn't get much better than that!

 

We introduced a new program at this year's SugarCon:  Sugar Scholars.  The Sugar Scholars program is a competitive program that partners and customers applied to.  Sugar Scholars were selected based on their advocacy of Sugar all year long.  The Sugar Scholars received a scholarship to attend SugarCon and helped us run the SugarCon Developer Track.  You may have seen them greeting you at the Developer Lunches, keeping our speakers on time, and giving lightning talks (how fun were those???).

 

One way they are helping behind the scenes is blogging about each of the breakout sessions in the Developer Track.  Over the next few weeks, you'll see their posts in this blog.  Be sure to check out their posts as they will be including a high level overview of each session as well as a link to the speaker's slide deck.

 

Let me introduce you to our fabulous group of Sugar Scholars.  

From left to right, they are...

  • Niegel Leoncio, CRM Manager, Bishop Wisecarver Corp
  • Kristjan Geir Mathiesen, Systems Analyst, Origo hf
  • Justin Kuehlthau, Director, SugarCRM Practice, Technology Advisors, Inc.
  • Megan Sheehan, Business Analyst & Trainer, Technology Advisors, Inc.
  • Jeff Bickart, Director of Operations, Faye Business Systems Group 
  • Me--not actually a Sugar Scholar, but they let me jump in their picture anyway. :-)

 

Whether you were able to join us in Las Vegas or not, you can still join in on the fun on social media.  Be sure to check out the SugarCon Photo Album on the SugarCRM Facebook Page.  You can also discover some notable moments on the SugarCRM Developers Twitter page and the SugarCRM Twitter page.

 

If you have feedback from this year's conference, we'd love to hear it!  Let us know in the comments below how we can improve for next year.

 

We're already looking forward to SugarCon 2019!

Hey there, developers!  We've officially released Fall '18!  This release is just for Sugar Cloud (formerly known as Sugar On-Demand).  Don't worry on-prem users--you'll get these changes in our upcoming 9.0 release! 

 

This release has a ton of great features including new quotes configuration options for administrators, new data visualizations, and enhancements to Advanced Workflow that allow you to automatically send email alerts to a wider audience and to a more selective set of recipients.

 

Our Co-Founder & CMO, Clint Oram, discusses the highlights of this release from an end-user's perspective in the video below: 

 

 

I recently hosted a webinar where I gave an overview of the big things developers need to know about this release:

 

The slides from the webinar are available here.

 

If you're looking for the high-level overview, I've got you covered!

  • We've upgraded several libraries including Handlebars, Underscore, jQuery, jQuery Migrate, and jQuery UI.  You can get the details in my blog post You'll never guess which libraries are changing in the upcoming Sugar release.
  • Administrators now have a web interface where they can configure the Quotes module.  This means less coding for you!  Ensure any fields that your code customizations rely on are visible or included in a SugarLogic formula for a visible, calculated field. 
  • If user subscription limits are enforced on a Sugar subscription key, SAML and LDAP JIT user provisioning will not allow a customer to accidentally exceed the number of allowed active users.
  • Our REST API version increased to 11.3.
  • We have improved our support for OAuth 2.0 by adding support for bearer tokens.  Get all of the details with examples in my blog post The Sugar REST API adds support for OAuth 2.0 bearer tokens in Fall '18. 

 

This blog post promised to have just about everything you need to know about the Fall '18 release.  Below are some resources that have the rest of the details.

 

We hope you’re as excited about this release as we are!