Michael Lynn

18 results

2019 William Zola Award Nominations

Community is core to the success of MongoDB and the people that use it. This year is the fifth year we've held the William Zola Award for Community to honor those whose contributions to support have made a significant difference to people around the world. The William Zola Award for Community Excellence was created in 2014 to honor those whose support contributions make a significant difference to people around the globe. One of our strongest Community Support advocates was William Zola, who passed away unexpectedly in that year. William, Lead Technical Services Engineer at MongoDB, had a passion for creating user success and helped thousands of users with support problems, much of it on his own time. William was so effective at meeting users in their time of distress that people often asked for him by name on the MongoDB User Forum. Most engineers at MongoDB went through his customer skills training to learn how to create an ideal user experience while maintaining technical integrity. William taught us the following. How the user feels is every bit as important as solving their technical problem. We should work to solve the problem and not just close a case or ticket. Every user interaction should drive the case one step closer to resolution. It’s all about the user. Over time, William’s advice and philosophy towards user success came to permeate MongoDB’s entire organization and community. The Award This year at MongoDB World we will announce the 2019 winner of “The Zola.” We will award an individual who has offered exceptional support to our community in line with William’s philosophy. The winner of the Zola will receive a complimentary hotel stay while at MongoDB World along with a $1,000 Amazon Gift Card. Today we open nominations and begin the search for this year's winner of the Zola. MongoDB users who support others on StackOverflow, MongoDB Google Groups, at a MongoDB User Group, or in person through ad-hoc or structured mentoring are all qualified to receive the award. Nominations will be accepted until April 30th, 2019 through this form , so please send in names of people who have positively impacted your experience with MongoDB. Individuals will be judged on the impact of their work and their demonstration of William’s values. William’s extraordinary contributions are remembered in users like you who pass along your knowledge of MongoDB and do it with gusto. Even if you do not qualify for the Zola now, there is always an opportunity for you to contribute to the MongoDB ecosystem by sharing your ideas and experience on StackOverflow , the MongoDB User Forum and in your local communities . Tell us who you think should receive this year's “Zola”. Submit your nominations today Prizes $1,000 Amazon Gift Certificate Ticket to MongoDB World 2019 Hotel stay during MongoDB World How Winners Will Be Selected MongoDB will pick the winning applicant by May 8th and will notify the winner via email. The winners will be chosen based on a combination of user votes and contributions made to the community. For more information see the Zola Award Terms and Service .

March 25, 2019

Connecting MongoDB Stitch to Google Places

One of the services that make available a wealth of data via API, is Google Places . Imagine we want to provide users of our application with information about a business with whom we partner. Insurance companies do this with providers of accommodations, transportation, and healthcare. We don’t want to maintain this information, or own it - rather, we’d prefer to leverage a service that provides this information about these service providers. Google Places is just such a service provider. For this application, we’ll use the following Stitch components to integrate MongoDB with Google Places. Stitch Functions Stitch functions are written in JavaScript ES6 and can be called from our SDKs, Triggers, or Webhooks and are great for coordinating data access or doing light processing alongside a query or insert. Communicating with data provider services such as Google Places is as simple as leveraging an HTTP service within a serverless stitch function: const http = context.services.get("GooglePlaces"); return http .get({url: GooglePlacesSearchURL}) .then(resp=>{ //The response body is encoded as raw BSON.Binary. Parse it to JSON. var search_result = EJSON.parse(resp.body.text()); Stitch’s Functions also let you reference context – such as services, variables, or user information – in order to make it easier to leverage services and information across your entire application. Stitch also provides several third-party services including AWS, Twilio, and Github. Stitch Services The HTTP service that we create here will also have an incoming webhook, meaning that it can make outgoing HTTP requests within Stitch Functions, but also handle incoming HTTP services. Stitch Trigger Stitch Triggers enable reactivity to inserts, updates, deletes, and replaces that occur in the database. In our case, an insert will trigger execution of a function. Figure 1. Trigger Configuration Building Your Application Let’s take a look at how all the pieces of this application fit together – Figure 2. Stitch Architectural Diagram In step 1, an application accepts input either from a user or as a result of some action the user performed (using geofencing, for example.) The input, in our case, will be the name of a business. The application will insert a document with the name of the business into MongoDB. The firing of the trigger is automatic because we configured it to watch for inserts or updates to our database. The trigger executes a custom function called getGooglePlaceInfo then captures and forwards the entire inserted document. Next, in step 4, the function we created invokes the HTTP Webhook we created. The webhook conducts the conversation between Google Places and Stitch. In step 5, Google Places will respond with a JSON document containing the requested information. The function will catch this JSON information and update the MongoDB document. It is worth saying that the function can also manipulate the data before inserting it. Allowing it meet all your project requirements (format, types, calculations). As an example, the function may create a new GeoJSON object from the Google coordinates. All of this is done in step 6. In Conclusion We’ve taken a very brief look at how leveraging MongoDB Atlas, Stitch, and Triggers in conjunction with a data API service such as Google Places transforms applications into intelligent apps users will truly love to use. Because we’re adding data without having to bother the user, the application becomes much more usable, much more valuable. MongoDB Stitch and Triggers give your application the ability to react to changes in the database. Then leverage integration with external services to fetch in-context data to enrich your applications’ data further. This improves both usability and value to the user. Without MongoDB Stitch, a developer would have had to contend with building an application server, dealing with management, availability, scalability, and backup and restoration of the data. Oh, and did we mention that Stitch provides other benefits as well? It leverages Atlas security, adds third-party authentication and granular, field-level access controls to MongoDB data. This gives the ability for users to retrieve data anywhere. Without developers having to create REST APIs from scratch, secure and maintain them? The content described in this blog article is publically available and can be found here: https://github.com/julienmongodb/mongodb-googleplaces

October 9, 2018

Creating a Data Enabled API in 10 Minutes with MongoDB Stitch

If you’re looking for REST-like access to your Atlas data, check out the new Data API to get instantly generated endpoints for reading and modifying your data over HTTPS. Creating an API that exposes data doesn’t have to be complicated. With MongoDB Stitch , you can create a data enabled endpoint in about 10 minutes or less. At the heart of the entire process is MongoDB Stitch’s Services . There are several from which to choose and to create a data enabled endpoint, you’ll choose the HTTP Service with a Webhook . Adding a Stitch Service When you create an HTTP Service, you’re enabling access to this service from Stitch’s serverless functions in the form of an object called context.services . More on that later when we create a serverless function attached to this service. Name and add the service and you’ll then get to create an “Incoming Webhook”. This is the process that will be contacted when your clients request data of your API. Call the webhook whatever you like, and set the parameters as you see below: We’ll create this API to respond with results to GET requests. Next up, you’ll get to create the logic in a function that will be executed whenever your API is contacted with a GET request. Defining the Function Before we modify this script to return data, let’s take a look at the Settings tab — this is where you’ll find the URL where your clients will reach your API. That’s it — you’ve configured your API. It’s not going to do anything interesting. In fact, the default responds to requests with “Hello World”. Let’s add some data. Assuming we have a database called mydatabase and a collection of contact data called mycollection , let’s write a function for our service: Creating a function to return data from a collection in MongoDB Stitch And here’s the source: exports = function(payload) { const mongodb = context.services.get(“mongodb-atlas”); const mycollection = mongodb.db(“mydatabase”).collection(“mycollection”); return mycollection.find({}).toArray(); }; This exposes all documents in the database whenever a client calls the webhook URL associated with our HTTP Service. That’s it. Let’s use Postman to show how this works. Grab your API Endpoint URL from the service settings screen. Mine is as follows — yours will differ. https://webhooks.mongodb-stitch.com/api/client/v2.0/app/devrel-mrmrq/service/api/incoming_webhook/webhook0 Paste that into the GET URL field and hit Send, you should see something similar to the following: Check out the GitHub Repository to review the code and try it yourself and review the screencast where I create a data enabled API in 10 Minutes with MongoDB Stitch . Want to try this for yourself? Sign up for a free MongoDB Atlas account. Looking to leverage an API for integration with MongoDB? Read Andrew Morgan’s article on Building a REST API with MongoDB Stitch . Additional Resources: MongoDB Stitch Documentation Creating your first Stitch app? Start with one of the Stitch tutorials . Want to learn more about MongoDB Stitch? Read the white paper .

October 1, 2018