Skip to content

Instantly share code, notes, and snippets.

View develop7's full-sized avatar

Andrei Dziahel develop7

View GitHub Profile
[Unit]
Description=foo ssh tunnel
[Service]
ExecStart=/usr/bin/ssh -N -L3307:host1.example.com:3306 shell.example.com
[Install]
Also=foo-tunnel.socket
@develop7
develop7 / 0_reuse_code.js
Created November 13, 2013 16:44
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console
@develop7
develop7 / 20130712.md
Last active December 19, 2015 16:38
Stuff I've learned today

Vala

  1. Use Gdk.Pixbuf.savev instead of save if you want to change container options upon saving file.

    Gdk.Pixbuf pixbuf = new Gdk.Pixbuf.new_from_whatever();
    pixbuf.savev("foo.jpg", "jpeg", 
                    new string[1]{"quality"}, 
                    new string[1]{"80"}); //this sets image quality to 80
package main
import (
"fmt"
"github.com/streadway/amqp"
"log"
)
func main() {
produce()

Когда мы хотим скопировать данные из production окружения Ruby on Rails приложения в development или staging, обычно, нам нужно скопировать дамп базы данных и статические файлы (например, изображения загруженные пользователями). Копирование базы может не представляет проблем (например, ее можно копировать из бэкапов или резервных серверов БД). А вот копирование статических файлов занимает много времени и ресурсов сервера с которого копируют (и на который копируются) файлы.

В рассылке ror2ru Макс Лапшин предложил

За вдохновение спасибо коанам Vim.

Тишина

Программист на Python вручила свой ~/.gitconfig Мастеру Git. Среди многих других там были такие строки:

[alias]
; Явное лучше неявного. Если мы хотим объединить изменения, следует делать это самостоятельно.
pull = pull --ff-only
@develop7
develop7 / gist:5265759
Created March 28, 2013 18:45
How can this be??
#(rdb:1) p @hash
{"one"=>true, "checked value"=>true, "two"=>true}
#(rdb:1) p other.instance_variable_get(:@hash)
{"one"=>true, "checked value"=>true, "two"=>true}
#(rdb:1) p @hash == other.instance_variable_get(:@hash)
false
#include <stdio.h>
#include <stdlib.h>
typedef struct SStudent{
int id;
char *name;
float percentage;
} TStudent;
int main() {
%  sudo iptables -S > /tmp/before.ipt
%  sudo ufw allow OpenSSH
Rule added
Rule added (v6)
%  sudo iptables -S > /tmp/after.ipt
%  diff -u2 /tmp/before.ipt /tmp/after.ipt
--- /tmp/before.ipt 2012-01-16 22:01:24.675367658 +0300
+++ /tmp/after.ipt 2012-01-16 22:03:40.908253084 +0300
@@ -107,4 +107,5 @@
 -A ufw-user-input -p tcp -m multiport --dports 56882:56889 -j ACCEPT 
@develop7
develop7 / mongo_console.js
Created December 29, 2011 22:56
Thing I've learned today
// way to shoot your own leg
var q = db.some_collection.find({something: "awful"});
q.forEach(function(o) {print(o.foo)}) //this will print something affects map() too
q.forEach(function(o) {print(o.bar)}) //will print nothing
/* because */ q.hasNext() // == false after first call
//right way is to reassign q or don't use it at all
db.some_collection.find({something: "awful"}).forEach(function(o) {print(o.foo)}) //will work
db.some_collection.find({something: "awful"}).forEach(function(o) {print(o.bar)}) //will print stuff too