Category Archives: conference

Presenting Rack at Montreal Against Rails

I’ll be presenting Rack this Tuesday at the first Montreal Against Rails (the non-Rails meeting).

I’ll show how to use Rack and then I’d like to try something new (and probably crazy-stupid). Building a web framework with Rack is so easy, I’ll be doing pair programming with anyone from the audience to create our own custom framework live during the presentation (in 30 min). We’ll start with the code posted on RefactorMyCode as the application code, we’ll implement the framework code during the presentation. So submit your ideas there before the event.

To take part in first and biggest Montreal Ruby pair programming session and watch the other cool presentations, make sure to RSVP.

Advertisements

4 Comments

Filed under conference, montreal, ruby

RubyFringe == Awesome

RubyFringeNick Sieger though us about Jazz, Giles Bowkett got a standing ovation, Zed Shaw sang “Matz can’t patch” and “Don’t fuck Chad’s community”, Geoffrey Grosenbach was wearing a kilt, Hampton Catlin presented Haml for Javascript, Damien Katz made me cry and Tom Preston-Werner is my new hero.

Better reviews

2 Comments

Filed under conference, ruby

MeshU slides and code

Code is at http://github.com/macournoyer/meshu

5 Comments

Filed under conference, ruby, thin

Presenting Thin at Montreal on Rails

MoRIf you’re in Montreal next Tuesday, be sure to come to the next Montreal on Rails. I’ll be presenting Thin with a fanfare, dancers and pizza.

RSVP if not already done and do it fast, places are limited.

I’ll present some new features in the upcoming Spherical Cow release and recode Thin like I did at DempCampCUSEC, but this time, with one hand tied being my back and someone yelling at me in Russian. All this in 2 minutes (I don’t know yet what I’ll do with the remaining time).

4 Comments

Filed under conference, montreal, ruby, thin

DemoCampCUSEC follow-up

Yesterday I presented Thin at DemoCampCUSEC. Things went pretty well and the other presentations were very good too.

My demo was basically re-coding a simplified version of Thin live, here’s the final result:

%w(rubygems eventmachine thin thin_parser rack).each { |f| require f }

class Connection < EventMachine::Connection  
  attr_accessor :app
  
  def initialize
    @parser = Thin::HttpParser.new
    @data = ''
    @nparsed = 0
    @env = {}
  end
  
  def receive_data(data)
    @data << data
    @nparsed = @parser.execute(@env, @data, @nparsed)
    
    process if @parser.finished?
  end

  def process
    status, headers, body = @app.call(@env)
    
    body_output = ''
    body.each { |l| body_output << l }
    
    send_data "HTTP/1.1 #{status} OK\r\n" +
              headers.inject('') { |h, (k,v)| h += "#k: #v\r\n" } +
              "\r\n" +
              body_output
    
    close_connection_after_writing
  end
end

welcome_app = proc do |env|
  [
    200,                                  # Status
    {'Content-Type' => 'text/html'},      # Headers
    [
      '<html><body>',
      '<h1>Welcome</h1>',
      '<p>Welcome to my server!</p>',            # Body
      '<p><a href="/rails">My Rails app!</a></p>',
      '</body></html>'
    ]
  ]
end

rails_app = Rack::Adapter::Rails.new(:root => '/Users/marc/projects/refactormycode', :prefix => '/rails')

app = Rack::URLMap.new('/' => welcome_app, '/rails' => rails_app)


EventMachine.run do
  EventMachine.start_server '0.0.0.0', 3000, Connection do |con|
    con.app = app
  end
end

Hope you enjoyed it!

9 Comments

Filed under conference, montreal, ruby, thin

BarCampMontreal3 report

I just came back from BarCampMontreal3. It was an amazing event! You really missed something if you didn’t came!

Here’s a remix of the notes I’ve taken from the (un)conference.

How data will save the world

Hugh McGuire delivered a great talk about two of his projects: LibriVox and DataLibre. Excellent talk, that started up the event nicely. I didn’t took notes at that time so I can’t quote quotes, you had to be there.

(Oh I think I missed a couple one here…)

RefactorMyCode

Marc-Andre Cournoyer presentation was boring… sorry about that. My computer crashed just when I plugged it on the projector. I had 5 minutes, so I improvised while waiting for the computer to reboot. But anyway, when I asked who knew about the project, a lot of people raised their hands, I was surprised!

JetFire

Looks like a new language with a syntax similar to Java and built-in workflow stuff. I didn’t really understood it. Seems like a framework for building web apps with customizable business logic.
John Hansen, from Jetfire, posted a comment pointing to this article for a short description of Jetfire.

Deploying desktop apps

Avery Pennarun showed with his banking app, how deploying can be easy with desktop app. He showed, installing and updating, all with a simple click. The cool thing is, he did all this without using InstallShield or anything. He built it himself and said it took only 300 LOC or so. Impressive! He said it’s as easy as deploying a web app. Well I not sure from the point view of the user, he still has to click somewhere and be aware of the updating process.

TimmyonTime

TimmyonTimeFrank Lamontagne and Dan Simard presented their project. TimmyonTime allows anyone to fill in timesheets and manage tasks by IM. Sadly they couldn’t get the thing to work even tough they had 3 backups solutions! Somebody shouted you should have called it Murphy, Frank replied they also tough about calling it GeorgeOnTime but it doesn’t sound so nice… They did a great improvisation anyway and also organized another presentation afterwards to show the thing.

CakeMail

CakeMail sampleFrancois Lane was next, announcing CakeMail public beta launch! The service, is for resellers only, it’s not branded. He had cool animated slides showing why they chose a cake as the logo and the name, because it’s all layers, API, something-I-forgot, plugins. It’s multilingual, has a couple of plugins for analytic, CRM and Google Maps. He also did a demo of it by sending and email to people registering to a mailing list live during the presentation, nice idea! Plus they offered cupcakes for lunch, they won me on that!

Keiky project

Evan Prodromou presented Keiki, a wiki for parents. After his success with WikiTravel and Vinisimo he was used to having free books and info. So when he and his wife got a baby he couldn’t travel that much anymore, that’s how he started Keiki.

Lunch

Lunch was free! Sandwich, vegetables and salads. Dessert was offered by CakeMail, as mentioned before.
I had great talks with Denis Canuel, Mehdi Akiki about Blitzweekend and with Duncan More about CakeMail and multilingual issues in software.

Startup Kung-Fu

Sylvain Carl
gave plenty of tips on how to start a startup in Montreal. 40 meetings rule, 40 meetings before anything happens, shit that’s a lot! One of his lesson was : Knowing what will be your features is not that important… Knowing what’s gonna happen next is more. Location doesn’t matter, it is possible Montreal, he met more then 10 VCs here he claimed.

TikiWiki

Marc Laport is a project manager of TikiWiki a wiki engine that is very active, top 20 most active project on SourceForge! Lots of documentation, he showed a 950 pages manual. Some features that make it different from MediaWiki and all are: builtin multilingual, better permissions, custom theme.

YulNews

Denis Canuel started with a quote claiming everyone is a journalist. He talked about his upcoming social news site. He gave a couple of hints on what will be the features by saying how timelines could be useful to display what happened around an event. But sadly he presented no demo, saying it was too alpha yet but still asked people to register for alpha on the site.

StickyCal

Erik Wright and David Lemieux presented StickyCal.
Learn about events before they happen, like music shows for example. It’s simple to setup, put an script tag on your page and you’re done. No authentication required and let your friends know you’re attending an event. It keeps the user on the band’s page. But again, no demo…

Notes on HTTP

Pierre Phaneuf was next presenting his guide on making your website faster with caching using Modified-Date or ETags, compression and a couple of others. One memorable quote:

The faster way to handle a request : don’t handle it!

I wish this came before I had to optimize RefactorMyCode. But he forgot to mention YSlow!

MercuryGrove

Scott Annan showed MercuryGrove. Basecamp-like web app. Really looks like Basecamp + Highrise + Backpack.
Not enough time and the app was too slow.

Coradiant

Quick talk. Big company. They install a box on your web server and you get detailed real-time stats of the visits on your site.

Raising angel financing

Austin Hill was next with a talk on how to raise angel financing. Raising is like dating. You need to build a relationship first, not like getting a girl in bar. Look for second time entrepreneur, look for sold cie in your field., target groups of angels. Convertible dept is the preferred way. There was lots of interesting questions after the presentation: What is an angel investor? anyone who invest in private cie, lawyers, 2nd time entrepreneur. 3-6 month to put and angel round. Don’t commit to long term things

I left, before the end, sorry for all the other presenters.

22 Comments

Filed under conference, montreal

Upcoming BarCamp and Montreal on Rails

BarCampNext BarCampMontreal is this weekend, November 3rd, I’ll be giving a short presentation on RefactorMyCode.com. I’ll also be giving away a free special and unique gift to celebrate RmC success and announcing a new secret feature, be there!

Montreal on Rails is next week, November 6th, I won’t be giving a presentation on anything, but lots of interesting people will.

There’s also a conference on castle system in Christianity, November 5th, in Madurai, India.

See you there!

Update: I can’t make it to India for the 5th, sorry!

2 Comments

Filed under conference, montreal, refactormycode