Code Monkey home page Code Monkey logo

brrr's Introduction

BRRR

Let Gucci Mane tell you when your script is done.

Have you ever wanted to know - and celebrate - when your simulations are finally done running in R? Have you ever been so proud of pulling of a tricky bit of code that you wanted Flavor Flav to yell "yeaaahhhh, boi!!" as soon as it successfully completes? Have you ever gotten an error message that felt like DJ Khaled yelling, "They don't wanna see us win!"

Probably not, but you might now. And now, with BRRR, you can.

Installation

BRRR is available on Github and can be installed from within R by running:

if(!require(devtools)) {install.packages("devtools")}
devtools::install_github("brooke-watson/BRRR")

Requirements

If you are using Windows or OS X BRRR relies on the audio package for sound playback and no external program is needed.

If you're on Linux BRRR relies on you having either the paplay utility from the Pulse Audio system, the aplay utility from the ALSA system or VLC media player installed and on the PATH. Chances are that you alread have one of these. If you are on Debian/Ubuntu you can otherwise get VLC by running the following in a terminal:

sudo apt-get install vlc

Details

Inspired by and building from Rasmus Bååth's magnificent beepr package, BRRR has one function - skrrrahh(), which plays a rap adlib when it is called. It is useful if you have a script that takes a while to run, and want to be notified when it is finished. The package currently includes 52 different sounds from 34 artists, the majority of which are pulled from The Rap Board by LP Riel.

The default sound is, appropriately, "BRRR", by Gucci Mane. The package also features two other iconic Guwop sounds: "'S GUCCI" (skrrrahh(26)) and "YEAAAHHH" (skrrrahh(28)). Gucci's glow up is a daily inspiration in 2017, and BRRR would not be icey without him.

(skrrrahh() is spelled with three R's and two H's, according to the canonical Genius.com. I will not budge on this.)

Usage

skrrrahh(sound = 26)
skrrrahh()
skrrrahh(0)
skrrrahh("snoop")
skrrrahh(41)

Arguments

sound character string or number specifying what sound to be played by either specifying one of the built in sounds or specifying the path to a wav file. The default is 27. Possible sounds are:

## [1] "twochainz"  "twochainz1" "bigboi"     "biggie"    
## [5] "bigsean"    "bigsean1"   "bigsean2"   "bigsean3"  
## [9] "bigsean4"   "bigsean5"   "bigshaq"    "bigshaq1"  
## [13] "birdman"    "birdman1"   "birdman2"   "busta"     
## [17] "chance"     "desiigner"  "diddy"      "drake"     
## [21] "drake1"     "drummaboy"  "fetty"      "flava"     
## [25] "future"     "gucci"      "gucci1"     "gucci2"    
## [29] "jayz"       "jayz1"      "kendrick"   "khaled"    
## [33] "khaled1"    "khaled2"    "khaled3"    "liljon"    
## [37] "liljon1"    "nicki"      "pitbull"    "ross"      
## [41] "ross1"      "schoolboy"  "snoop"      "soulja"    
## [45] "takeoff"    "tpain"      "traviscott" "treysongz" 
## [49] "trick"      "waka"       "weezy"      "yg"        

If sound does not match any of the sounds above, a number between 1 and 52, or a valid http path to a .wav file, a random sound will be played.

Examples

# Play a random rap adlib.
skrrrahh(0)

# Update all packages and have Big Sean yell "Whoa Dere" when it is ready.  
update.packages(ask=FALSE); skrrrahh(10)

# Change your options to have DJ Khaled console you everytime you hit an error
# message.
options(error = function() {skrrrahh(34)})

# The ting goes: 
skrrrahh(11)

Abridged Index

The ting goes SKRRRAHH: skrrrahh("bigshaq") or skrrrahh(11)

Various "Yeah Bois":

  • Flavor Flav skrrrahh("flava")
  • Drumma Boy: skrrrahh("drummaboy") or skrrrahh(22)

Whistles and Bird Calls:

  • Two Chainz: skrrrahh(2) OR skrrrahh("twochainz1")
  • BirdMan: skrrrahh(13) OR skrrrahh("birdman") AND skrrrahh(14) OR skrrrahh("birdman1")

Big Sean Doing The Most:

  • Boi: skrrrahh(6) OR skrrrahh("bigsean")
  • Do it: skrrrahh(7) OR skrrrahh("bigsean1")
  • Stop: skrrrahh(9) OR skrrrahh("bigsean3")
  • Whoa Dere: skrrrahh(10) OR skrrrahh("bigsean4")
  • Oh God: skrrrahh(8) OR skrrrahh("bigsean2")

Contributing

Inserting new sounds into the list of sounds will change the numerical references. If you have a new sound you want to add, please add it to the end of the list so the docs don't have to change every time someone makes a PR.

brrr's People

Contributors

brooke-watson avatar cnuge avatar csgillespie avatar daviddalpiaz avatar davidquartey avatar dpananos avatar jefferis avatar jennybc avatar nowosad avatar rasmusab avatar ryanguest avatar seankross avatar trestletech avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

brrr's Issues

Needs more Young Thug.

Who could forget the classic 11 second "skrrrrrrrrrrrrrrrt" on Halftime, or one of his many "SLATT"s? Perhaps even some of whatever is going on in the beginning of Audemars? Even Nicki Minaj saying "Thugger" in the opening of Anybody. Thug is criminally underrepresented in this package.

skrrrahh(0) returns error

When I call skrrrahh(0) I get the following error.

Warning message:
In value[[3L]](cond) :
  beep() could not play the sound due to the following error:
Error in load.wave(fname): invalid file name

However all the sounds work as I looped through them all and they played.

I'm using R 3.4.2 on MacOS 10.13.1

Including new sounds will change numeric arguments

I just added bigshaq1 and now some of the sounds are mapped to different numbers.

For instance skrrrahh("drummaboy") is not the same as skrrrahh(21).

This isn't a huge issue, it just means the documentation would need to be updated after a new sound is added.

Would it be reasonable to remove numeric arguments from skrrrahh and only accept a string?

Release

Hi, I'm trying to get this package onto conda forge. Can a release on Github be made to facilitate that?

How to make sounds via intertubes

Is there any possible way to get this to work when working on a remote server...??

I'm willing to put in extra lines of code just to make it happen.
Internet hivemind. halp. BRRR::skrrrahh("flava")

Is the 7th sound clip Chinese?

I am from China and I speak Chinese. I used beepr for a long time and tried BRRR only few days ago.
The 7th clip (skrrrahh(7)) in BRRR sounds really like Chinese, which means 'Good or Finished', only that the pronunciation is really award. If it is indeed Chinese, I really hope you can use a clip from a native speaker that sounds natural. I don't think it is hard to find that on the Internet. Or if it is hard for you, let me know and I will see what I can do.
Hope this is not offensive to raise a question like this.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.