LINUX.ORG.RU

Сообщения tia

 

[не НГ] D в анабиозе

Форум — Development

Как знают некоторые, я планировал написать свой едитор с использованием gtksourceview. У меня был выбор между языками: D, Vala, Python.
Я могу поспорить что D всех нагнёт по своему функционалу и возможностям. Да что там, вы посмотрите на семантику и синтаксис! И это _системный_ язык.
Однако, есть небольшая разница между «стандартом» и «реализацией».
Есть 3, как я знаю, реализации компилятора(хотя один из них по сути интерпритатор):
1) gdmd(gdc) - GNU D Compiler. http://dgcc.sourceforge.net/ Началось всё в 2006ом, заглохло не на много позже - через год, в 2007ом. Больше ничего не выходит, юзает D1.0.
2) dmd - не может юзать x86_64, деградация синтаксиса в последних версиях(что 1.0, что в 2.0), баги, закрытый код etc etc. В общем, хороший вариант, да вот очень сомнительный.
3) ldc - всё более или менее. Единственная надежда. Однако... слабая поддержка D2.0, баги. Стабильности никакой. gtkD при всём желании не компилится, при этом выдавая нормальную ошибку в нормальной строчке, но их не реально логически «состыковать» чтобы решить проблему.
Остальное:
1) dsss - тулза вроде make, но проще, удобнее, красивее. Не развивается уже сколько лет.
2) gtkD - не двигается. Вообще. Новых биндингов для виджетов нет, новых фич нет etc.

Страшно.
Теперь вопросы к вам, дорогие ЛОРовцы:
1) Вам нравится D?
2) Что вам не нравится в D?
3) Вы помогаете D?
4) Почему не помогаете?
5) У вас есть возможность помочь?
6) Почему не помогаете?

Пока, я трактую состояние компиляторов D как «не стабильное, с большими проблемами, без возможности писать что-то и получать разумный ответ». Сам я не системный программист. Скорее прикладник. По сему я просто не могу, не хочу, не обладаю возможностью допиливать компиляторы D. Будет хороший компилятор с поддержкой всех топовых платформ - я могу писать биндинг. Это максимум.
Собственно, цель треда - выявить проблемы D и заставить всех ленивых системнокодеров помочь такому языку.

tia
()

«I want to ride my bicycle» или продолжение истории с geany

Форум — Development

Как некоторые знают, я писал плагин для geany для получения возможности написания плагинов с помощью пайтона.
Застрял я на том что небыло достойных биндингов scintill'ы к пайтону.
Посему я начал активно продвигать gtksourceview. Написал в рассылку, поговорил с людьми из чатика(IRC).
Пока я сделал один вывод - всем лень, ни у кого нет времени, никто не хочет менять то что и так как-то работает.
Не знал что делать. Думал: «мб написать так нужный мне плагин/патч для мульти-сниппетов?». Ан нет. Посмотрел я сырцы. Ужаснулся. Нет, мысль есть, код не так ужасен, есть даже в некоторых местах комменты. Но частенько замечаю велосипеды и костыли.
Словом, не хочу я писать что-то внутри джини. Думаю, это одна из причин игнорирования предложения о переходе на gtksourceview.
Ну да ладно.
Что нам стоит дом построить^Wредактор уровня джини сколотить?
Я относительно недавно вооружился политикой: «старое пусть останется старым, а мы должны юзать новое, но не хуже чем старое».
Посему ясно было три факта:
1) Используется GTK для ГУИ
2) Используется GTKSourceView бранча с новым hl-движком и фолдингом
3) Берутся многие принципы geany: простота, лёгкость, скорость, надёжность, возможность юзать плагины.
Всё супер. Остался вопрос, который впервые я решил поставить без ограничений: Какой язык программирования выбрать?
Условия:
1) Язык должен быть компилируемым(хоть в байт-код, llvm-код)
2) Современность. Код должен быть относительно современным, без байтоводства, ручной сборки мусора и всякой старой фигни что нужно было оставить ещё в 90ых.
3) У языка должно быть будущее. Нет смысла писать на каком-то языке, который умрёт через год максимум.
4) Скорость. Редактор должен быть легковесным.
Мой выбор остаётся пока между:
1) Python. Язык лёгкий. Я гарантирую что закончу разработку на нём. Если начну. Проблема - скорость и легковесность. Для некоторых недостаточно того что предлагает пайтон. Есть решение - Unladen Swallow(LLVM), но когда ещё оно будет тем на чём можно всё писать... Более минусов нет. Одни плюсы.
2) D-lang. Язык не очень старый, пришёл на замену Си и плюсов. Всё просто супер. Почти доработан. Александреску дал хороший пинок вперёд. Давно интересовался данным языком. Синтаксис похож на джаву(или сисярп). Скорость - компиляция идёт в байт-код для LLVM. Одна проблема - отсутствие аудитории и, как следствие, биндингов к гтк и его приложениям(как gtksourceview). Возможно, придётся самому допиливать gtkD и писать биндинг к gtksourceview. Ужас, да и только. Напишу ли я на нём - хз.

Теперь, немного о том зачем я придумал делать новый велосипед, зачем он и чем отличается от остальных:
1) Лёгкость интерфейса. Гибрид Geany и Scribes.
2) Оптимизированное управление с клавиатуры. Scribes + Vim + emacs + TextMate. Совместим все удобства. Выбирем то что нужно, что привычнее, удобнее.
3) Полноценные сниппеты, хороший автокомплит, просмотр символов, нормальный менеджер проектов.
4) Хороший API для плагинов(ну или хоть чуть лучше чем в джини).
Эм. Ну вроде всё. Лень вспоминать что ещё меня до жути не устраивало в джини. Суть думаю ясна.
Давайте, критикуйте. Кидайте какашки, предлагайте помощь, давайте советы и пишите своё мнение. И да, высказывайте мнение на счёт выбора языка.

tia
()

(Scintilla => pygtkscintilla || pyqscintilla) || gtksourceview()

Форум — Development

Как некоторые уже знают, я пишу плагин для geany, суть которого заключается в возможности писать плагины на пайтоне. Своеобразное ядро-мост.
GTK-виджеты уже нашёл как перекидывать.
Остался вопрос на счёт scintilla, ибо её использует geany как виджет-редактор.
Всё, конечно, супер. Однако на пайтоне есть только 2 достойных биндинга: pygtkscintilla(RIP in 2004), pyqscintilla(RIP in PyQT). Кто-нить что-нить юзал? Какие советы?
Мне тут говорят что сцинтилла тоже RIP'нулась ибо давно не выходило новых версий, да и фиг его знает будут ли.
Советуют юзать GTKSourceView(для которого есть даже родной биндинг к пайтону). Однако джини то юзает сцинтиллу..
Конечно, есть идея взять свежие сырцы джини и перевести его на gtksourceview, но сколько оно времени займёт и получу ли я профит от этого - хз.
Может даже легче самому начать писать свой редактор, но понимаю что некоторые вещи мне одному сложновато будет писать.
В общем, что посоветуете?

tia
()

Ubuntu 9.10, Xmonad, geany, mplayer. Работаем ночью.

Галерея — Скриншоты

Скрин без окон - http://rghost.net/727372

WM - Xmonad
Панель - Xmobar
IDE - Geany
Внизу: mplayer(открыт фильм «Видок»), sakura

Тема GTK - Black-Diamond
Иконки - Simple
Шрифты - Droid, Monaco(в Geany)
Схемы Geany - http://code.google.com/p/geany-dark-scheme/
Конфиги xmobar и xmonad - http://rghost.net/727361 (немного быдлокода, сами мы не хаскелекодеры)
Обоина - http://rghost.net/727371

Давно хотел перейти на тёмную тему, ибо бОльшую часть времени работаю вечером и ночью. Вот, наконец-то, совершил переход.
Шрифты особо не вылизывал, взял старый .fonts.conf с какого-то блога.
Такие дела.

 , , , , ,

tia
()

Удобный легковесный редактор

Форум — Development

Знакомый рассказал про TextMate. Начал поиск похожего под никсы. Наткнулся в гугле на пару тредов.
Нашёл офигенный, не иначе, редактор - http://scribes.sourceforge.net
Понравились сниппеты, компактность, питоноплагины, удалённое редактирование etc:
http://scribes.sourceforge.net/features.html
(Олсо, у него один минус - нет табов)

Говорят что TM имеет эти и не только фичи, но хочется заюзать такое у себя. Однако... NNNOOO! Оно просит гном. Полностью. На ланчпаде Scribes даже называют «редактор для гнома». В общем, я расстроен.
Сам юзаю Geany. Ясно что удалённое редактирование он не умеет. Сниппеты.. пришлось самому гуглить чужие из разных редакторов и делать похожие у себя.

В общем, я в поисках. Хотя думаю что на geany останусь.
Что мб посоветуете?
Сразу оговорюсь что к ви и его детям я отношусь как.. как к пережитку прошлого. А имакс я не люблю из-за лиспа. Посему прошу не флудить.

tia
()

ORM на базе Key-Value Storage

Форум — Web-development

Занимаюсь сейчас больщим проектом(считайте что форум). Есть необходимость в практически реалтайм-общении. Особо пока оптимизацией не занимался, пока работаю на sqlite(via SQLAlchemy) как БД. Pylons как web-framework.
Недавно делал тред на тему кеширования и оптимизации запросов. Из него сделал выводы что очень полезно юзать KVS для сокращения запросов к основной БД.
Однако я подумал, если все так хвалят KVS, может есть смысл сделать небольшой ORM на базе KVS?
Правда особо не гуглил на существование таковых, но что вы можете рассказать о таких решениях? Есть смысл?

Как пример основы хотелось бы привести именно Tokyo Cabinet с сервером Tyrant. Забавно то, что сам Tyrant создан как БД, хранящаяся на hdd, однако поддерживается репликация, балансировка и остальные фичи масштабирования.
Собственно, что вы думаете?

tia
()

Удобный легковесный плеер

Форум — Desktop

Уже долгое время использую MPD с NCMPCPP, но понимаю что оно не нужно как демон, да и вообще не удобно рефрешать всю бд каждый раз при обновлении музыки. Да и открыть определённый файл нет возможности, если его нет в директории с музыкой.
В общем, устал и хочу лучшего.
Не обязательно чтобы был nc-интерфейс или вообще консольный, но главное чтобы он был
1) легковесным
2) удобным
3) компактным(или имел такой режим). Небыл бы как, скажем, ритмбокс или подобные(баньши etc).
4) имел возможность скробблинга в last.fm
И, конечно, хочется чтобы можно было исопльзовать плагины и через консоль получать информацию о текущем треке.

Оставляю тред на ночь, утром-днём проверю, ожидаю массу советов >:3

tia
()

Посоветуйте VDS подешевле

Форум — Web-development

На время разработки одного проекта нужен VDS для демонстрации того что готово etc.
Требования небольшие:
1)Стабильность
2)4гб места на харде минимум
3)Отсутствие ограничения на трафик(ну или минимум 20гб в месяц)
4)ОС Linux(Debian/Gentoo/Ubuntu)
5)Стабильность
6)Стабильность

На машине будет nginx/lighttp с приложением на pylons.
Думаю брать на месяц-два максимум. Посему всякие акции вроде арендуй на год и получи ещё год бесплатно для данной задачи не актуальны.
Что посоветуете?

tia
()

[Баг чего?][Баг ли?]Чёрные полосы и прямоугольники в хроме.

Форум — Desktop

Месяца 4 назад я хотел перейти на убунту 9.04. Перешёл, всё поставил. Вроде было всё ок. Но... Почти сразу в глаза бросились проблемы с браузерами, заключающиеся в появлении чёрных полос и прямоугольников на страницах при прокрутке. Самое забавное что я пытался ставить другие дистры на базе убунты(чисто так, посмотреть мб где-то оно нормально), но везде было одно и то же.
Самое любопытное что на федоре и генте всё ок.

Ну и «забил» я на убунту 9.04 ожидая выхода «десятки» как надежды на то, что там пофиксят.

Почти месяц назад перешёл на 9.10. Всё было на удивление хорошо. Такой проблемы не наблюдалось. Ох уж и радости то было.
Но счастье длилось не долго.
Как то раз я случайно попался на свою же ловушку посетив ресурс http://so.on.nimp.org (если вам лень ребутать браузер - не заходите). Ну ничего, кильнул хромиум и ок. Однако.. после повторного запуска хрома(хотя перезапускать хром приходилось несколько раз ибо он у меня сохраняет вкладки, а закрыть я их не успевал) появились старые, знакомые с 9.04, проблемы. Уже почти неделю они не пропадают. Появляются значительно реже чем было на 9.04, но мешают изрядно. Проявляются в основном после быстрой прокрутки(если быстро прокрутить колесо прокрутки у мыши).
Вот такое чудо я частенько вижу:
http://rghost.net/683577/private/b3e0448384bb7ac458a8538adf67566c/image.png
http://rghost.net/683588/private/6761954b84bb3673dfd6033e6315f368/image.png
http://rghost.net/683593/private/4cfa1bea30f82783e1431a3a0ad52a53/image.png

Кто-нить сталкивался? Я знаю что сталкивались ибо ещё на 9.04 таких людей было много на форумах, но я как-то не пошёл по пути члена коммьюнити и просто забыл про эти проблемы.

Главный вопрос: как лечить?

tia
()

Оптимизация запросов к БД. Чисто вопрос проектирования и «всего такого»

Форум — Web-development

Пишу небольшой аналог АИБ(Анонимной Имидж Борды). Чисто для опыта, не более.
На сколько все знают, в режиме просмотра раздела видны по 3 сообщения для каждого треда:
1) оп-пост
2,3) последние посты
Проблема проста как 2 пальца:
Если не использовать пререндер страниц(как сделано в вакабе и других АИБ), то получается что при маппинге с Foreign Key Message -> Thread нужно на один рендер использовать 1+N запросов, а то и 1+N*2(N - количество тредов на странице).
1) запрос информации по тредам
N) запросы на сообщения для каждого треда
/
N1) запросы на оп-посты
N2) запросы на последние сообщения треда

Вот сижу и думаю как делают это человеки. Кешинг понятно, но на таком уровне нужно ведь делать оптимизацию? Или кешинга хватит?
Через ab прошёлся и увидел что разница количества запросов(скорости) аж в 2!!! раза.

Какая мысль:
Завести в таблице тредов ещё 3 набора полей для оп-поста и для последних 2х сообщений, но мне кажется это быдло-метод.

Что посоветуете?

tia
()

Форматирование кода. Tab || whitespace?

Форум — Development

По мотивам http://sotakone.habrahabr.ru/blog/77155

* Никаких табов в исходниках, одни только пробелы.
* Никаких лишних пробелов в конце строки. Никогда. Ни при каких обстоятельствах.

Если второе это обычное правило хорошего тона, то второе есть хороший вопрос и давний холивор.
С некоторых пор я привык всегда во всех редакторах включаю подсветку пробелов и табов.
Последнее время, программирую на C и Python. Если на С и в некоторых самописных скриптах часто встречаются табы, то в больших проектах везде стоят пробелы.
Вопрос: Почему пробелы лучше табов? Чем?
В старом cpp@c.j.r было обсуждение Tabs vs WSs и пришли к выводу что у табов есть такие плюсы:
1) Размер таба можно менять в редакторе, что позволяет корректировать отображение кода(а точнее отступы) под себя/свой монитор.
2) 1 таб легче ввести нажав один раз нужную кнопку.
3) 1 таб легче удалить нажав один раз Backspace.

А у WS..

В общем, хотелось бы услышать мнение ЛОР'овцев.

tia
()

Производительность системы. Нормально или нет?

Форум — Linux-hardware

Не знал в какой раздел лучше запостить, но думаю что проблема в железе, посему пусть будет здесь.
В общем, имею такую машинку:
Foxconn 945 7AD Series2
Intel Pentium 4 2.8ghz
NVidia GeForce 7300 GT
RAM - 2gb

Вывод glxinfo:
http://paste.org.ru/?903lts
dmidecode & lspci(в конце):
http://paste.org.ru/?qduu15

Дистрибутив - Ubuntu 9.10

glxgears показывает ~4300 frames per 5 sec
DE - нет
WM - xmonad+xmobar
Рабочее окружение в момент проверки: chromium(1 tab - LOR), 2*sakura, pidgin(с одним аккаунтом(jabber) и 2мя окнами(roster, conference)), mpd(stopped playing), всякая фигня бубунты(мелочь).

Вроде машинка не самая плохая, но производительность пугает. Она ужасна.
При текущем раочем окружении я пробовал запустить FretsOnFire. В главном меню небольшие лаги. Выбираю песню - лаги страшнее. Фреймов 15 в секунду. Запускаю песню - слабые лаги. Как начинают появляться точки - страшные лаги и заикания песни. Фреймов 3-7 в секунду.
В игры через вайн играть просто нереально. Морровинд выдавал 15-25фпс.
Фильмы(ну дешёвые рипы по 1,2гб) смотреть сложновато. Запустил фильм, хромиум, пиджин, джини = кино лагает.

Просто уже надоело. Дело в том что раньше у меня стоял Pentium D 3ghz и с ним производительность была ещё хуже. Даже на генте. Заменил на P42.8ghz - стало лучше(пришлось переставить генту на 32-бита), но всё-равно ужасно. Пересел на убунту - производительность почти не упала(хотя ожидал что будет всё ещё хуже). В общем, уже не знаю что делать.

Слушаю все советы, рекомендации и указания. Что нужно ещё сдампить - сделаю.

tia
()

Нативные игры

Форум — Games

Вот захотелось отдохнуть и поиграть во что-нить.
В Dungeon Crawl Stone Soup надоело, Dwarf Fortress добивать(ну не привык я ещё к управлению) вообще не охота, Neverwinter Nights и дополнения прошёл раза 3. Doom3 и Q4 тормозят да и не хочется играть в «ужастики». Игры под вайном тормозят. А погеймфажить хочется.

Помогите! Посоветуйте, во что бы нативное поиграть.

P.S.: неделю назад играл и прошёл Rune, интересно было. Т.ч. можете даже такое советовать, в смысле старости.

tia
()

Посоветуйте tiling wm и расскажите +/-

Форум — Desktop

Долго сидел на OpenBox. Понимаю что я всегда работаю в двух «режимах»:
1) Открыт фильм или что-то ещё, браузер и конференция/чат. Т.е. всегда открыты 3 окна. Часто приходится извращаться с окнами чтобы видеть одновременно все 3.
2) Фуллскрин с geany. В свёрнутом режиме chromium.
В связи с этим решил перейти на тайловую wm.
Попробовал Awesome, но уж больно много у него проблем с «стыковкой».
Много зазоров, которые дико мешают и создают массу проблем.
Советуют ion3, xmonad.
Что можете сказать? Чем похватить? Можете прокомментировать проблемы с awesome?

tia
()

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