LINUX.ORG.RU

Избранные сообщения Anatolik

Свободу Шопену!

 

Группа Мультимедиа

Создатель популярного сайта свободной классической музыки Musopen Аарон Данн начал очередную кампанию по озвучиванию и перевода нот в цифровой формат для передачи классики в общественное достояние. Теперь свобода настигнет Шопена, а каждый небезразличный к судьбам классики может в этом деле поучаствовать.

Аарон уже имеет опыт в организации записей для дальнейшего их освобождения. Сейчас на Musopen собрано свыше 350 классических произведений от 90 авторов.

>>> Сбор средств (kickstarter.com)

Evgueni
()

Беспедальный велосипед Fliz для идиотов (шок-видео)

 , , германские дизайнеры

Германские дизайнеры сабортили родили на свет антихриста чудовище велосипед, именуемый «Fliz»; недоношенный плод дизайнерской мысли имеет беспедальную конструкцию. Шок-видео: https://www.youtube.com/watch?v=onc5P1IkCKA

Казалось бы, причем тут линукс? Дело в том, что линукс у меня всегда вызывал какие-то непонятные чувства, а с рождением этого велосипеда, я понял на что именно похож линукс — на Fliz.

makeB
()

Одноплатный десктоп, отговорите...

 

Я ниразу не разработчик (в плане железа), а пользователь со скромными требованиями. Сейчас пользуюсь ПеКа с 512мб памяти, который даже не тянет 720p видео и мне норм.

Хочу заменить большой гроб под столом на маленькую плату. Какие подводные камни?

Как мне сказали в linux-talks, оно на ARM, и что я с ним еще намучаюсь... Не понимаю в чем проблема, если взять готовый дебьян где все тоже самое.

Все основное время мне нужен только аптайм (для почтового сервера и сайта-заглушки), и чтобы оно не жрало много электричества. Ведь все это может дать распберри?

Задачи на десктопе:

0) dhcpcd, pppd

1) mpd + ncmpcpp

2) opensmtpd

3) nginx/php-fpm (99.9% времени просто так висят)

4) пара-тройка ssh клиентов

5) rtorrent

6) mplayer

7) firefox

вобщем, самый обычный десктоп. как сообщают пользователи в комментариях к распберри, оно даже тянет 1080р - это правда? помимо того, она же _вообще_ не издает никаких звуков: никакого шума кулеров.

почему я не должен покупать эту штуку, а брать громоздкий и дорогой, но полноценный ПК?

я пока вижу только плюсы с переходом на raspberry pi, но может я чего-то не знаю. и да, посмотрел, что в комплекатции это standalone плата и только-то, и к ней еще необходимо докупать все остальные потроха. окей. только я не знаю какие :( т.е. где например взять адаптер для питания. а остальное, типа винт, оно наверно как обычно, sata подойдет? монитор hdmi, клава/мышь usb. и все?

Spoofing
()

С чего начать изучение электроники

 , ,

Решил таки наконец то попробовать себя в микроэлектронике (вообще хотел давно, но всё как-то руки не доходили).
Конечная цель - создание программируемых система («умный дом», различные датчики, портативная электроника) + желательно починка чего нибудь простого.
Однако мой текущий уровень практически на нуле (пайка джостиков сеги + подобные простые мелочи), в связи с чем хотелось бы попросить совета с чего вообще начинать знакомство со всем этим. Приветствуются истории успеха.

cast Zubok

P.S. Вдруг кто знает. А реально ли будет поступить на Аспирантуру за границей при наличии Российского высшего образования (бакалавриат) по такой специальности?

najlus
()

Ядро linux для начинающих и интересующих

Думаю, наверняка есть люди, которые сейчас осваивают программирование под ядро или драйверы, и которым были бы интересны полезные советы по этому поводу от человека, который занимается ядром профессионально.

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

Я занимаюсь этим делом порядка 3.5 лет, рассказать есть что. Вопрос в том, кто будет это читать. Когда я работал в школе и вел кружок углубленной математики по программе Малого Мех-мата, то на него ходило 4 человека из всей параллели. Для интернет блога такое число будет слишком маленьким, даже для 10 читателей что-либо затевать смысла нет, это будет неинтересно.

Собственно, дайте знать, кому это интересно. И тогда можно будет оценить целесообразность.

Площадка, думаю, может быть, любая, ЖЖ или там вконтактик, сейчас не суть.

ttnl
()

Ubuntu. Очередные впечатления.

 , , заменил,

Однокурсница бывшая (уже давно закончили ВУЗ) попросила «почистить» ноут родителей, которым, как выяснилось надо только в инете сидеть за компом.

Запустил бук, а там... лицензионная Vista. У меня от этого поделия (даже язык не поворачивается назвать это ОС) нервный тик еще с того момента, когда я пытался вытерпеть его на своем старом ноуте, когда за 2 года оно потребовало от меня апгрейда памяти сначала до 4 Гигов, а потом еще больше. Но в ноут не влезало больше. Пришлось выбирать, на что переезжать. Именно тогда и началось мое знакомство с Линукс.

Так вот. О чем я? А вот о чем. Проблемы Свисты мне известны. Тормозит все и вся на ровном месте. Посмотрел я ноут, на нем и правда только две папки на рабочем столе с фотографиями. И я решился, друзья! Я решился провести эксперимент! До этого момента я никому из своих друзей еще не ставил Линукс. А тут ну просто не могу по-другому. Задачи-то позволяют!

В общем, скачивание образа свежей убунты 13.04 (может, зря эту, а может и нет - время покажет) - 17 минут. В это время на флешку копируется папки с фотографиями. dd if=ubuntu.iso of=/dev/disk/by-id/FLASH - 7 минут. Загрузка с флешки на ноуте - не засек время, порядка 1.5 минуты. Установка на винт с ручной разметкой разделов HDD на LVM - 15 минут. Перезагрузка - да, тут какой-то подвисон случился, но.. это же образ с флешки был - жесткий рестарт помог :) И... Вот она! Стоит и радует всех.

Что порадовало. Убунту славится шрифтами и современным интерфейсом - тут уж не отнимишь. Не всем удобно, но красиво, да. При установке преднамеренно была выбрана единственная раскладка клавиатуры - Eng, после установки добавлена Rus. Все из настроек. Иконка раскладки появилась сама (помню, раньше надо было что-то куда-то добавлять вручную). Firefox подвел, зараза. Скрашился. Каждый раз при закрытии. Поставил Google-Chrome, проверил, что youtube работает и показывает (да, при установке была поставлена галочка «Ставить кодеки»). Первые несколько минут работал индексатор системы, который нагружал процессор, но когда он отработал, то шум кулера заметно снизился.

Для особой помощи сразу водрузил TeamViewer.

Итак. Завтра (наверное) отдам ноут однокурснице и буду ждать реакцию ее и родителей. Надеюсь, приживется. Боюсь, что на этом ноуте Win 7 будет подтормаживать где-то как и Свиста. :( Если вдруг придется переходить на привычный интерфейс.

ЗЫ. Если интересно, расскажу про реакцию по получению фидбека. ЗЗЫ. И, да. Я сам сторонник OpenSUSE, сижу на тайлинге. Но интерфейс убунту меня вдохновляет (хотя бы первое время после установки, когда не приходится открывать кучу окон и лесть в эту панель слева :))

bvn13
()

Размер стека и thread'ы

Привет.
Какова политика распределения стека к thread'ам процесса?
Т.е. допустим есть стек 128к на процесс, процесс создаёт thread. Второй thread будет делить с первым эти же 128к? В какой части стека будут располагаться фреймы второго thread'a?
Спасибо.

UVV
()

MetaJS — первый Lisp, который угадывает мысли

 , , ,

Группа Open Source

На GitHub выложен исходный код нового языка программирования MetaJS. Синтаксис языка близок к Clojure, MetaJS также как ClojureScript компилируется в JavaScript, но без внешних зависимостей.

MetaJS разрабатывается в рамках проекта Coect.net, поставившего амбициозную задачу заменить электронную почту, XMPP (Jabber) и социальные сети открытым универсальным протоколом.

MetaJS полностью реализован на MetaJS и может перекомпилировать себя. MetaJS обладает рядом интересных возможностей, среди которых можно выделить специальный синтаксис для упрощения последовательных вызовов методов одного объекта (часто применяется, например, в jQuery). MetaJS поддерживет стандартный для Lisp-языков синтаксис определения макросов, короткие анонимные функции в стиле Clojure #(> %1 %2) и деструктуризацию параметров.

Но главная особенность MetaJS — способность в определенных случаях угадывать мысли программиста и генерировать недостающий код. Демонстрация и разоблачение.

>>> Подробности (coect.net)

dogada
()

Сторож 4-го уровня

 

Уютная коморка, расположенная на стройке в 10 минутах ходьбы от дома, где я работаю сторожем (имея лицензию 4-го разряда - таки охраником).

На пикче можно увидеть фирменный пакет RU-CENTER, в котором они прислали призы (5 журналов «Доменные имена» и футболку), которые выиграл в конкурсе (как-то так)...
В этом пакете таскаю ноутбук.

Ноутбук MSI CR61 0M (Celeron 1005M 1900 Mhz/15.6"/1366x768/2048Mb/320Gb/DVD-RW/Intel HD Graphics/Wi-Fi/DOS) купил за 9010 рублей.
Чтобы не расходовать ресурс жесткого диска, решил использовать LiveCD дистрибутив Slax, который загружается с флешки в память и работает оттуда, так что флешку можно даже вытащить; который так же умеет сохранять все изменения обратно на диск, но дистрибутив из коробки весьма и весьма удобен «для всех», - поэтому без необходимости. Slax дополняется собственными модулями, которые можно собрать тупо взяв пакеты из Slackware.

На «скриншоте» DUNE II в DOSBox, ЛОР и Konsole с mcabber. В интернетах сижу через Wi-Fi, который раздается подаренным Acer S200, в котором уже SIM-карта с безлимитными интернетами.
В лучших традициях параноика, не доверяя ОпСоСу, сижу через SSH тоннель. Чаты (irssi, mcabber) запущены на VPS, к которым просто аттачусь с любого устройства через SSH и всегда остаюсь на связи. Когда надо посерфить, то уже пробрасываю socks5 проксю ssh -D и безбоязно сижу с любой публичной точки доступа. VPN не нужен, ибо SSH есть из коробки практически везде.

Снято на камеру того же Acer S200.

Spoofing
()

Самый лучший язык для скриптов: Tcl?

 , , , ,

Кратко: Я немного сравнивал разные языки и выбрал Tcl, при дальнейшем изучении не разочаровался.

А какие языки вы используете для задач средней сложности — тех что не требуют эпохальных тяжеловесных программ, но и не решаются тривиально пайпом из трёх-пяти команд в баше? Средняя сложность — это что-то порядка от 3-5 до 3-5 тысяч строк кода (смотря какой язык). Такие где разбиение программы на отдельные модули, хранимые в разных файлах ещё не требуется.

Длинно. Почему я выбрал Tcl.

Долгое время я писал на bash. Это неплохой язык, к тому же он достаточно выразительный, чтоб делать что угодно без вызова внешних программ и в таком случае производительность получается вполне на уровне.

Но у bash есть проблемы. Основная из которых — многие выражения (в частности пайпы) выполняются в субшелле, а из субшелла почти невозможно передать информацию в материнский иначе через stdout. Ещё одной проблемой является постоянная сериализация-десериализация объектов. Это уже не настолько важно, но всё-таки хотелось бы от этого по возможности избавиться.

То же самое касается других стандартных языков UNIX: dc, bc, sed, m4, awk, ... На последнем, впрочем, наверное, можно писать и нормальные программы, но синтаксис у него не очень красивый и возможностей не так уж много. Это хорошие языки, очень хорошие в своей области, но имеют ограниченную область применения.

Я уже знаю C и несколько других императивных языков, но если нужно что-то быстро посчитать или сделать, эти языки малопригодны — в том же C даже сравнить строки просто так нельзя, нужна специальная функция, кроме того нужно вручную рулить памятью. Pascal крайне беден в экспрессивном плане, а begin / end — это уродливо, так что лучше уж C. Basic уже мёртвый, да к тому же ещё более убог чем паскаль. C++ крайне сложен для изучения, а профита по сравнению с C почти никакого.

Таким образом, стало ясно, что мне нужно изучить какой-то другой язык. Так как язык требуется для того, чтоб быстро решить какую-то задачу, а не писать оптимизированное решение на века, стало ясно, что нужен один из динамических языков общего назначения: Perl, Python, PHP, Ruby, Tcl, Lua или какой-то другой.

Я выбрал Tcl.

1. PHP не подходит сразу, на нём только веб-странички хорошо писать, а всё остальное лучше в Perl (да и про страницы можно поспорить, если нужно чёткое разделение контента, стилей и логики).

1. На Perl, Python и Ruby множество сложных синтаксических конструкций, которые без поллитра не разберёшь, например (python):

_='_=%r;print _%%_';print _%_

2. Lua: простой язык, код на нём быстрый, изучить тоже можно довольно быстро. Но однако на каждый чих нужна либа. Даже работы с юникодом изкоробки нет (в смысле строку можно прочитать и вывести, но нельзя посчитать кол-во символ или заменить подстроку и тд).

3. Tcl: крайне простой синтаксис: 12 правил и man-ы по всем используемым командам достаточно для для понимания любого кода. При этом богатая стандартная библиотека, хорошая интеграция с Tk и кроссплатформенность.

То есть на Tcl можно решить любую задачу почти так же просто как на баше (да в крайнем случае даже пайпы есть), но при этом синтаксис гораздо более предсказуем.

Плюс на Tcl можно писать графические приложения так же легко как и консольные, например вот такой код в 10 строк — это уже целая работающая игра! Правда автор явно экономил строки, и читаемость кода из-за этого несколько страдает. Кроме того, Tcl поддерживает (особенно с 8.6) функциональное программирование и длинные числа изкоробки. Так что переход с bc, который только их и использует будет проще. Ещё мне очень нравится, что ключевых слов в этом языке нет. Вообще. Те же for / if и другие — это просто такие команды, которые берут условие и фрагмент и его исполняют. Можно запросто объявить процедуру for, которая будет использовать другой синтаксис итератора и далее использовать её, если так удобней. Язык динамически типизированный, как и другие скриптовые, но проблем из за этого не возникает. Если переменная используется внутри expr, то она интерпретируется как число. Если в команде string ... на месте строки — строка и тд. Никаких сомнительных x=«10»+10 Работа с переменными похожа на такую в bash, что тоже плюс: при присваивании переменной знак $ не ставится, а при извлечении из неё значения ставится:

set i 10 # i:=10
puts $i ;# будет выведено 10
incr i ;# i теперь 11
puts [expr [set i]+3] ;# set можно использовать вместо $i или ${i}\
так как при отсутствии третьего аргумента он просто возвращает значение.\
Ещё это один из немногих способов двойной подстановки.

4. Что-то другое. А что собственно? Пока только идёт в голову что-то лиспоподобное (например: clisp (scheme (или racket guile))), APL-подобное: J, K (есть свободная Kona), APL и тд или конкатенативное (dc-подобное): forth, factor...

Из 2, 3, 4 выбрал всё-таки Tcl, потому что синтаксис у него хоть и не стандартный для императивных языков, но похож на привычный шелловский и он есть в GNU/Linux изкоробки или в репозитории, так что не придётся заморачиваться ручной сборкой.

Уже начал изучать, почти всё нравится, кроме необходимости писать всё время expr и set, всё-таки такие частые операции можно было бы и сделать частью синтаксиса, хоть и немного в ущерб единообразию.

Быстродействие вначале разочаровала, но потом я почитал про некоторые советы и мои программы стали работать быстрее чем у знакомого, изучающего питон уже больше года.

Учить его действительно легко, так как базовый синтаксис простой, а команды можно изучать по мере надобности, к тому же man к командам Tcl снабжен сносками на команды с похожим назначением, так что поняв, что команда — это не то, что надо, можно посмотреть все остальные и найти наиболее подходящую.

Таким образом, язык сочетает достоинства лиспа — гибкость, функциональщину и простоту базового синтаксиса и достоинства других скриптовых языков — более привычную инфиксную нотацию для арифметики и читаемый код.

Xenius
()

Бьёрн Страуструп выбирает борщ: «С++ почти так же быстр как Haskell»

 , , , ,

В дополнение к предыдущему посту о сферах применимости С++ и шедевральному посту об ооп (в данный момент продолжающегося обсуждением топологии Скотта).

(credits: гугля материалы о лиспе, случайно наткнулся на вот такой пост в ЖЖ, откуда я невозбранно изъял множество текста для написания этого сообщения.)

Итак, виновник торжества, этот пдф: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3449.pdf

Автор С++, преподобный Страуструп, и команда отчаянных друзей-борщевиков пишут новую библиотеку для диспетчеризации по типам с помощью внешней интроспекции. Это либа, написанная на шаблонах С++x11, и называется Mach7 (почти как вот эти няшные автомобильчики)

Вот, собственно, что так хочет видеть в крестах сам преподобный Бьорн:

int eval (const Expr& e)
{
    Match(e)
    Case(const Value& x) return x.value;
    Case(const Plus& x) return eval (x.e1)+eval(x.e2);
    Case(const Minus& x) return eval(x.e1)−eval(x.e2);
    Case(const Times& x) return eval(x.e1)∗eval(x.e2);
    Case(const Divide& x) return eval(x.e1)/eval (x.e2);
    EndMatch
}

В объектно-ориентированном языке без прямой поддержки алгебраических типов данных, тип, представляющий дерево выражения какого-то языка, обычно будет написан как абстрактный класс, с производными классами, реализующими более конкретные варианты.

struct Expr { virtual int eval () = 0; };
struct Value : Expr { ⋯ int eval (); int value ; };
struct Plus : Expr { ⋯ Expr& e1; Expr& e2; };

но более открытый (читай: расширяемый) дизайн заключается в другом:

По-настоящему открытые подходы опираются на дорогой тест на принадлежность к классу, комбинирующийся с деревьями решений.

Ну, то есть, хотим-то мы, наверное, как раз открытый подход, который подсмотрели из функционального программирования с его сопоставлением с образцом, но он слишком дорог с точки зрения CPU, если делать в лоб. Поэтому сделали Mach7, вот эту самую библиотеку на шаблонах, которая реализует открытый подход, но при этом не страдает по производительности, как если бы использовался тест на принадлежность к классу.

Насколько быстро теперь работает? Говорят, примерно как OCaml или Haskell:

Библиотека реализована как стандартный C++11 код с шаблонным мета-программированием и несколькими макросами. Оно работает примерно также быстро, как эквиваленты на OCaml или Haskell, и даже иногда приближается по быстродействию или даже становится быстрее написанного руками C++ кода, который использует Visitor дизайн-паттерн.

Ну это хорошо, что так быстро, как OCaml или Haskell. Вопрос, зачем при таком раскладе использовать C++, замнём для ясности.

Но дальше вообще прелесть идёт: критика паттерна Visitor!

Библиотека Mach7 и идеи в ней были мотивирована нашим неудовлетворительным опытом работы с различными C++-ными фронт-эндами и фреймворками для анализа программ. Проблема была не с самими фреймворками, но с фактом, что мы должны были использовать шаблон проектирования Visitor для того, чтобы смотреть, обходить и обогощать абстрактные синтаксические деревья целевых языков. Мы нашли Visitor-шаблоны неподходящими для прямого выражения логики приложения, удивительно сложными для обучения студентов, и часто более медленными, чем решения для обхода, написанные вручную. Вместо них, пользователи опирались на динамические приведения типов во многих местах, часто многоуровневые, таким образом предпочитая более короткий, более ясный, и более прямой код, нежели чем Visitor'ы. Соответствующий проигрыш в производительности был обычно незамечаем до более поздних стадий кодирования, когда уже было поздно что-то менять.

Ну можно поздравить C++, теперь можно на нём отдельные вещи писать почти так же коротко, ясно и почти так же быстро, как на OCaml.

В пдф по ссылке присутствуют графики сравнения перфоманса Хацкеля и Крестов, начертанные самим преподобным Бьорном, очень рекомендованные к просмотру для тех, кто еще не готов отречься от старых убеждений и перейти на новые.

Заметим, что не только Страуструп раскаялся в прошлом. Кармак с энтузиазмом рассказывает, как с головой погрузился в Haskell и Scheme, объясняет, почему хаскель невероятно крут и почему сегодня он бы, вероятно, сделал QuakeScheme вместо QuakeC. Он пишет на хаскеле порт wolf3D. (видео на ютубе — Quakecon 2013, обсуждение в толксах)

Пора задуматься о жизни, господа и дамы крестопоклонники.

stevejobs
()

VkCrypt: AES-шифрование переписки в социальной сети ВКонтакте

 , , ,

Разработан способ шифровать онлайн-переписку и сделать недоступной её содержание не только для провайдеров, но и для администрации популярной в России социальной сети ВКонтакте. Шифрование производится на стороне браузера, посредством алгоритма AES. Пока плагин доступен только для Mozilla Firefox. VkCrypt не имеет никакого отношения к компании ВКонтакте, исходный код плагина полностью открыт.

Готовится к выпуску подобный плагин для браузера Google Chrome. Если вы желаете помочь, поучаствовать в разработке, исследовать принцип работы программы, то доступ к исходному коду можно получить на SourceForge. Там же можно оставить пожелания и предложения по улучшению функционала.

Официальная страница проекта: http://smm-pro.ru/vkcrypt/

Здесь вы можете установить плагин для бразуера Firefox: https://addons.mozilla.org/ru/firefox/addon/vkcrypt/

Подробности

Перемещено tazhate из security

federk
()

Идея стартапа.

Ну стартапа - вряд-ли, незнаю где тут бабло зарабатывать (хотя живительная реклама творит чудеса).

Суть: «коммернируй всё» - сторонний сервис комментариев, позволяющий написать коммент к любой странице в интернет. Хранит комменты на своих серверах, выполняет сопоставление с уграми с помощью браузерного плагина.

Плагин для браузера: смотрит твой текущий урл, отправляет его на сервер, сервер возвращает ответ - сколько комментариев для этого урла есть. Ты кликаешь, переходишь на НАШ сайт, пишешь коммент. Таким образом, откомментировать можно что угодно, независимо от степени забаненности или зарегистрированности. Сторонний сервис комментариев. Ключевой момент: плагин в браузере, делающим доступ особо моментальным и почти что встроенным в любой сайт.

На сайтах бывает мусор в URL, типа «sid=c6adfca6d7ad6c79bb». Для таких сайтов на сервере нашего сервиса эти вещи отбрасываются и сравнение двух ссылок с различающимся мусором даёт TRUE.

Пример использования:

Заходишь в блог, а там надо регистрироваться или комментарии отключены, а человек НЕ ПРАВ. Щёлкаешь на «комментируй всё» и пишешь коммент. В результате все сайты с модераторированием определённого мнения огребают комментов, до которых их модераторы не могут добраться и народ узнаёт ПРАВДУ и наступает справедливость, все дела. Злодей отмщон.

Такая вот тема.

kiverattes
()

Я у мамы хакир

 

Захотелось странного. Решил стать хакиром.

pikwik
()

Программист из Нью-Йорка научит бездомного кодить

 

!Ъ (siliconrus.com)


Житель Нью-Йорка, 23-летний
инженер-программист Патрик
МакКонло решил провести эксперимент и научить бездомного кодить, дабы тот смог зарабатывать
себе на жизнь:

Каждый день, направляясь на
работу, я вижу бездомных.
Кто-то сошел с ума, кто-то
пьян в стельку, кто-то
зарабатывает на жизнь
попрошайничеством. Каждый день я прохожу мимо бомжа.
Он молод. Возможно, ему 28.
Я буду называть его «Хакер-
подмастерье» до тех пор,
пока не узнаю его реальное
имя.

Он намеревается сделать первый шаг
и предложить своему
«подмастерью» выбор: сто долларов
просто так или несколько книг по
обучению JavaScript и дешевый
ноутбук + бесплатные уроки.


Как вам идея ?

smilessss
()

Один Vim с разными цветсхемами для разных задач в различных терминалах. (+ awesome)

 , , , ,

Раз уж пацаны гонят оголтелый треш в последнее время в галерее, то тут такое дело:

Не сколько скриншот рабочего стола, хоть не без этого, сколько скриншот демонстрирующий удобную настройку редактора с одним конфигом - для разных задач, с разными цветсхемами для различных терминалов. Всё работает без изменения конфига (~/.vimrc).

Этот пост-скриншот для тех, в большей степени новичков, кто не в курсе дела такой возможности настройки.

Я вообще постоянно использую 4 терминала + tmux в некоторых из них, это: urxvt, практически идеальный Terminal-0.4.8 (сейчас называется xfce4-terminal-0.6.x - но оно неюзабельное и с багами), гибко настраиваемый ROXterm и относительно новый и малоизвестный пользователям-рабам тяжелых DE - крутой и моднейший клавиатуро-ориентированный(sic!) терминал termite (вимерам юзать однозначно!).

Каждый терминал для определенной (не жестко) задачи или настроения: для руби, md/haml/coffee, для Си или Эрланга. Для манов через vimpager. Для системных конфигов. Разные цветсхемы, различные шрифты - со сглаживанием или без. С различными схемами не только вима, но и статусбара/интерфейса вима, причем в одном случае это vim-powerline, в других vim-airline в свою очередь также с разными цветами. Кайфотне.

Суть в том, что каждый раз (если использовать один терминал) включать/выключать схему терминала, вима, менять шрифт и сглаживание - жутко неудобно же. Поэтому, можно настроить Vim вот так:

if $COLORTERM == 'Terminal'
    желаемые настройки
endif

Также можно можно настроить вим менять схему и интерфейс в зависимости от дня недели и времени суток, например днём светлую, ночью тёмную:

let weekday=system('date +%u')
let hour=system('date +%H')
if hour == x
  бла бла
endif

Не каждый терминал возвращает $COLORTERM, например Terminal и urxvt - да, а все остальные из списка нет. Поэтому я запускаю их как скрипты на хоткее следующего содержания, например termite.sh:

#!/bin/bash
export COLORTERM="termite" && /usr/bin/termite --geometry=1248x620+60+40
возможно можно как-то более по умному, но и так работает, всё ок.

Ну и детали:

Gentoo GNU/Linux 3.10.5-geek
Awesome-3.4.15
тема осома: Penumbra

На скриншоте Vim 7.4 (не gvim), некоторые цветсхемы работают благодаря плугину CSApprox.

Только полный кастом или никак, пацаны!

Такие дела.

science
()

Шахматы, или «Как правильно почесать руки»

 , ,

Группа Игры

Как известно, мало не много, а иного много не бывает. Представляем вам самую сложную настольную игру умной части человечества — шахматы.

Шахматы написаны на чистом sed без использования расширений GNU. По текущему уровню реализованой логики игра ведётся по правилам XIV века. Отсутствуют рокировки и взятия на проходе, уход от шаха примитивный.

Как заявил автор, писал игру:

примерно две недели, правда с гигантскими перерывами), я пару раз порывался бросить это занятие.

Новость написана по итогам прочтениясовсем другого сайта.

>>> Узреть степень своего ничтожества (github.com)

leonidko
()

Доступное железо для параноиков это фантастика?

 , ,

В наше время сложной техники, почти тотальной огороженности и закрытости железа параноикам живется не сладко.
И вот меня посетили мысли насколько реально получить не просто полностью открытую аппаратную платформу, но и с гарантией что туда ничего не впихнули?
Ведь мало создать платформу, нужно ведь ее еще и собрать. А как потом убедиться что в заказанных тобой деталях ничего лишнего не запихнули?
Вот к примеру как убедиться что в том-же процессоре Broadcom BCM2835 используемом в Raspberry Pi нет каких-нибудь закладок.
Или взять к примеру монитор, откуда мне знать что в один прекрасный момент он не будет передавать изображение по радиоканалу по сигналу извне? А ведь передатчики миниатюрные, что иной раз даже удивляешься тому что они такие маленькие.
В общем печальная какая-то ситуация. Уже начинают посещать мысли про сборку собственного ноутбука из деталей которые хоть и не такие производительные и дешевые, но зато максимально прозрачные. Есть ли успешные попытки такое сделать?
Отсутствие полного контроля над железом прям вгоняет в тоску.

V1KT0P
()

Дискретная математика

 

Здравствуй, ЛОР!

Последнее время стал задумываться, что порой не хватает фундаментального образования, и решил что-нибудь почитать по сабжу. Подскажите, так ли полезна дискретка айтишнику и, если да, посоветуйте, что конкретно почитать.

Да, по специальности я инженер-физик..

generator
()

AJAX-фреймвор а ля goosh.org — есть такое?

 , goosh, ,

Интересно, не пробовал ли кто-то написать web-фреймворк для работы через командную строку а ля http://goosh.org ?

А то сорцы последнего больно уж прибиты гвоздями к поиску и не представляют собой полностью рабочую систему (только голый JS).

А велосипедить самому — влом. Особенно, учитывая объём работы.

Может, кто-то делал?

KRoN73
()