Skip to main content

Mobomo webinars-now on demand! | learn more.

 

mobomo-code

Each New Year brings new resolutions that people promise to keep whether it’s hitting the gym, saving money, eating healthy, the list is endless and I am sure everyone has heard their fair share. While strategy and commitment are key components to resolutions, keeping yourself focused and on track are just as important.

 

Mobomo had quite the 2015, if you haven’t heard we merged with another web & mobile app development company, Intridea! Aside from the merger we found ourselves hiring new employees each month and reaching new heights and potentials in the tech world that we never could have imagined. Although the past year seemed to be full of change, we made sure that our focus was in check so that we could strive as a new identity. We made it our mission to take our energy and direct it towards our clients.  Seems pretty simple, but it’s not always the case with employees working all over the world, two companies becoming one as well as producing successful products for our clients.

 

The tech world is not slowing down in 2016 and neither is Mobomo, so for us our outlook for 2016 is relatively simple. We wanted to share a few resolutions that our brand has adopted, if you are in the market for some fresh resolutions feel free to join us in our commitment.

 

Fully Charged: Energy for us is never an issue. We want to keep implementing our energy and poise that we put forth towards each project. We will continue to take our energy and passion for this field and portray it through our work. Who wants to work with someone who is boring? That’s why you can always count on us to bring the spunk and enthusiasm in each project.

Reshape Reality: Can anyone really tell you what reality is? Reality can be anything that you perceive it to be; people can view reality through different lenses, why let someone else try to tell us what reality it when we can create our own.

Limit Limits: Who says you have to have a limit? When you have limits are you really reaching your full potential? We have adopted this outlook to ask ourselves why limit limits? Sounds crazy but think about it.. If you are limiting your potential how can you find out the potential if it is limited? We are encouraging ourselves to constantly think and reach new potentials not just stopping at our limit. 

 

To put it simply, we are not settling this year, why settle when we can create, design and deploy new and exciting projects with our clients that are innovative while potentially hovering over “the next big thing.” We could not be more excited to start 2016... with a jolt of energy of course.

Categories
Author

With Drupal, both developers and non-developer admins can deploy a long list of robust functionalities right out-of-the-box. This powerful, open source CMS allows for easy content creation and editing, as well as seamless integration with numerous 3rd party platforms (including social media and e-commerce). Drupal is highly scalable, cloud-friendly, and highly intuitive. Did we mention it’s effectively-priced, too?

In our “Why Drupal?” 3-part series, we’ll highlight some features (many which you know you need, and others which you may not have even considered) that make Drupal a clear front-runner in the CMS market.

For a personalized synopsis of how your organization’s site can be built on or migrated to Drupal with amazing results, grab a free ticket to Drupal GovCon 2015 where you can speak with one of our site migration experts for free, or contact us through our website.

_______________________________

SEO + Social Networking:

Unlike other content software, Drupal does not get in the way of SEO or social networking. By using a properly built theme--as well as add-on modules--a highly optimized site can be created. There are even modules that will provide an SEO checklist and monitor the site’s SEO performance. The Metatags module ensures continued support for the latest metatags used by various social networking sites when content is shared from Drupal.

E-Commerce:

Drupal Commerce is an excellent e-commerce platform that uses Drupal’s native information architecture features. One can easily add desired fields to products and orders without having to write any code. There are numerous add-on modules for reports, order workflows, shipping calculators, payment processors, and other commerce-based tools.

Search:

Drupal’s native search functionality is strong. There is also a Search API module that allows site managers to build custom search widgets with layered search capabilities. Additionally, there are modules that enable integration of third-party search engines, such as Google Search Appliance and Apache Solr.

Third-Party Integration:

Drupal not only allows for the integration of search engines, but a long list of other tools, too. The Feeds module allows Drupal to consume structured data (for example, .xml and .json) from various sources. The consumed content can be manipulated and presented just like content that is created natively in Drupal. Content can also be exposed through a RESTful API using the Services module. The format and structure of the exposed content is also highly configurable, and requires no programming.

Taxonomy + Tagging:

Taxonomy and tagging are core Drupal features. The ability to create categories (dubbed “vocabularies” by Drupal) and then create unlimited terms within that vocabulary is connected to the platform’s robust information architecture. To make taxonomy even easier, Drupal even provides a drag-n-drop interface to organize the terms into a hierarchy, if needed. Content managers are able to use vocabularies for various functions, eliminating the need to replicate efforts. For example, a vocabulary could be used for both content tagging and making complex drop-down lists and user groups, or even building a menu structure.

Workflows:

There are a few contributor modules that provide workflow functionality in Drupal. They all provide common functionality along with unique features for various use cases. The most popular options are Maestro and Workbench.

Security:

Drupal has a dedicated security team that is very quick to react to vulnerabilities that are found in Drupal core as well as contributed modules. If a security issue is found within a contrib module, the security team will notify the module maintainer and give them a deadline to fix it. If the module does not get fixed by the deadline, the security team will issue an advisory recommending that the module be disabled, and will also classify the module as unsupported.

Cloud, Scalability, and Performance:

Drupal’s architecture makes it incredibly “cloud friendly”. It is easy to create a Drupal site that can be setup to auto-scale (i.e., add more servers during peak traffic times and shut them down when not needed). Some modules integrate with cloud storage such as S3. Further, Drupal is built for caching. By default, Drupal caches content in the database for quick delivery; support for other caching mechanisms (such as Memcache) can be added to make the caching lightning fast.

Multi-Site Deployments:

Drupal is architected to allow for multiple sites to share a single codebase. This feature is built-in and, unlike Wordpress, it does not require any cumbersome add-ons. This can be a tremendous benefit for customers who want to have multiple sites that share similar functionality. There are few--if any--limitations to a multi-site configuration. Each site can have its own modules and themes that are completely separate from the customer’s other sites.

Want to know other amazing functionalities that Drupal has to offer? Stay tuned for the final installment of our 3-part “Why Drupal?” series!

Categories
Author

Regardless of industry, staff size, and budget, many of today’s organizations have one thing in common: they’re demanding the best content management systems (CMS) to build their websites on. With requirement lists that can range from 10 to 100 features, an already short list of “best CMS options” shrinks even further once “user-friendly”, “rapidly-deployable”, and “cost-effective” are added to the list.

There is one CMS, though, that not only meets the core criteria of ease-of-use, reasonable pricing, and flexibility, but a long list of other valuable features, too: Drupal.

With Drupal, both developers and non-developer admins can deploy a long list of robust functionalities right out-of-the-box. This powerful, open source CMS allows for easy content creation and editing, as well as seamless integration with numerous 3rd party platforms (including social media and e-commerce). Drupal is highly scalable, cloud-friendly, and highly intuitive. Did we mention it’s effectively-priced, too?

In our “Why Drupal?” 3-part series, we’ll highlight some features (many which you know you need, and others which you may not have even considered) that make Drupal a clear front-runner in the CMS market.

For a personalized synopsis of how your organization’s site can be built on or migrated to Drupal with amazing results, grab a free ticket to Drupal GovCon 2015 where you can speak with one of our site migration experts for free, or contact us through our website.

______

Drupal in Numbers (as of June 2014):

  • Market Presence: 1.5M sites
  • Global Adoption: 228 countries
  • Capabilities: 22,000 modules
  • Community: 80,000 members on Drupal.org
  • Development: 20,000 developers

Open Source:

The benefits of open source are exhaustively detailed all over the Internet. Drupal itself has been open source since its initial release on January 15, 2000. With thousands of developers reviewing and contributing code for over 15 years, Drupal has become exceptionally mature. All of the features and functionality outlined in our “Why Drupal?” series can be implemented with open source code.

Startup Velocity:

Similar to Wordpress, deploying a Drupal site takes mere minutes, and the amount of out-of-the-box functionality is substantial. While there is a bit of a learning curve with Drupal, an experienced admin (non-developer) can have a small site deployed in a matter of days.

Information Architecture:

The ability to create new content types and add unlimited fields of varying types is a core Drupal feature. Imagine you are building a site that hosts events, and an “Event” content type is needed as part of the information architecture. With out-of-the-box Drupal, you can create the content type with just a few clicks--absolutely no programming required. Further, you can add additional fields such as event title, event date, event location, keynote speaker. Each field has a structured data type, which means they aren’t just open text fields. Through contrib modules, there are dozens of other field types such as mailing address, email address, drop-down list, and more. Worth repeating: no programming is required to create new content types, nor to create new fields and add them to a new content type.

Asset Management:

There are a number of asset management libraries for Drupal, ensuring that users have the flexibility to choose the one that best suits their needs. One newer and increasingly popular asset management module in particular is SCALD (https://www.drupal.org/project/scald). One of the most important differences between SCALD and other asset management tools is that assets are not just files. In fact, files are just one type of asset. Other asset types include YouTube videos, Flickr galleries, tweets, maps, iFrames--even HTML snippets. SCALD also provides a framework for creating new types of assets (called providers). For more information on SCALD, please visit: https://www.drupal.org/node/2101855 and https://www.drupal.org/node/1895554

Curious about the other functionalities Drupal has to offer? Stay tuned for Part 2 of our “Why Drupal?” series!

Categories
Author

 

At the time of this writing (pre-WWDC 2015), there are a number of limitations on what Apple Watch code can do. The primary limitation is that watch apps cannot exist by themselves. It is necessary for the watch app to be a part of a corresponding phone app. Apple has said they will not accept watch apps where the phone app does not do anything itself. Also, watch-only apps (such as watch faces) are not allowed for this same reason—although it’s rumored that this may change after WWDC 2015.

Another Apple Watch limitation is that Core Graphics animations are not supported, but animated GIFs are. Complex layouts (such as overlapping elements) are not allowed. However, elements can be positioned as if they overlap—provided only one element is visible at a time. Using actions such as taps and timers, the visibility of these "overlapping" elements can be changed. This can be implemented to provide a more dynamic interface. Another major limitation (also whispered to change after WWDC 2015) is that watch apps cannot access any of the hardware on the watch including the motion sensor and heart sensor.

Most watch app processing (controller logic) is done on the phone instead of the watch, and some delays are inherent in the Bluetooth communication that transpires between the watch and the phone as the view (on the watch) talks back to the controller (on the phone). This view/controller split is not obvious in the code, but the watch/phone split is obvious in the code, as the watch cannot access anything from the phone, even though the controller logic is running on the phone side—except via a specific watch-to-phone request.

One notable feature is the watch app’s ability to explicitly call the phone app with a dictionary and obtain a dictionary response. This functionality allows the developer to then set up a number of client-server style requests, where the watch is the client, and the phone is the server. For example, the watch can request information from—or record information to—the phone. The phone (which has storage and may have Internet connectivity) can then fulfill the request and provide data in response to the watch. This can drive the phone app's UI to provide near-real-time synchronization of the watch app display, as well as the phone app display.

Custom notifications (both local notifications and push notifications) are supported on the watch. These custom notifications can have a somewhat customized layout as well as having the ability to define a set of custom actions. After performing one of these actions, the watch app is started. Apple mentions not to use notifications as a way to just launch the watch app from the phone app. Apple maintains that the notifications should provide useful information.

One developer test limitation relates to custom watch notifications (for local notifications).  Since watch notifications are only displayed if the phone is asleep, there is no direct way to test custom watch notifications.  Because of this, XCode does provide a mechanism to test push notifications in the simulator (using a JSON file), but there is no similar mechanism to test local notifications. Still, one can certainly test local notifications with the physical device.

Categories
Author

In April 2015, NASA unveiled a brand new look and user experience for NASA.gov. This release revealed a site modernized to 1) work across all devices and screen sizes (responsive web design), 2) eliminate visual clutter, and 3) highlight the continuous flow of news updates, images, and videos.

With its latest site version, NASA—already an established leader in the digital space—has reached even higher heights by being one of the first federal sites to use a “headless” Drupal approach. Though this model was used when the site was initially migrated to Drupal in 2013, this most recent deployment rounded out the endeavor by using the Services module to provide a REST interface, and ember.js for the client-side, front-end framework.

Implementing a “headless” Drupal approach prepares NASA for the future of content management systems (CMS) by:

  1. Leveraging the strength and flexibility of Drupal’s back-end to easily architect content models and ingest content from other sources. As examples:

  • Our team created the concept of an “ubernode”, a content type which homogenizes fields across historically varied content types (e.g., features, images, press releases, etc.). Implementing an “ubernode” enables easy integration of content in web services feeds, allowing developers to seamlessly pull multiple content types into a single, “latest news” feed. This approach also provides a foundation for the agency to truly embrace the “Create Once, Publish Everywhere” philosophy of content development and syndication to multiple channels, including mobile applications, GovDelivery, iTunes, and other third party applications.

  • Additionally, the team harnessed Drupal’s power to integrate with other content stores and applications, successfully ingesting content from blogs.nasa.gov, svs.gsfc.nasa.gov, earthobservatory.nasa.gov, www.spc.noaa.gov, etc., and aggregating the sourced content for publication.

  1. Optimizing the front-end by building with a client-side, front-end framework, as opposed to a theme. For this task, our team chose ember.js, distinguished by both its maturity as a framework and its emphasis of convention over configuration. Ember embraces model-view-controller (MVC), and also excels at performance by batching updates to the document object model (DOM) and bindings.

In another stride toward maximizing “Headless” Drupal’s massive potential, we configured the site so that JSON feed records are published to an Amazon S3 bucket as an origin for a content delivery network (CDN), ultimately allowing for a high-security, high-performance, and highly available site.

Below is an example of how the technology stack which we implemented works:

Using ember.js, the NASA.gov home page requests a list of nodes of the latest content to display. Drupal provides this list as a JSON feed of nodes:

Ember then retrieves specific content for each node. Again, Drupal provides this content as a JSON response stored on Amazon S3:

Finally, Ember distributes these results into the individual items for the home page:

The result? A NASA.gov architected for the future. It is worth noting that upgrading to Drupal 8 can be done without reconfiguring the ember front-end. Further, migrating to another front-end framework (such as Angular or Backbone) does not require modification of the Drupal CMS.

Categories
Author

Pill Finder enables rapid identification of unknown solid-dosage medications (tablets/capsules) based on physical characteristics including: imprint (characters or number printed on a medication), shape, color, size, and scoring. Once a medication is identified, Pillbox provides high-resolution images of tablets and capsules (if available) as well as links to drug information and drug labels. Pillbox uses the National Library of Medicine's Pillbox API which is not intended for clinical use. Images contained within this resource are not part of the Structured Product Label and have not been verified by the sponsor/manufacturer.

 

Categories
Author

Today we're announcing SparkBin, a new Intridea product entering private beta for Google Apps customers that offers you a better way to gather ideas from within your company.

Your employees have great ideas. Unfortunately, it's too easy to overlook that spark of genius when it's trapped in an e-mail or a conversation. SparkBin is a tool for aggregating all those ideas, ensuring they don't get lost in the shuffle. It's also a way for your team to receive immediate feedback on their ideas.

SparkBin is entering private beta today. We'll be letting companies in over the coming weeks until we're ready for the public launch. Register for access and keep track of all of those ideas that have been kicked around in the company communication channels.

Gather Ideas Quickly and Effectively

Submitting ideas is seamless. It only takes a few seconds to submit an idea to SparkBin, and that frictionless experience will drive your employees to submit more ideas more frequently.

Works with Google Apps

SparkBin is integrated directly into Google Apps, so your employees don't have to set up new accounts or worry about remembering yet another password. They can simply log in and see the ideas from everyone else in your Google Apps domain.

Increase Engagement

SparkBin offers a leaderboard that displays the top ideas submitters for the week, month, and all time. Ideas are only counted when someone other than the submitter likes it, so this encourages broad engagement and friendly competition inside the company to become a "King of Ideas".

Easy Organization

Ideas in the SparkBin are organized by tags, so you can organize them any way you like. Want to group ideas by product, business unit, or department? No problem!

We've been using SparkBin internally to gather ideas and have found it to really helps to get people talking. We're excited to begin sharing this with others, and look forward to feedback from a much wider audience!

Categories
Author

We've been very busy and are proud to announce our next app "Tweeb." Tweeb is a Twitter-focused app for the iPhone. It helps people understand how they are doing on Twitter by giving them stats beyond followers. Check out the Tweeb website to learn more or just go take a look on the App Store.

Tweeb is an interesting app for us not just because we love what it does but because of how it came to be. This was an app that Ken created some time ago. He brought it to us because it had undergone several rejections in the App Store and had serious performance issues. We spent about four weeks completely rewriting the backend and adding a couple of significant new features. Of course, after this work, it flew threw the approval process and into the App Store.

It's not our style to push forward with a launch until we've allowed our users to kick the tires for a bit. Aside from all the feedback Ken incorporated previously, we were able to get some great insights from the first round of App Store users and recently pushed a subsequent update. If you are really interested, go read the release notes for Tweeb v0.9.1.

Version 1.0 of Tweeb is currently in development and should be pushed to the App Store by the end of this week. The best way to get us feedback is through our help desk or via our support e-mail (support at this domain).

Categories
Tags
Author

Today, Mobomo is happy to announce the launch of ExpenseBooks for FreshBooks on both the iPhone and Android platforms (search "ExpenseBooks" on the Android Market). ExpenseBooks is a simple way to log your FreshBooks expenses while on the go.

ExpenseBooks - SplashAs a long-time FreshBooks user, I pitched this idea to Barg towards the end of 2009. While there have been a couple of FreshBooks iPhone apps, they weren't really useful to me. A more natural way to use FreshBooks while not in front of a computer is to capture those things that you do while not in front of a computer. Namely, pay for meals while meeting with people, purchase office items, buy gas for the car, etc. Hence ExpenseBooks was born.

We finished the iPhone version first but decided that we wanted to also give Android a little love. So, we held off on doing the launch until the Android app was also already to go.

For more info, you can read the FreshBooks announcement on their blog, visit their iPhone or Android add-on pages, or just go download the apps. We've got some great ideas in store for ExpenseBooks but will be listening to the community closely. We'd love to hear from you, so be sure to submit support and feature requests at the Mobomo help desk.

ExpenseBooksBadgeiPhone ExpenseBooksBadgeAndroid

For Android devices, search “ExpenseBooks” on the Android Market.

Categories
Tags
Author
Subscribe to Products