Skip to content

Instantly share code, notes, and snippets.

View Dakad's full-sized avatar
🐦

David A. K. Ad. Dakad

🐦
View GitHub Profile
@Dakad
Dakad / local-ruby-gem.md
Created May 26, 2022 09:54 — forked from zulhfreelancer/local-ruby-gem.md
How to use a local Ruby gem in Rails project?

Situation

You are working on a Rails app that uses a gem named abc. This gem is hosted on RubyGems and the source code of the gem is available at https://github.com/your-username/abc.

You created a new branch locally for your gem (new-feature). You wanted to modify the gem and load it directly to your local Rails app. And, you don't want to push the gem changes to GitHub and publish the gem to RubyGems just yet.

You want all the changes that you made in your local gem directory get reflected immediately in your local Rails app without requiring you to run gem build and gem install command in the gem's local directory.

Steps

@Dakad
Dakad / gdb_cheat_sheet.txt
Created January 21, 2022 21:16
GDB cheat sheet
GDB commands by function - simple guide
---------------------------------------
More important commands have a (*) by them.
Startup
% gdb -help print startup help, show switches
*% gdb object normal debug
*% gdb object core core debug (must specify core file)
%% gdb object pid attach to running process
% gdb use file command to load object
@Dakad
Dakad / select_terminate.cr
Created January 11, 2022 14:47 — forked from lbarasti/select_terminate.cr
select use case 1: graceful termination
def producer(name : String, &generator : -> T) forall T
Channel(T).new.tap { |ch|
spawn(name: name) do
loop do
ch.send generator.call
end
end
}
end
@Dakad
Dakad / select_pipeline.cr
Created January 11, 2022 14:46 — forked from lbarasti/select_pipeline.cr
select use case 4: dealing with back-pressure
def producer(name : String, &generator : -> T) forall T
Channel(T).new.tap { |ch|
spawn(name: name) do
loop do
ch.send generator.call
end
end
}
end
@Dakad
Dakad / select_send_receive.cr
Created January 11, 2022 14:46 — forked from lbarasti/select_send_receive.cr
use case 2: mixing send and receive
def producer(name : String, &generator : -> T) forall T
Channel(T).new.tap { |ch|
spawn(name: name) do
loop do
ch.send generator.call
end
end
}
end
6018 Books
6000 Business
6022 Catalogs
6017 Education
6016 Entertainment
6015 Finance
6023 Food and Drink
6014 Games
6013 Health and Fitness
6012 Lifestyle