Skip to content

Instantly share code, notes, and snippets.

View somebody32's full-sized avatar

Ilya Zayats somebody32

View GitHub Profile
require "rubygems"
require "blather/client"
setup "some@thing.here", "password"
@translations = YAML.load(File.read(File.dirname(__FILE__)+"/translations.yml"))
before (:message, :chat?, :body) {|msg| puts "new message from #{msg.from.stripped}"}
message :chat?, :body => @translations["exit"].values do |m|
say m.from, "Exiting"
STREAM IN: kbUz7QVz78KKErm5DdVb/r4Bg7WEhmEGgiEIMvpgs51c11iqnGVjLYkYZWUstZ8bfa//S8hNJVVK1lSEgJlAz8V700xEzcrbx88xsTxy5s6N+knJI1UCDB/A5uqzBw9hLvg9uM3Cx/8ewz9mcxnuwh9/GKZuC3mx0hvRgMXdDwXBhd6Lg5fwnWz9LJI+e6SX1uVdrHCq/cY0xTPLAO8DNL93d34RSo1JbLWHqjC7xY40ozeR2G0XDDnOwXgUIbmmiPWlQalEGXIKywBGF/SwMQNIlf2QcoxNjIt+oT77YXdfgCTcvJ+D44Y1ZPi9/KcTe/ZtWS4A4g9+TYgglLfA/fNbQS2O6zT501xgn4XdwvMHo9PCMjxsi44n4mUhD9HragV09H1JZHDghBONy9YR5IIXu4cyRlsI9xpwpvCoGmemuwfc5N4HNqW8J4Kwa07e6YUlHCFunph6fMC3cYCx8ZUThc28BgjKwEHwM9tYWGszKszktt0I1mrbQxH+jYJgjV8oDWwHm9JhZLn7ENSxdqdnU4bmaA59X6bGPDewrGmC5RuGUKgt/b2WdBY9QMyGFFZhZ1HSWu+REPXdAMO7lT5rqdvNxkgHC33CippIEFbGdkzsRywC7Y2wJPA9aYdJMKgl4f8dcUIUkoYkjnYPAgCDzi5ggTV/c3wAfua1MXFK/GXak60fN6gc0iXSANOcX1TArJXSyGFN8SV8DEFYFHh+tcbA6QgIIWkU8AACAASURBVA3qfW
SENDING: (/opt/ruby-ee-dists/2010.02/lib/ruby/gems/1.8/gems/blather-0.4.14/lib/blather/stream.rb:151:in `receive_data') <stream:error><xml-not-well-formed xmlns='urn:ietf:params:xml:ns:xmpp-streams'/></stream:error>
/opt/ruby-ee-dists/2010.02/lib/ruby/gems
@somebody32
somebody32 / post-commit
Created October 10, 2012 13:58
Autopost commit photos to twitter
#!/bin/zsh
forked_image() {
mkdir -p ~/.git_shots
filename="$(date +%s)_$(basename $PWD).jpg"
imagesnap -q -w 3 ~/.git_shots/$filename
sleep 2
NOEXEC=0 rvm default do t update "New commit from @somebody32" -f ~/.git_shots/$filename >/dev/null
}
@somebody32
somebody32 / gist:4702066
Created February 3, 2013 14:47
merge and count inversions in array
def sort_and_count(list)
return [0, list] if list.size <= 1
mid = list.size / 2
left = list[0, mid]
right = list[mid, list.size-mid]
left_result = sort_and_count(left)
right_result = sort_and_count(right)
merge_result = merge_and_count(left_result[1], right_result[1])
@somebody32
somebody32 / gist:5232120
Last active October 4, 2022 08:19
Список литературы для ознакомления с concurrent programming и реализацией этих принципов и подходов на ruby. Огромное спасибо @brainopia за составление.

Введение

Начать стоит отсюда. Не пугайтесь то, что это книга по незнакомой OS, эти термины практически везде одинаковые и здесь они изложены в понятной для начинающих форме.

http://www.qnx.com/developers/docs/6.4.1/neutrino/getting_started/s1_procs.html

Прочесть нужно треть главы до подраздела "Starting a process", если С не пугает, читайте полностью. После прочтения вы будете понимать, что такое process, thread, mutex, priorites, semaphores, scheduler, contex-switch, kernel states.

Ruby

@somebody32
somebody32 / vm_parallels_setup.md
Last active December 17, 2015 18:19
Setting up Parallels VM for dev env
  1. Create Parallels VM and install guest OS (Ubuntu 12.10 in my example). Do not shutdown the VM or quit Parallels. We'll do this later.
  2. I'm creating for an each VM it's own folder inside ~/Code. This machine will be for the "ACMEProject", so I'll place it inside ~/Code/ACMEProject
  3. Create .vm_config config file inside ~/Code/ACMEProject:
```shell
__VM_NAME=ACMEProject # VM Name
__VM_HOST=10.211.55.2 # VM IP here, Get it from parallels settings
__VM_FW_PORTS="3000 9292" # Any ports that you need to forward from host to VM. 3000 and 9292 in this example
```
  1. Get VM_control script from here (https://github.com/Somebody32/somdots/blob/master/vm_control.sh) and call it from you ZSH file (bash maybe good too, but I've tested it under ZSH only)
App.ApplicationRoute = Ember.Route.extend
setupController: (controller) ->
do @getCurrentUser
getCurrentUser: ->
App.Auth.send
url: "/user",
success: (data) =>
@controller.set('currentUser', App.User.create(data));
@somebody32
somebody32 / controller.coffee
Last active December 21, 2015 23:19
Ember RC8 binding stranges
App.UserController = Ember.ObjectController.extend
needs: "application"
currentUser: null
currentUserBinding: Ember.Binding.oneWay("controllers.application.currentUser")
@somebody32
somebody32 / controller.coffee
Created September 4, 2013 14:20
Ember 1.0b1 strangeness
actions:
save: ->
request = @get "model"
request.addObserver('id', @, 'setCurrentRequest')
request.save().then =>
@transitionToRoute '/'
, (error) ->
console.log error
console.log "reject"
@somebody32
somebody32 / pmap_initial_write
Created December 31, 2014 14:17
Pmap after initial write
3623: /usr/bin/influxdb -pidfile /opt/influxdb/shared/influxdb.pid -config /opt/influxdb/shared/config.toml
Address Kbytes RSS Dirty Mode Mapping
0000000000400000 14948 11008 0 r-x-- influxdb
0000000001498000 160 160 40 rw--- influxdb
00000000014c0000 204 124 124 rw--- [ anon ]
0000000001f1d000 1580 1452 1452 rw--- [ anon ]
000000c000000000 8 8 8 rw--- [ anon ]
000000c207f90000 7616 6720 6720 rw--- [ anon ]
00007f3ad8000000 2312 2048 2048 rw--- [ anon ]
00007f3ad8242000 63224 0 0 ----- [ anon ]