Remind is now part of the ParentSquare family! See the announcement for details
Remind is now part of the ParentSquare family! Learn more
Blog
October 11, 2017
 • By 
Remind

A meaningful messaging milestone

News

We're thrilled to announce that more than 10 billion messages have been delivered to students, parents, and educators on Remind.

Our team is proud of our platform for making this possible—but the real stars are our educators.

Because when educators make communication meaningful, a milestone like this isn't just about the number of messages. It's about helping parents overcome scheduling issues, language barriers, and transportation challenges so they can get involved with what their kids are learning. It's about giving students a way to ask for help, share their achievements, and even find the motivation to make it to school every day.

And it's thanks to 1.9 million teachers—over half of all full-time teachers in the United States—that this can happen on Remind.

To help celebrate this milestone, Remind Connected Educators from around the country shared what meaningful communication means to them.

"Meaningful communication establishes relationships, which have a bigger impact than any single lesson."
—Laura Dockens LaChappelle, Georgia

"Meaningful communication is the basis for all learning."
—Robert Lee, Texas

"Meaningful communication means setting up a teacher group to spread the word about events and activities on campus—and bring the school together."
—Bryce Kristal, California

"Meaningful communication means being clear, concise, reaching all listeners, and getting feedback."
—Corinne Alysse, Florida

"Meaningful communication is the key to getting everything accomplished—without unnecessary stress!"
—Michelle Currier, New York

The impact you make is so much more than a message.

Click here to share what meaningful communication means to you.

tag * ppcUrlCookiePart1 and ppcUrlCookiePart2 must be called, see bottom of script * update ppcUrlCookiePart2 and ppcUrlCookiePart2 to match your querystring and form field names * */ //Leave this as true to always use querystring values if they exist, if no querystring will attempt to get cookie values var ppcUseLatestValues = true; //set this to false to use cookie values if they exist (if false, will not check querystring first). //function to grab params from cookie function getCookie(param_name) { var i, x, y, cookie = document.cookie.split(";"); for (i = 0; i < cookie.length; i++) { x = cookie[i].substr(0, cookie[i].indexOf("=")); y = cookie[i].substr(cookie[i].indexOf("=") + 1); x = x.replace(/^\s+|\s+$/g, ""); if (x == param_name) { return unescape(y); } } } //function to create cookie function setCookie(param_name, value, exdays) { var exdate = new Date(); exdate.setDate(exdate.getDate() + exdays); //CHANGE DOMAIN BELOW TO MATCH SITE var c_value = escape(value) + ((exdays == null) ? "" : "; domain=remind.com; path=/; expires=" + exdate.toUTCString()); document.cookie = param_name + "=" + c_value; } //function to check if cookie exists and, if so, run the setCookie function function checkCookie(param_name, param_url_name) { var param_value = getCookie(param_name); if ((param_value != null && param_value != "" && param_value != "undefined") && ppcUseLatestValues == false) { //this means the param name/value pair exists - and we don't want to use latest } else { //this means the param name/value pair does not exist - so create it //grab values from URL var pageURL = window.location.search.substring(1); var URLVariables = pageURL.split('&'); for (var i = 0; i < URLVariables.length; i++) { var parameterName = URLVariables[i].split('='); if (parameterName[0] == param_url_name) { //filter out "#" in case that is in the last URL param param_value = parameterName[1].split("#")[0]; } } if (param_value != "undefined" && param_value != "" && param_value != null) { //create cookie setCookie(param_name, param_value, 365); } } } //function to setup the parameters and save the cookie values function ppcUrlCookiePart1() { //setup list/array of parameters desired. names on right should match querystring names var param_names = new Array( 'ppcSource;utm_source', 'ppcMedium;utm_medium', 'ppcCampaign;utm_campaign', 'ppcAdGroup;utm_adgroup', 'ppcKeyword;utm_term', 'ppcContent;utm_content' ); //loop through all params and create cookie for (i = 0; i < param_names.length; i++) { var param_object = param_names[i].split(";");//split out the cookie name and url name var param_name = param_object[0]; var param_url_name = param_object[1]; //start the cookie creation checkCookie(param_name, param_url_name); } } //function to grab cookie params function mGetCookie(param_name) { var i, x, y, cookie = document.cookie.split(";"); for (i = 0; i < cookie.length; i++) { x = cookie[i].substr(0, cookie[i].indexOf("=")); y = cookie[i].substr(cookie[i].indexOf("=") + 1); x = x.replace(/^\s+|\s+$/g, ""); if (x == param_name) { return unescape(y); } } } //function to check if cookie exists and, if so, fill out the corresponding form fields function mCheckCookie(param_name, param_field_name) { var param_value = mGetCookie(param_name); if (param_value != null && param_value != "" && param_value != "undefined") { try { var obj1 = document.getElementsByName(param_field_name); obj1[0].value = param_value; return true; } catch (err) { return false; } } return false; } //function to setup parameters and begin cookie value insertion into marketo form function ppcUrlCookiePart2() { //setup list/array of parameters desired. names on right should match hidden form field names var param_names = new Array( 'ppcSource;utm_source__c', 'ppcMedium;utm_medium__c', 'ppcCampaign;utm_campaign__c', 'ppcAdGroup;utm_adgroup__c', 'ppcKeyword;utm_term__c', 'ppcContent;utm_content__c' ); //loop through all params and create cookie for (i = 0; i < param_names.length; i++) { var param_object = param_names[i].split(";");//split out the cookie name and url name var param_name = param_object[0]; var param_field_name = param_object[1]; //start the cookie creation mCheckCookie(param_name, param_field_name); } } //ppcUrlCookiePart1 will grab values from the querystring and save them in cookies ppcUrlCookiePart1(); //ppcUrlCookiePart2 will retrive values from the cookies and populate the hidden form fields - should be in the onload try { //attempt for Marketo form MktoForms2.whenReady(function (form){ ppcUrlCookiePart2(); }); } catch (err) { //if error on Marketo form, try loading for regular form. ppcUrlCookiePart2(); }