Publications by Bob Rudis (@hrbrmstr)

Installing dplyr 0.3 on Mac OS X (Mavericks)

25.09.2014

UPDATE Per the author, a devtools::install_github("hadley/devtools") should take care of everything you need prior to installing the latest dplyr (though I did not have postgres libs installed and suspect that might still be needed). The R dplyr package just turned 0.3 and to get it working in my development environment (OS X Mavericks) I had t...

2915 sym

Don’t Worry _Too_ Much About The 2014 Gallup Crime Poll

29.10.2014

Gallup released the results of their annual “Crime” poll in their Social Poll series this week and spent much time highlighting the fact that “cyber” was at the top of the list. (There’s nary a visualization on the Gallup post or in the accompanying PDF, so keep that graphic handy or use the scraped/cleaned poll data and R source code...

3051 sym 8 img

Turn R (Shiny) Scripts Into Double-clickable OS X Applications With One Line of Code

30.11.2014

I was playing with some non-security-oriented R+Shiny code the other day, and thought that Shiny apps would be even more useful if they were double-clickable applications that you could “just run”—provided R was installed on the target system—vs have to cut/paste code into R. Now, I know it’s not hard to enter: shiny::runGist('95ec24c1...

3068 sym R (760 sym/6 pcs) 4 img

Shell Script to Build OS X ‘Shiny Apps’ from Github Gists

02.12.2014

Since the previous post was fairly popular, I went ahead and built a small shell script (also below) to ease the process of building the OS X Shiny-gist application. After copying the script to a place you can run it from in your PATH and executing a “chmod a+x shinyapp.sh” (or whatever you named it), all you have to do is enter the GitHub G...

2130 sym R (168 sym/2 pcs)

Mapping IPv4 Address (with Hilbert curves) in R

02.01.2015

While there’s an unholy affinity in the infosec commuinty with slapping IPv4 addresses onto a world map, that isn’t the only way to spatially visualize IP addresses. A better approach (when tabluation with bar charts, tables or other standard visualization techniques won’t do) is to map IPv4 addresses into Hilbert space-filling curve. Yo...

3295 sym R (987 sym/1 pcs) 4 img

Building [Security] Dashboards w/R & Shiny + shinydashboard

24.01.2015

Jay & I cover dashboards in Chapter 10 of Data-Driven Security (the book) but have barely mentioned them on the blog. That’s about to change with a new series on building dashboards using the all-new shinydashboard framework developed by RStudio. While we won’t duplicate the full content from the book, we will show different types of dashboar...

6294 sym R (3032 sym/6 pcs) 6 img

Playing with elastichoney data in R

11.05.2015

Work has kept myself & @jayjacobs quite busy of late, but a small data set posted by @jw_sec this morning made for an opportunity for a quick blog post to show how to do some data maniupation and visualization in R for both security and non-security folk (hey, this may even get more non-security folk looking at security data which is a definite �...

6019 sym R (4846 sym/8 pcs) 8 img

Processing Punycode and IDNA Domain Names in R

03.06.2015

When fighting the good cyber-fight, one often has to process domain names. Our good friend @alexcpsec was in need of Punycode/IDNA processing in R which begat the newly-minted punycode R package. Much of the following has been culled from open documentation, so if you are already “in the know” about Punycode & IDNA, skip to the R code bits. ...

2939 sym R (1758 sym/1 pcs)

Running Go language chunks in R Markdown (Rmd) files

08.06.2015

After seeing IPython Markdown Opportunities in IPython Notebooks and Rstudio in the feeds today I wondered how easy/hard it would be to write a handler for something like go code. After taking a look at Yihui Xie‘s knitr source it seemed like it would be fairly easy to mimic a combination of Rcpp and “shell” block handling to process standa...

2349 sym R (3057 sym/3 pcs)

Introducing passivetotal – R Package To Work With the PassiveTotal API

14.06.2015

As a precursor to releasing Episode 18 of DDSec Podcast, we’re releasing a really basic R package to interface with the PassiveTotal API. We asked Brandon Dixon to be on the podcast to talk about his new visualization for users of PassiveTotal, which is a “threat research platform created for analysts, by analysts.”. PT has deep and wide kn...

1784 sym R (423 sym/2 pcs)