me.add_role :co_host_for_ror_podcast

by Brittany Martin in


Surprising virtually no one, I'm a huge fan of podcasts. I've considered starting my own but then an even better opportunity presented itself. I'm pleased to announce that I'm newest co-host to one of my favorite podcasts: the 5 by 5 Ruby on Rails podcast

During an episode, Kyle Daigle, the main host of the show, mentioned that he wanted to bring on more co-hosts so that the show could accelerate to a weekly format. I reached out to him on Twitter and we had a quick chat to see if I would round out the other two co-hosts: Joel Oliveira and Mike Coutermarsh

I recorded my first episode in April. After a bit of a hiatus, the podcast is back with my introduction as a co-host. Listen below to learn more about my background, the group affinity for Hamilton and why you should always opt for the oysters. I'll be recording with Kyle every 3 weeks with some surprises with my co-hosts ahead. 

If you have any topics or questions you would like me and/or my co-hosts to tackle in a future episode, please submit them here. Thanks for tuning in!


Ruby & Rails Community in Pittsburgh, PA

by Brittany Martin


Every week, I get an email from a junior developer requesting my thoughts on the Ruby and Rails scene in Pittsburgh, PA. As a working RoR developer/RoR mentor and a loud and proud Pittsburgher, I love to see Ruby and RoR being utilized by the community. 

With the exciting announcement of Railsconf landing in Pittsburgh in 2018, it was time to pour as much as I know about the Ruby and Rails community here into one place. 

Pittsburgh is still an enterprise programming language town. When I asked a local recruiter which languages he sees the most demand for, he quickly answered, ".NET, Java and C". It is difficult to be a junior developer in Pittsburgh but even more so if you are only comfortable with Ruby. I was fortunate that I had progressed to the intermediate level before I moved back. Ruby still has an imprint here, as you can see for the list below. 

Note: I'm absolutely sure I will miss something so please comment below or tweet at me (@BrittJMartin) with any edits you would like to make. 

Companies that Use Ruby

Companies that Use Ruby & Rails

Local Programs that Teach Ruby or Rails

Meetups for Ruby Developers

I hope you find this unofficial list helpful. Long live Ruby and Rails in Pittsburgh! I'll see you at Railsconf April 17th - 19th, 2018 (▼∀▼)


How to Add a Slack Notifier with Slack-Notifier and Sidekiq

by Brittany Martin in


Recently, my boss had the brilliant idea to route the request to a private Slack channel when our Ruby on Rails website processed a customer's contact form. It's ideal for spotting specific website issues and to stay tuned to our patrons interacting with our site.

I came across the excellent slack-notifier gem. I bundled in: 

gem "slack-notifier"
gem "json"

Time to add in a custom incoming webhook in Slack. Incoming Webhooks are a simple way to post messages from external sources into Slack. They make use of normal HTTP requests with a JSON payload that includes the message text and some options. Once you have the Slack URL, I added it to our Figaro application.yml as SLACK. 

Next step is to add an initializer for Slack in config/initializers/slack.rb.

require 'slack-notifier'

SLACK = Slack::Notifier.new "#{ENV['SLACK']}"

We're already proud Sidekiq users. Processing the Slack message was ideal for a background worker so let's build a SlackNotifierWorker. 

require 'json'

class SlackNotifierWorker
  include Sidekiq::Worker
  queue_name = "default"
  sidekiq_options queue: queue_name

  def perform(hash={})
    notification = {
        "username": "csibot",
        "icon_emoji": ":loudspeaker:",
        "fields": [
            {
                "title": "Organization",
                "value": "#{hash['org']}"
            },
            {
                "title": "Path",
                "value": "#{hash['site_id']}"
            },
            {
                "title": "Category",
                "value": "#{hash['category']}"
            },
            {
                "title": "Notes",
                "value": "#{(hash['notes'])}"
            }
        ]
    }

    SLACK.ping notification
  end

end

Remember to set the queue (default since it is not critical), emoji icon (important!) and to utilize Slack's nifty message formatter

Our last step is to trigger the SlackNotifierWorker during the flow of a user submitting a contact form. 

SlackNotifierWorker.perform_async(org: @org, notes: @notes, category: category_string, site_id: site.id)

That's everything. Special thanks to Steven Sloan and Mike Perham for making this so easy to implement. 

 

 

 


#TryPod : Try Podcasts!

by Brittany Martin in


During the month of March, a movement called TryPod is being celebrated. The idea is to tell a friend who normally doesn't listen to podcasts to try one out. Podcasts are an integral part of my learning, entertainment, weirdness and immersing myself into the various communities I love. 

Without much further adieu, here are my recommendations: 

Coding

  • Changelog - A weekly podcast that covers the technology and people of open source. It's about the code, the people, and the community.
  • CodeNewbie - Stories from people on their coding journey.
  • Ruby on Rails Podcast - A weekly conversation about Ruby on Rails, open source software, and the programming profession.
  • The Bike Shed - Hosts Derek Prior, Sean Griffin, Amanda Hill, and guests discuss their development experience and challenges with Ruby, Rails, JavaScript, and whatever else is drawing their attention, admiration, or ire this week.
  • ShopTalk Show - An internet radio show about the internet starring Dave Rupert and Chris Coyier.
  • AWS Podcast - Simon Elisha discusses various aspects of the Amazon Web Services (AWS) offering. Each podcast include AWS news, tech tips, and interviews with startups, AWS partners, and AWS employees.
  • Learn to Code With Me - Coding is tough, but rewarding. Get weekly motivation with this podcast.

UX

  • User Defenders - Inspiring interviews is UX superheroes. 
  • Tentative - All about digital product design. Hosted by thoughtbot Chief Design Officer Kyle Fiedler & Reda Lemeden.

People Behind Code

  • Giant Robots Smashing Into Other Giant Robots - A weekly podcast discussing the business of great software products. Hosted by Ben Orenstein and a rotating panel of fellow developers and entrepreneurs, we delve deep behind the scenes of thoughtbot's SaaS products.
  • Greater Than Code - A charming podcast about how #peoplematter in tech. 
  • Request for Commits - Exploring different perspectives in open source sustainability. It's about the human side of code.

Entertainment

  • Missing Richard Simmons - On February 15, 2014, fitness guru Richard Simmons disappeared. He stopped teaching his regular exercise class at Slimmons, cut off his closest friends, and removed himself from the public eye after decades as one of the most accessible celebrities in the world. Nobody has heard from him - and no one knows why he left. Filmmaker Dan Taberski was a Slimmons regular and a friend of Richard’s. It is Dan’s search for Richard - and the deeper he digs, the stranger it gets.
  • Hell Yeah Roller Derby - An awesome podcast that details a new passion of mine: roller derby. 
  • Anna Faris is Unqualified - A hilarious podcast where not-so-great advice comes from unqualified Hollywood types.
  • Women of the Hour - a podcast hosted by Lena Dunham and produced by BuzzFeed, will feature conversations with women about love, sex, work, bodies, friendship, and more.

Weird at Last, Weird at Last

  • Welcome to Nightvale - a twice-monthly podcast in the style of community updates for the small desert town of Night Vale, featuring local weather, news, announcements from the Sheriff's Secret Police, mysterious lights in the night sky, dark hooded figures with unknowable powers, and cultural events.
  • Alice Isn't Dead - A truck driver searches across America for the wife she had long assumed was dead. In the course of her search, she will encounter not-quite-human serial murderers, towns literally lost in time, and a conspiracy that goes way beyond one missing woman.
  • The Orbiting Human Circus (of the Air) - Atop the Eiffel Tower, a lonely janitor stumbles into a series of alternately surreal and comic adventures as he becomes part of a mystery: what is the secret behind the wildly popular, bizarrely impossible live radio variety show being broadcast from the tower’s top?

That should give you plenty to choose from! If you're new to listening to podcasts, Ira & Mary give a wonderful explanation on how to get started here. I personally enjoy the iTunes podcast app on my phone and SoundCloud at work. 

Podcasts are near and dear to my heart. Please let me know if you decide to give them a try. Thank you dear readers and good night.