Rantings from a guy with way too much free time

I'm Back!!! Diving into Rust!

2021-04-26 programming Rob Baruch
Noobie to Rust? Let’s get started!! So you want to get into rust? Sure, why not. Let’s do it. The setup Assuming you’re on a Mac, let’s get rust up and running so you’re ready to rip into learning the language. We’ll use rustup to install rust. This is the best way to manage your rust environment and toolchain. Not only can you manage toolchains using rustup, but also add-in components to make the experience a lot more enjoyable. Continue reading

Getting func(y) with Channels

Here’s a little golang puzzle Take a look at the function below that computes a mystery value for the function $f(x)$. Any idea what the function is? Take a close look at the first line where we create a channel. Notice that the channel isn’t some boring int or string channel. No, this is a channel of type func(int, chan int, chan bool). Wait what??? That’s right, this channel takes a function that takes an integer and two channels as function parameters. Continue reading

OS X VPN client pppd host route configuration on post-interface connection

2019-11-20 devops Rob Baruch
VPN Client PPP daemon configuration Recipe: Configure Default Host routes after a specific VPN connection has been established Solution: In order to configure the host (or network routes, although I’m solely interested in routing specific hosts between my two sites), we need to create a file with the following commands in /etc/ppp. #!/bin/sh # VPN_GATEWAY is the remote address of the vpn tunnel # when ppp executes this script it will pass several values to it # $5 will hold the remote gateway VPN_GATEWAY=192. Continue reading

Baby it's Cold Outside -- How Cold? Use an SHT31 and See!

2019-01-29 programming Rob Baruch
ESP32 and SHT31 Temperature and Humidity Sensor Secure Web Server In this blog post, I follow-up on the ESP32-IDF development and demonstrate how to incorporate an i2c device to measure the temperature and humidity. Specifically the SHT31. First, let’s do it plain-jane vanilla. We’ll incorporate the i2c device and simply display the measurements to the serial terminal through the uart. Next, we’ll make it more practical and send the data over the wifi network to a service that makes it convenient to visualize the time-series data. Continue reading

Program the Esp32 with ESP-IDF on Mac OS X

2019-01-23 programming Rob Baruch
Programming the ESP32 on your Mac! Go out and buy yourself a cheap little ESP32 SoC and follow these basic instructions to setup your development environment on your Mac. If you want to do some advanced C-programming to control your ESP32, this is for you. If you’d rather use Arduino and play with simple sketches then this is not for you – google how to use Arduino and off you go! Continue reading

Making some Noise - Teensy, TGA-Pro, and MIDI

2018-05-04 programming Rob Baruch
Making Some Noise (and maybe even Music)! In this blog post, I’ll share my experiences using the Teensy and TGA-Pro Guitar Audio Shield to process audio - both using an audio processing codec as well as MIDI. I’ve also included the Yamaha UX16 USB-to-MIDI controller to aid in patching my MIDI channels into the inputs of the Guitar Audio shield. Teensy - Yet antother cheap USB uController board. At the hear of this project is the Teensy 3. Continue reading

Pathocaml - Getting Wacky with Functions And Polymorphism

2018-03-19 programming Rob Baruch
OCaml on the Fringes - You can do that?? So, I got bored this afternoon and was contemplating why I was enjoying diving into OCaml more than say Elixir/Erlang for functional programming. The quality of the language that’s most captured my attention is the type system. When you start playing around with the type system in OCaml you can go from some basic definitions of user-defined types to some pretty cool looking constructs. Continue reading
Older posts