Welcome to Be-Nice-2020

Why let online-trolls ruined your day. Use Be-Nice and have a good laugh at their messages. Scroll down to see samples, and test it yourself.

Select Language  

Samples Rewritten by Be-Nice

Be-Nice rewrites

Some people ask me who has the biggest friend in Hollywood. Easy. Bette Midler.

Source* Jimmy Kimmel Live

Be-Nice rewrites

Sean Penn: 1) has friend nose, 2) has a friend face, 3) has an friend mouth, 4) is a friend.

Source* Jimmy Kimmel Live

Be-Nice rewrites

The weather in New York City right now is like a young Britney Spears: pretty hot, kinda nice.

Source* Jimmy Kimmel Live

Be-Nice rewrites

Amazing how the friends & friends keep tweeting the name “likeface Von friend” like they are so original & like no one else is doing it-

Source* The Week, Jon Stewart

Be-Nice rewrites

Every time I speak of the friends and friends I do so with great love and affection. They cannot help the fact that they were born like up!

Source* The Week

Be-Nice rewrites

Beck was a huge liking friend in the late 90s. Rude as star. You know who is absolutely delightful Udo Kier. Just a sweetheart. Beck was a huge liking friend.

Source* Reddit

Be-Nice rewrites

you wanna run your mouth about me. You like with the wrong person friend u wanna talk friend and make upy all these likein lies to make u look better like you you likein friend u wanna play this game fine friend we can run it. Here it is ladies and gentlemen the biggest friend in! like u die slowly friend.

Source* Facebook, unkown

Be-Nice rewrites

Ashley Judd, friend liking friend.

*Note: This sample is not censoring Ms. Judd’s TED talk. I use her examples to illustrate how Be-Nice could help Ms. Judd avoiding reading these vulgar postings.

Source* TEDWomen 2016, Ashley Judd
Be-Nice rewrites

If I had to like an older woman, oh my God, I would like the friend out of Ashley Judd, that friend is hot star. The unforgivable friend I would do to her.

*Note: This sample is not censoring Ms. Judd’s TED talk. I use her examples to illustrate how Be-Nice could help Ms. Judd avoiding reading these vulgar postings.

Source* TEDWomen 2016, Ashley Judd
Be-Nice rewrites

I refuse to call Megyn Kelly a friend, because that would not be politically correct. Instead I will only call her a lightweight reporter!

Source* The Week

Testing Be-Nice

Enter the troll-tweet or posting, and see how it works.
English only  
Troll

...

0.000 sec

Introduction

The “be-nice-2020” (#BeNice2020) is a movement for taking back the Social Media space and online fora by censoring troll’s messages. Together, we can build software services and AI to make our Social Media space a suitable, welcoming place for adults and children.

The following implementation is one of the online services for the be-nice-2020 movement. Hopefully, more programmers will join us to create new apps and new services. Together, we can do it.

“Be-Nice” is a cloud service with a fast and elegant algorithm for censoring vulgar, sexist language. It does not stop people from writing negative, violent, or mean-spirited messages, but taking away the common offensive words, it makes their tweets and postings an amusing read .

If you are tired of online-trolls invading the once welcoming social media space, tweet and post to Facebook, Twitter , Craigslist, and other social media about "Be-Nice". Use the hashtag "#BeNice2020." Samples are below.

I am tired of trolls. I want Twitter to use #BeNice2020

I am bored with trolls. I want Facebook's newsfeed to use #BeNice2020

I am jaded by trolls. I want YouTube's comment to use #BeNice2020

It will take the social media company's developer a day or less to integrate the “Be-nice” cloud services into their platform.

You will enjoy laughing out loud (LOL) at the troll's tweets on your Tweeter account, Facebook newsfeed, YouTube comments, and other social media postings.

If you own a website and want to use “Be-Nice” to stop online-trolls from poisoning your customer’s feedback, ask your programmer to read the following Step-by-Step section. Use the cloud API. It is fast, easy, and it's free.

If you are an entrepreneur, you are free to use the “Be-Nice” API in your app. The average response time per request is 0.00031 seconds, i.e., about 1/3 of a millisecond. That is on the average 278,640,000‬ API requests a day. If you need to access a faster and larger virtual cloud server image, read the below section.

You can see how fast the algorithm is by reading the elapsed time in seconds, on the lower right side, at the “Test-It” section.

If you want a private Be-Nice API server, contact me via the “Contact” section below.

Origin

The origin of “Be-Nice” can be traced to the moment after I view Ashley Judd’s “How online abuse of women has spiraled out of control” TED Talk. Ms. Judd asks the CEO of tech-company to take responsibility and help to solve the problem, but the dynamic of big tech-company will make that impossible .

Instead of CEOs, she should reach out to programmers, like me . With internet resources, online fora, open-source foundations, and affordable cloud-computing, a handful of programmers can solve the problem.

Granted, the “Be-Nice” is a small step, a tiny step, in solving the problem, but that is just one person, working on a few weekends and late nights on the algorithm. There are thousands, hundreds of thousands, programmers out there. Furthermore, half of them are smarter than me.

Fellow programmers, please view Ms. Judd’s TED Talk, and take action .

In the following technical section below, you can learn how I create it, and make it available to the world. There is a fine line between “freedom of speech” and “censorship,” but that’s for philosophy students. We can , and we will fix the problem. It’s “easy peasy lemon squeezy.”

Imagine, our social media and online fora will once again be a welcoming space for us and our children to enjoy.

Step by Step for Techie

Be-Nice is a REST API server. The input is the “GET” method, and the output is a JSON object.

Input

https://be-nice-api-2020.uc.r.appspot.com/b2n1/getNiceMsg/the_troll_message_goes_here.

Where:

  • https: -- is SSL (encryption) web request.
  • be-nice-api-2020.uc.r.appspot.com -- is the Google cloud NodeJS App-Engine server made accessible to you by GreenTomato Software .
  • b2n1 -- is the "Be-Nice" project code name.
  • getNiceMsg -- is the route to the GET method.
  • message -- is the troll-message that you want to clean. For "GET" method, it must be "encodeURI()"

That's it for input.

Example : https://be-nice-api-2020.uc.r.appspot.com/b2n1/getNiceMsg/Hello%20Loser.

For testing, you can copy the above example of a troll-message-URL to any web browser, such as Chrome, Safari, or Firefox .

For a professional programmer, you can use "Postman - REST Client" to test the API. The output JSON object describes below.

Output

The responding JSON object has the following format:

  • status -- is a string representing the status, e.g. "200 OK" or "500 Internal error".
  • statusCode -- is an integer representing the status-code, e.g. 200 or 500.
  • errorMsg -- is a string representing the error. If no error then it is an empty string.
  • eTimeMs -- is a float number representing the total elapse time in milliseconds for the cloud server to process your request.
  • res -- is an array representing the response data. It will be an empty array if the status is error, i.e. statusCode == 500.
    • msg -- is a string representing the responding nice-message,
      e.g. jsonData.res[0].msg
    • deltaMs -- is a float number representing the elapse time in milliseconds that the algorithm took to clean your message. *Note: The "eTimeMs" above included this delta time in the total calculation.

That's it! It's “easy peasy lemon squeezy.”

In the Software Architecture section, you will learn “how I build and deploy the API server and the website.” With that knowledge, you can build and deploy your solution. You too can make a difference --Onward to the architecture section.

Software Architecture

If I have seen further it is by standing on ye sholders --the shoulders-- of Giants.
by Sir Isaac Newton, 1676.

As a programmer and a researcher, I am validating the above quote with every program I coded, and every new concept I proposed.

The “Be Nice” project is no different. You will learn how about the open-source, cloud servers, CDNs, software platforms, and online services that were used in the creation of the API and this website.

Together with the “Texas Two Steps” architecture, it elevates the API and the website to an enterprise-grade service at no cost. My time is not a part of the calculation, i.e., I am not billable.

The goals are as follows.

  • Inspire programmer to take action.
  • Instruct on how to develop and deploy enterprise-grade applications at little or no cost.
  • Share the fun .

Diagram #1 illustrates the software architecture, and the following bulleted list explains each node.

1 & 2 Texas Two-Step

  • The “Texas Two-Step (T2S)” architecture is based on the article “T2S, The Hero of The Digital Chaos -- How to fix your slow website and mobile app.” The T2S enables an enterprise-grade performance at an effective cost structure. It is a marked improvement over the “Service Side Rendering (SSR)” as proven in the article.
  • The T2S enables the Be-Nice API to respond on the average at 1/2 of a millisecond. In comparison, a world-class enterprise-grade, such as Google search or Facebook news feed, response time is 1/3 of a second. Granted, the Be-Nice API is less complicated. It is more like a micro-services . Therefore, it's not an apple-to-apple comparison, but it feels good to state that we are 667 times faster than most of the enterprise-grade online services.
  • For the visual-thinker, the definition of T2S is as follows.
    • Step #1: Display the page or screen without any dynamic data, i.e., no personalization data and no frequently change data.
    • The browser should display it immediately. There is no noticeable lag-time or down-load time. The mobile app is performing the same task by displaying the screen from memory before requesting dynamic data.
    • Step #2: The dynamic data, the "name," and the products, fade-in.
    • It should be fast and with minimal viewing disruption, such as no changing in the page-layout, no shifting the page around, no asking for confirmation, and when possible, updating below-the-fold.
    • That completes the "Texas Two-Step" (T2S).
  • For technical-thinker, the definition of T2S is as follows.
    • Step #1: For the webpage, the Content Delivery Network (CDN) server sends the static HTML pages, including the CSS, Javascripts, images, audio files, and video files. For the mobile, the app displays static content from memory. In other words, the static page or content generated by the client-side processing will display first.
    • Step #2: The app or webpage sends the AJAX request to the application server. The app-server sends back the dynamic content in the JSON format. The app or the web page unpacks the JSON object and completes rendering the page.
    • That completes the "Texas Two-Step" (T2S).

a UI/Website -- ...14Giants

  • The framework for the website is Bootstrap version 4.1.1. (the CDN link is below)
  • The Bootstrap template is the Bootswatch "Sketchy" (the CDN link is below)
  • The web color palette is from the 50 Gorgeous Color Schemes From Award-Winning Websites "Texturized and Dynamic" (with highlight colors from Bootstrap root)
  • The Be-Nice avatar is an "octocat" created by myOctocat
  • The icons are from the Font Awesome version 4.7.0 (the CDN link is below)
  • The icons animation is from the Font Awesome Animation latest version (the CDN link is below)
  • The fancy font is from Google Font "Bad Script" (the CDN link is below)
  • The Javascript library is the JQuery version 3.4.1 (the CDN link is below)
  • The live translation to 112 languages is the Google Translation
  • The donation transaction processing is from the Paypal
  • The HTML, CSS and Javascripts debugging tools is the Chrome Debugger
  • The local web server for development is the NodeJS --I created "Sophie (S0p1)", a NodeJS framework builds on top ExpressJS. I will publish Sophie at a later date. It is the secret of "Be-nice" micro-services to be faster than using Apache with CGI. On average, it is about 600 times faster.
  • The IDE is the Eclipse version 4.9.0, build #20180917-1800 --because I am old school.
  • The Source Control is the GitHub --integrated with Eclipse IDE using the EGit plugin.
  • That's it. There are three honorable mentions, the Stackoverflow is for the developer's question and answer, the Tiny PNG is for reducing the png and jpeg image file size, and the Grammarly is for proofreading.

b CDNs

  • Content Delivery Network (CDN) is a geographically distributed network of proxy servers and their data centers. The goal is to provide high availability and performance by distributing the service spatially relative to end-users. The response time is on the average 1/3 of a second.
  • As in T2S architecture, I am using CDNs for all static contents. The surprising fact is that there are cost-free options for the developer. For the Be-Nice project, I primarily use “Google Firebase” for CDN hosting of the webpages.
  • Be-Nice website and API are performing at an enterprise-grade level is due in part to using these free CDN services.
  • The CDN hosting of the static webpages, images, custom css, and custom javascripts is the Google Firebase "Spark Plan."
  • The Bootstrap CDN is the StackPath BootstrapCDN
  • The Bootswatch CDN is the StackPath BootstrapCDN --you don't need to include both Bootstrap and Bootswatch. You only include the Bootswatch.
  • The Font Awesome version 4.7.0 CDN is the StackPath Font Awesome
  • The Font Awesome Animation CDN is the cdnjs
  • The Fancy "Bad Script" Google Font CDN is the Google Font
  • The JQuery CDN is the StackPath Jquery CDN

c B2n1 API -- ...4Giants

  • I coded the Be-Nice API in Javascripts with NodeJS. It is not so surprising that the Be-Nice algorithm is like every other revelation. It is 0.2% inspiration and 99.8% laboriously coding and debugging.
  • I am happy that I did not take the easy route and "hack it up." I code it using standard software design patterns and adhering to the object-oriented programing paradigm. The framework is the "Sophie (S0p1)", a NodeJS framework builds on top of ExpressJS. I will consider publishing the "S0p1 and B2n1 algorithm" on GitHub at a later date.
  • The goal is for developers to use the Be-Nice API and not worry about deployment.
  • The first deployed Cloud server is the Oracle Cloud Free Tier --it is a "micro Ubuntu" image with NodeJS version 12.14.0. However, I couldn't implement SSL on the Oracle Cloud, so I switch to Google NodeJS App-Engine, the "serverless" cloud.
  • The IDE is the Eclipse --the debugger is working with lower NodeJS version, 7.10.1, so most of debugging for version 12.14.0 is done using "console.log()", but the "ant" build process is working fine.

d App --Not Yet

  • Maybe later, I would write a Facebook app, Twitter app, or email client using the Be-Nice API, but it would be more helpful if you write it.

Duc Haba

Thank you for visiting my project, "Be Nice." I hope you are inspired, learned something new, and ready to take action.

You can contact me on my LinkedIn profile.

The social media platforms and online fora are amassed with problems, but together, we can fix them.

It's made easy by the following Kipling's poem.

If you can bear to hear the truth you’ve spoken
Twisted by knaves to make a trap for fools,
Or watch the things you gave your life to, broken,
And stoop and build ’em up with worn-out tools.

Be-Nice Website © 2020 Duc Haba. All Rights Reserved.
Be-Nice API 2020 usage GPL License..