Skip to content

Instantly share code, notes, and snippets.

View vishalzambre's full-sized avatar
🏠
Working Remotely

Vishal Zambre vishalzambre

🏠
Working Remotely
View GitHub Profile
@vishalzambre
vishalzambre / ruby-advanced.md
Created January 26, 2026 05:08
Mock Interview: Advanced Ruby (Pure Ruby / Automation)

🧠 Mock Interview: Advanced Ruby (Pure Ruby / Automation)

1. Ruby Object Model

Q1. How does Ruby resolve a method call?

Model Answer

When Ruby receives a method call, it starts lookup from the object’s singleton class, then moves to the object’s class, followed by any prepended modules, then included modules (in reverse order), and continues up the superclass chain until BasicObject.

🧠 Data Structures & Algorithms – Complexity + Why Cheat Sheet

Quick reference for time/space complexity plus why & when to use each algorithm. Perfect for interviews, revisions, and system thinking.


🔁 Sorting Algorithms

| Algorithm | Best | Avg | Worst | Space | Why / When to use |

@vishalzambre
vishalzambre / string_to_bool.rb
Last active November 12, 2020 09:16
Ruby String to Boolean
module StringToBooleanRefinementsService
refine String do
def to_bool
return true if self == true || self =~ /(true|t|yes|y|1)$/i
return false if self == false || self.blank? || self =~ /(false|f|no|n|0)$/i
raise ArgumentError, "invalid value for Boolean: \"#{self}\""
end
alias_method :to_b, :to_bool
@vishalzambre
vishalzambre / resque.service
Last active April 16, 2020 08:22
System Service for resque
## Add System Service for Resque
Copy below code and paste to /lib/systemd/system/resque.service
`vim /lib/systemd/system/resque.service`
```shell
[Unit]
Description=Resque Workers
[Service]
begin
require "bundler/inline"
rescue LoadError => e
$stderr.puts "Bundler version 1.10 or later is required. Please update your Bundler"
raise e
end
gemfile(true) do
source "https://rubygems.org"
gem "rails", github: "rails/rails"
begin
require "bundler/inline"
rescue LoadError => e
$stderr.puts "Bundler version 1.10 or later is required. Please update your Bundler"
raise e
end
gemfile(true) do
source "https://rubygems.org"
# Activate the gem you are reporting the issue against.
@vishalzambre
vishalzambre / 25347_join_table.rb
Last active April 3, 2017 09:40
Rails ActiveRecord join table withour id delete issue
begin
require "bundler/inline"
rescue LoadError => e
$stderr.puts "Bundler version 1.10 or later is required. Please update your Bundler"
raise e
end
gemfile(true) do
source "https://rubygems.org"
# Activate the gem you are reporting the issue against.
@vishalzambre
vishalzambre / db.rake
Last active January 31, 2017 13:02
Dumps the database to db/APP_NAME.dump using rake rake db:dump and to restore rake db:restore
# lib/tasks/db.rake
namespace :db do
desc 'Dumps the database to db/APP_NAME.dump'
task dump: :environment do
cmd = nil
with_config do |app, host, port, db, user, password|
cmd = "PGPASSWORD='#{password}' pg_dump --host #{host} --username #{user} -p #{port} --verbose --clean --no-owner --no-acl --format=c #{db} > #{Rails.root}/db/#{app}.dump"
end
puts cmd
begin
require 'bundler/inline'
rescue LoadError => e
$stderr.puts 'Bundler version 1.10 or later is required. Please update your Bundler'
raise e
end
gemfile(true) do
source 'https://rubygems.org'
# Activate the gem you are reporting the issue against.
@vishalzambre
vishalzambre / sublime-settings
Created June 15, 2015 07:08
sublime user setting
{
"color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme",
"draw_white_space": "all",
"enable_tab_scrolling": false,
"font_size": 18,
"ignored_packages":
[
"Vintage"
],
"margin": 2,