LINUX.ORG.RU

Сообщения discordia

 

Better than Lisp (2005)

Форум — Development

Over at reddit.com, we rewrote the site from Lisp to Python in the past week. It was pretty much done in one weekend. (Disclosure: We used my web.py library.) The others knew Lisp (they wrote their whole site in it) and they knew Python (they rewrote their whole site in it) and yet they decided liked Python better for this project. The Python version had less code that ran faster and was far easier to read and maintain.

http://www.aaronsw.com/weblog/rewritingreddit

 

discordia
()

Посоветуйте GUI-разрезалку видео

Форум — Desktop

Нужна возможность вырезАть часть видео и сохранять как отдельный файл. Форматы могут быть самые разные.

OpenShot не предлагать.

 

discordia
()

Определить, что quickfix window видимо

Форум — Development

Как на vimscript определить, что quickfix window открыто и видимо? Аналогично для location window.

 ,

discordia
()

Нарезка видео на скриншоты

Форум — General

Я пытаюсь нарезать видео на скриншоты с помощью ffmpeg, вот так:

ffmpeg -i porn.mp4 -vf fps=fps=1/20 image%03d.jpg

К сожалению, почему-то это не работает с fps меньше 1/20 (может быть, это зависит от фильма). Как лечить? И можно ли как-нибудь задать FPS вещественным числом, а не дробью?

Задача: нарезать N скриншотов, равномерно распределённых по всей длине видео. Длину видео я могу получить с помощью ffmpeg и awk:

ffmpeg -i porn.mp4 2>&1 | awk '/Duration/ {split($2,a,":");print a[1]*3600+a[2]*60+a[3]}'

 

discordia
()

Зависает ядро 3.14.12

Форум — General

Ядро 3.14.12 зависает на этапе загрузки, последнее, что пишет: Waiting for uevents to be processed. Давненько я не сталкивался с подобным. У кого-нибудь еще наблюдается? Ядро 3.12.19 в тоже время загружается нормально. Конфигурация одинакова, с точностью до make oldconfig (diff).

 ,

discordia
()

Go: 90% Perfect, 100% of the time

Форум — Development

Brad Fitzpatrick:

Anecdote: a group at Google rewrote a service from Java to Go. The group monitoring it expressed disappointment to us that the GC pause times were 2-3 times higher once they switched to Go. We pointed out that was not true: their Y axis was now labeled microseconds instead of milliseconds.

Слайды с GopherCon 2014: http://talks.golang.org/2014/gocon-tokyo.slide

 

discordia
()

Корпорация добра запретила скачивание с youtube. Help!

Форум — Desktop

Недавно Google запретил аддонам в Google Chrome Store скачивать видео с Youtube, в связи с чем хромоаддон FVD Downloader отказался дальше это делать, ссылаясь на Youtube policy и умоляя не минусовать. В Firefox аддон Flash Video Downloader после очередной пары скачиваний заявил, что для дальнейшего скачивания с youtube надо почистить cookies, и тоже отказывается качать. Minitube не качает тоже.

Реквестирую годный аддон для хрома (желательно) или хотя бы для фокса. Или же, на худой конец, другое средство.

 

discordia
()

Python 3 может спасти Python

Форум — Development

https://medium.com/p/2a7af4788b10

Ин шорт: сделайте Python 3 соблазнительным. Уберите GIL, добавьте каналы, как в Go, ускорьте интерпретатор, добавьте типы, перетрясите и упорядочьте стандартную библиотеку, переделайте REPL и т.д. Не бойтесь ломать вещи. И Python будет спасён.

А что бы вы добавили (удалили, переделали) в Python 3, господа?

 

discordia
()

Форматирование кода на javascript

Форум — Web-development

Казалось бы, если открыть *.js файл и нажать =G, файл должен красиво отформатироваться с отступами. Однако почему-то это работает только в самых простых случаях. Если же взять, например, следующий код

var obj = {
	"a": {"b":
		[f(c,
		   d),
		   g(e,
		     h)]},
		     "i": {"j": 0}
};

стандартный форматтер обламывается. Как и этот, и этот. Я ожидал, что хоть какой-нибудь из них хотя бы ключи «a» и «i» поставит на одном уровне отступа, но не тут-то было.

А вот как выглядит этот код, отформатированный питоновским jsbeautifier:

var obj = {
    "a": {
        "b": [f(c,
                d),
            g(e,
                h)
        ]
    },
    "i": {
        "j": 0
    }
};

Я что-то упускаю?

 

discordia
()

Платный софт под GPL

Форум — General

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

 

discordia
()

Округление в Go

Форум — Development

Почему так?

package main

import (
	"fmt"
	"strconv"
)

func main() {
	fmt.Println(strconv.FormatFloat(0.15, 'f', 1, 32)) // печатает 0.2
	fmt.Println(strconv.FormatFloat(0.15, 'f', 1, 64)) // печатает 0.1
}

http://play.golang.org/p/MeAc6vXCnC

В документации написано, что

FormatFloat converts the floating-point number f to a string, according to the format fmt and precision prec. It rounds the result assuming that the original was obtained from a floating-point value of bitSize bits (32 for float32, 64 for float64).

 

discordia
()

PCI-E: 6-ти и 8-миштырьковые разъемы

Форум — Linux-hardware

Подскажите, пожалуйста,

1. 8-pin и 6+2-pin PCI-E - это одно и то же?

2. Это http://i.imgur.com/s3ihfOv.jpg оно?

3. Зачем на одной видеокарте два разъема (6-pin и 8-pin)? Они взаимозаменяемы или надо подключать оба сразу?

4. Как работает в линуксе Radeon R9 290?

 

discordia
()

MTU/MSS для OpenVPN

Форум — Admin

В связи с недавними событиями настроил себе OpenVPN на забугорном сервачке, по этой https://wiki.archlinux.org/index.php/OpenVPN инструкции. Все получилось, но кое-что не понятно. Здесь https://wiki.archlinux.org/index.php/OpenVPN#Configure_the_MTU_with_Fragment_... описано, как определить правильное значение MTU. Однако у меня веб отлично работает без всяких настроек MTU в конфиге openvpn-клиента, а когда делаю по той инструкции (пингую сервер, пишу в конфиге fragment 1400 и mssfix) - сайты открываться перестают вовсе. Да, на сервере стоит polipo, который и используется в качестве прокси в браузере.

 

discordia
()

Автодополнение в Go

Форум — Development

Кто-нибудь в курсе, умеет ли gocode автодополнять структуры-интерфейсы из пакетов, отличных от того, с которым в настоящий момент работаешь? Пробую написать revel.<C-X><C-O> в контроллере - ничего не показывает. Я неправильно его готовлю?

 

discordia
()

Курим REST: коллекция в коллекции

Форум — Web-development

Положим, есть ресурс, одним из полей которого является коллекция ID подчинённого ресурса.

Пусть это будут Автолюбитель и Мойшыно:

Автолюбитель = { id: 1, name: 'Билл Гейтс', cars: [1, 2, 3, 5] }

Мойшыно = { id: 1, make: 'Toyota', number: 'x 958 xxx' }

Как организовать доступ к такой подчинённой коллекции? Клиент получает объект Автолюбитель и должен, получается, знать, что поле cars представляет собой массив id машин, что нехорошо с точки зрения decoupling (?).

Если же сделать отдельный URL для получения подчинённой коллекции, вроде /owner/1/cars, получается, что в объекте Автолюбитель это поле cars ни в винду, ни в Красную Армию, и его надо игнорировать и серверу, и клиенту.

 ,

discordia
()

Стиль текста и :before/:after в FF

Форум — Web-development

Имеется CSS:

tag:before { content: "<tag>"; }
tag:after { content: "</tag>"; }
tag {
  text-decoration: line-through;
  font-weight: bold;
  font-style: italic;
}
Можно ли дописать/переписать этот стиль, чтобы отменить перечеркивание, жирность и курсив у обрамляющих тегов <tag> и </tag> (но не у того текста, что внутри тегов)?

Вот так не получается:

tag:before, tag:after {
  text-decoration: none;
  text-weight: normal;
  font-style: normal;
}

 ,

discordia
()

Библиотеки для DbC-программирования на js

Форум — Web-development

Кто какие библиотеки использует для Design-by-Contract-программирования на Javascript?

 design by contract,

discordia
()

Безопасный доступ к переменной на странице

Форум — Web-development

Допустим, я хочу получить доступ из скрипта greasemonkey к переменной примитивного типа, определенной на странице.

Если я сделаю так:

if (typeof unsafeWindow.var_name === 'number') {
  var n = unsafeWindow.var_name;
 // дальше идет использование переменной n
}

сможет ли злоумышленная веб-страница выполнить код в контексте скрипта greasemonkey? Есть ли тут какая-то лазейка?

 , ,

discordia
()

К calligra 2.6.3 прибит гвоздями nepomuk

Форум — General

При обновлении calligra с 2.5.3 на 2.6.3 emerge захотел поставить хренову кучу пакетов семантического десктопа.

[ebuild  N     ] dev-db/libiodbc-3.52.7  USE="-gtk" 
[ebuild  N     ] dev-db/virtuoso-odbc-6.1.6 
[ebuild  N     ] dev-db/virtuoso-server-6.1.6  USE="readline -kerberos -ldap" 
[ebuild  N     ] media-libs/raptor-2.0.9  USE="curl unicode -debug -json -static-libs" 
[ebuild  N     ] dev-libs/rasqal-0.9.29  USE="crypt mhash pcre -doc -gmp -static-libs {-test} -xml" 
[ebuild  N     ] dev-libs/shared-desktop-ontologies-0.10.0 
[ebuild  N     ] dev-libs/redland-1.0.16  USE="ssl xml -berkdb -iodbc -mysql -odbc -postgres -sqlite -static-libs" 
[ebuild  N     ] dev-libs/soprano-2.9.0  USE="dbus raptor redland virtuoso -debug -doc {-test}" 
[ebuild  N     ] kde-base/nepomuk-core-4.10.3  USE="ffmpeg (-aqua) -debug -exif -pdf -taglib" 
[ebuild  N     ] kde-base/nepomuk-widgets-4.10.3  USE="(-aqua) -debug" 
В ебилде написано:
RDEPEND="
        ...
        $(add_kdebase_dep kdelibs 'semantic-desktop(+)')
        ...

Можно ли отвязать? KDE я не пользую, соответственно семантический десктоп мне нафиг не нужен.

 , ,

discordia
()

Замена метода объекта javascript обёрткой

Форум — Development

Пусть есть некий класс A, который вы не имеете возможности изменить:

function A () {
  this.x = 1;
}

A.prototype.f = function () {
  this.x = 2;
}

И требуется дописать некий код в конец метода A.f (не изменяя исходный код, только дополняя). Допустим, надо добавить

this.y = 3;

Я делаю так:

var save_f = A.prototype.f;
A.prototype.f = function () {
    this.save_f = save_f;
    this.save_f();
    delete this.save_f;
    this.y = 3;
}

Теперь

var a = new A();
a.f();
a.x; // == 2
a.y; // == 3

Не слишком ли корявое это решение, и можно ли сделать это как-то по-другому?

 

discordia
()

RSS подписка на новые темы