Skip to content

Instantly share code, notes, and snippets.

Keybase proof

I hereby claim:

  • I am waseem on github.
  • I am waseem (https://keybase.io/waseem) on keybase.
  • I have a public key whose fingerprint is 5F03 7EE0 0E7B 755E 1AE7 36ED BFC9 960F AB10 5B41

To claim this, I am signing this object:

$ irb
2.0.0p0 :001 > s1 = "some thing"
=> "some thing"
2.0.0p0 :002 > s2 = s1
=> "some thing"
2.0.0p0 :003 > s2
=> "some thing"
2.0.0p0 :004 > s1 = "some other thing"
=> "some other thing"
2.0.0p0 :005 > s2
@waseem
waseem / create_videos.rb
Last active December 16, 2015 18:48
Integrating Zencoder API with Carrierwave in Rails
class CreateVideos < ActiveRecord::Migration
def change
create_table :videos do |t|
t.string :video
t.text :meta_info
t.timestamps
end
end
end
@waseem
waseem / company.rb
Last active December 15, 2015 05:29 — forked from anonymous/gist:5209780
class Company
attr_reader :title
def initialize(title)
@title = title.capitalize
@users = []
end
def add_company_name(new_comp)
@title = new_comp
@waseem
waseem / start.md
Last active December 14, 2015 09:50
How one should start learning Ruby and Rails.

If you're just starting with Rails, I will suggest you to learn Ruby first. If you know how its object model, inheritance and mixins work, you're good to start creating web application with it. This is very important. A lot of people dive into Rails without learning basic Ruby first (that's how I did) and get frustrated because they don't understand how it works. I will highly recommend The Well Grounded Rubyist by David Black to start learning Ruby. You can also get a good introduction of Ruby by working your way through interactive tutorials on Codeacademy. You don't need to understand metaprogramming in the beginning. But if you decide to do so, I will suggest book Metaprogramming Ruby by Paolo Perrotta. It's best in covering the subject matter. It's a little bit old though but still good nonetheless. Also see third point in [comment](https://gist.github.com/waseem/5068050/#

1. An issue popups in Github. A bug or a feature request.
2. Developer starts coding after understanding the issue. He makes sure to add issue number in the form of #XXX - XXX is issue number - to the commit message. This links issue with the commit that was made. It's important to know 'why the commit was made'.
3. A CI listens to pushes to the Github repo and runs all the specs and optionally deploys the code to one of the staging servers.
4. After developer is done with coding, s/he assigns the issue to another developer for code review.
5. Code reviewer makes sure that all the tests are passing along with presence of code and test coverage. Code reviewer can assign issue back to the developer if there is some issue with the code. Developer will start at step 1 again.
6. Code reviewer assigns issue to QA. If QA is not happy, s/he adds issues that were found as comment to the original issue or possibly create new issues depending upon severity of the problem s/he found out.
7. If QA is happy, she assigns th
@waseem
waseem / deploy.rb
Created December 1, 2012 01:14 — forked from markoa/deploy.rb
Ingredients to monitor Resque with God automatically via Capistrano (on Ubuntu)
namespace :deploy do
desc "Hot-reload God configuration for the Resque worker"
task :reload_god_config do
sudo "god stop resque"
sudo "god load #{File.join(deploy_to, 'current', 'config', 'resque-' + rails_env + '.god')}"
sudo "god start resque"
end
end
# append to the bottom:
formOptions: ->
on_touch_val = ''
if @widget.video_id?
on_touch_val = 'Show video'
asset_id = @widget.video_id
else if @widget.audio_id?
on_touch_val = 'Play sound'
asset_id_val = @widget.audio_id
data: _.extend(@widget, { on_touch: on_touch_val, asset_id: asset_id_val })
- options = { :as => :string, :label => false }
= f.input :date_start, options.merge(:placeholder => "Start Date")
= f.input :time_start, options.merge(:placeholder => "Start Time")
= f.input :date_end, options.merge(:placeholder => "End Date")
= f.input :time_end, options.merge(:placeholder => "End Time")
@waseem
waseem / gist:3945472
Created October 24, 2012 11:01 — forked from whitmanc/gist:3943844
MP3 File Recognizer
package recognizer;
/*
* Copyright 1999-2004 Carnegie Mellon University.
* Portions Copyright 2004 Sun Microsystems, Inc.
* Portions Copyright 2004 Mitsubishi Electric Research Laboratories.
* All Rights Reserved. Use is subject to license terms.
*
* See the file "license.terms" for information on usage and
* redistribution of this file, and for a DISCLAIMER OF ALL