whatson gem / library incl. rubyconf command line tool powered by event.db library - Print Out Upcoming Ruby Conferences in 2020 and More


   I've updated the rubyconf command line tool (that's packaged up in
the whatson gem / library [1]) and powered by event.db (that is, the
eventdb gem / library [2]).

   To print out ongoing and upcoming ruby conferences & camps use / type:

    $ rubyconf

Resulting in:

    Upcoming Ruby Conferences (in 2020):

    in 62d Rubyfuza, Thu-Sat Feb/6-8 (3d) @ Cape Town, South Africa
    in 74d ParisRB Conf, Tue+Wed Feb/18+19 (2d) @ Paris, France
    in 76d RubyConf Australia, Thu+Fri Feb/20+21 (2d) @ Melbourne,
Victoria, Australia
    in 105d Wrocław <3 Ruby (wroclove.rb), Fri-Sun Mar/20-22 (3d) @
Wrocław, Poland
    in 118d RubyDay Italy, Thu Apr/2 (1d) @ Verona, Veneto, Italy
    in 125d RubyKaigi, Thu-Sat Apr/9-11 (3d) @ Nagano, Japan
    in 141d RubyConf India, Sat+Sun Apr/25+26 (2d) @ Goa, India
    in 151d RailsConf (United States), Tue-Thu May/5-7 (3d) @
Portland, Oregon, United States
    in 161d Balkan Ruby, Fri+Sat May/15+16 (2d) @ Sofia, Bulgaria
    in 183d Ruby Unconf Hamburg, Sat+Sun Jun/6+7 (2d) @ Hamburg, Germany
    in 210d Brighton RubyConf, Fri Jul/3 (1d) @ Brighton, Sussex,
England, United Kingdom
    in 230d RubyConf Kenya, Thu-Sat Jul/23-25 (3d) @ Nairobi, Kenya
    in 259d European Ruby Konference (EuRuKo), Fri+Sat Aug/21+22 (2d)
@ Helsinki, Finnland
    in 347d RubyConf (United States), Tue-Thu Nov/17-19 (3d) @
Houston, Texas, United States

   Or if you're adventurous code your own script. Example:

require 'eventdb'

## Step 1 - Setup (In-Memory) Database and Read-in / Fetch Events

url = "https://github.com/planetruby/calendar/raw/master/_data/conferences2020.yml"

db = EventDb::Memory.new    # note: use in-memory SQLite database
db.read( url )

## Step 2 - Print Out Ongoing and Upcoming Events

today = Date.today

puts 'Upcoming Ruby Conferences:'
puts ''

on = EventDb::Model::Event.live( today )
on.each do |e|
  puts "  NOW ON #{cur_day(today)}d   #{e.title}, #{e.date_fmt}
(#{e.days}d) @ #{e.place}"

puts '' if on.any?

up = EventDb::Model::Event.limit( 17 ).upcoming( today )
up.each do |e|
  puts "  in #{diff_days(today)}d  #{e.title}, #{e.date_fmt}
(#{e.days}d) @ #{e.place}"

  Cheers. Prost.

[1]: https://github.com/textkit/whatson
[2]: https://github.com/textkit/event.db

   I have pushed an update of the whatson [1] and eventdb [2] gem /
libraries (e.g. v1.1). What's news?

   Now you can pass along your own event datasets (local or remote) in
the markdown, yaml or csv format (NEW!) on the command line.

    $ rubyconf https://github.com/planetruby/calendar/raw/master/_data/conferences2020.yml
    # - or -
   $ rubyconf conferences2020.yml # note: assumes a saved (local)
copy in the working dir (./)

   or try the alternative rubyconferences.org datafile e.g.

    $ rubyconf https://github.com/ruby-conferences/ruby-conferences.github.io/raw/master/_data/conferences.yml

     As a bonus I've added a new pycon command line tool :-). Try:

     $ pycon

     Resulting in:

   Upcoming Python Conferences:

  in 62d PyCascades, Sat+Sun Feb/8+9 (2d) @ Portland, Oregon, United States
  in 72d PyCon Namibia, Tue-Thu Feb/18-20 (3d) @ Windhoek, Namibia
  in 90d PyTennessee, Sat+Sun Mar/7+8 (2d) @ Nashville, Tennessee,
United States
  in 110d Moscow Python Conf, Fri Mar/27 (1d) @ Moscow, Russia
  in 116d PyCon Italy, Thu-Sun Apr/2-5 (4d) @ Florence, Italy
  in 129d PyCon US, Wed-Thu Apr/15-23 (9d) @ Pittsburgh,
Pennsylvania, United States
  in 160d PyTexas, Sat+Sun May/16+17 (2d) @ Austin, Texas, United States
  in 225d EuroPython, Mon-Sun Jul/20-26 (7d) @ Dublin, Ireland
  in 230d PyOhio, Sat+Sun Jul/25+26 (2d) @ Columbus, Ohio, United States
  in 232d EuroSciPy, Mon-Fri Jul/27-31 (5d) @ Bilbao, Spain
  in 232d GeoPython, Mon-Fri Jul/27-31 (5d) @ Bilbao, Spain
  in 311d PyConDE & PyData Berlin, Wed-Fri Oct/14-16 (3d) @ Berlin, Germany

       You can, of course mix and match and pass along more than one
datafile resulting in:

Upcoming Events:

in 60d Rubyfuza, Thu-Sat Feb/6-8 (3d) @ Cape Town, South Africa
in 62d PyCascades, Sat+Sun Feb/8+9 (2d) @ Portland, Oregon, United States
in 72d ParisRB Conf, Tue+Wed Feb/18+19 (2d) @ Paris, France
in 72d PyCon Namibia, Tue-Thu Feb/18-20 (3d) @ Windhoek, Namibia

   if you mix and match ruby and python. Cheers. Prost.

[1]: https://github.com/textkit/whatson
[2]: https://github.com/textkit/event.db