Skip to content
View adam12's full-sized avatar

Sponsoring

@ko1
@postmodern
@ioquatix
@wez
@jrochkind

Highlights

  • Pro

Organizations

@softwareniagara @hanami @ruby-community @unpoly @midstack @gemdocs

Block or report adam12

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
adam12/README.md

Hello 👋

I'm Adam, a long-time software developer and entrepreneur based in the Niagara region of Canada. Most of the time I provide consulting to other organizations through my consultancy, Mediadrive. But you might also find me working on one of my startups or micro-bets, such as DNSLint or Suspenders.

While I am familiar with many languages and technologies, Ruby is my first love, and most of the software I ship is written in Ruby.

I'll happily work with other languages such as Golang, Crystal, JavaScript, Python, Elixir.

I started working with Ruby on Rails in 2005, and have come to appreciate the beautiful Ruby ecosystem outside of Rails. Since 2015, I've been incredibly enamored with using other fantastic libraries in Ruby, and you'll commonly find me around the Roda, Rack, Sequel, Hanami, and other communities.

In 2013, I connected with the local grassroots organization Software Niagara, and loved the community built around this organization so much, that I promptly injected myself into championing the ongoing organization festivities. Through the years, we maintained a regular cadence of multiple free events for the local software community, such as DevTricks.

In that same year, to break the monotony of remote work, I connected with the local group Cowork Niagara which was meeting twice weekly at a local coffee shop. The organization aspired for more, and I joined in the formation of Co-work Niagara Co-operative Inc., as a founding member and Corporate Secretary. The co-operative went on to open a physical co-working space in downtown St. Catharines, followed by one located in central St. Catharines. At it's height, Cowork Niagara served many members and contributed back to the community through it's hosting of many local organizations, Software Niagara included.

Today, you'll find me mostly working from home.

Current projects

I recently built rbz as an experimental Ruby packaging mechanism for single-file archives (ala jar, phar, or shar of other ecosystems). Crazy? Maybe. It was based on a Ruby bug tracker ticket from over 9 years prior.

As part of one of my small bets, I've been working on building and shipping DNSLint, a brandable DNS toolkit for web hosts and MSPs. I've also recently launched Suspenders, a toolkit for the DirectAdmin control panel, and NoDNS.fyi, a reverse proxy for previewing websites during migration without changing DNS.

In an ongoing attempt to improve Ruby documentation, I (along with Mediadrive) host and support Gemdocs.org, an experimental Ruby documentation hosting website. Gemdocs currently hosts over 2.4 TB of documentation for published Ruby gems.

Ask me about

  • Software Niagara
  • Remote working
  • Hosting gem documentation at scale
  • Non-Rails Ruby
  • Starting and running a coworking space
  • Organizing a grassroots software meetup
  • Running a software consultancy for ~ 20 years

Contact me

hello [at] adamdaniels [dot] ca
adam12 @ libera.chat
LinkedIn
Ruby.social

Pinned Loading

  1. ecto_network Public

    Ecto types to support MACADDR and Network extensions provided by Postgrex.

    Elixir 61 21

  2. phoenix_mtm Public

    A small collection of functions to make it easier working with many_to_many Ecto associations and checkboxes to create them.

    Elixir 28 15

  3. devjournal Public

    My own developer journal tool

    Crystal 5 1

  4. tzwhere Public

    Time zone lookup by latitude/longitude using nearest neighbor implementation

    Ruby 4 4

  5. batteries Public

    Tired of copying the same Rake tasks to every single Roda/Sinatra project you start? Me too.

    Ruby 4 1

  6. roda-unpoly Public

    Easily add support to Roda for the server protocol expected by Unpoly

    Ruby 11 1

3,407 contributions in the last year

Contribution Graph
Day of Week March April May June July August September October November December January February March
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Less
No contributions.
Low contributions.
Medium-low contributions.
Medium-high contributions.
High contributions.
More

Activity overview

Contributed to adam12/framework-2, adam12/ruby-lsp.nvim, adam12/rbz and 68 other repositories
Loading A graph representing adam12's contributions from March 17, 2024 to March 21, 2025. The contributions are 94% commits, 4% pull requests, 1% issues, 1% code review.

Contribution activity

March 2025

Created 2 commits in 2 repositories

Created a pull request in unpoly/unpoly that received 1 comment

Fix spelling in predefined transitions doc

I believe these are intended to be exits.

+2 −2 lines changed 1 comment

Created an issue in unpoly/unpoly that received 3 comments

v3.8.0 broke automatic updates of <title> during navigation when response has non-whitespace before opening <html> or <DOCTYPE> tag.

Bug description As of v3.8.0, the <title> attribute doesn't appear to update when navigating. Reproduction project I do not see <title> updates at …

3 comments
Opened 1 other issue in 1 repository
getsentry/sentry-ruby 1 open
Started 1 discussion in 1 repository
unpoly/unpoly
566 contributions in private repositories Mar 3 – Mar 20
Loading