LINUX.ORG.RU

Сообщения jenyadoe

 

Поиска мотивации тред

Странная штука. Для того, чтобы контрибутить в чужие проекты, даже самые бесполезные, мотивация не требуется. Просто берёшь и делаешь.

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

Чем-то напоминает ситуацию в университетское время, когда на свои ДЗ забивал, а чужие делал. Да ещё и качественно делал, на совесть. Таки это что?
Может ли полугодовая изоляция от общества быть причиной?

jenyadoe
()

На чём сварганить прототип?

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

Что бы такое взять в качестве инструментов? Много лет писал на PHP, но после нормальных языков, откровенно, хочется блевать от него. JS из той же оперы, плохо входит.

Говорят, Рельсы хороши для быстрого прототипирования? Нужно ли специально уделять время их изучению или можно в процессе проникнуться? А в случае с Django? Ни ruby, ни python толком не использовал, хотя и пробовал.

Из баз выбор такой: MySQL, Postgres, MongoDB. Пока все не начали рекомендовать Postgres, отмечу, что опыта с ним тоже нет никакого.

 , , , ,

jenyadoe
()

Куда свинчивают OpenSource разработчики?

Заметил такой факт. OpenSource проект некого частного лица. Активно развивается, много подписавшихся, автор отвечает на issues менее, чем в течении часа. Но процесс разработки представляет собой театр одного актёра.

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

И я бы таки подумал, что всё это совпадения, но третий проект подряд! Что за феномен?

 , , , ,

jenyadoe
()

Golang: одна структура для xml и json

Нужно генерировать/парсить:
JSON

{"data": "Hello", "data_type": "plaintext"}
XML
<xxx xmlns="http://example.org/ns"><data type="plaintext">Hello</data></xxx>
В общем, чего тут сложного? Однако, нужно бы всё это сделать с помощью одной основной структуры для JSON и XML.

И тут начинаются сложности. Например, в старой версии Go (точно не скажу, в какой) всё это можно было реализовать так:

type Xxx struct {
    XMLName xml.Name `xml:"http://example.org/ns xxx" json:"-"`
    Data    Data     `xml:"data"` // Было: json:"..." не прописан, содержимое Data будет вставлено линейно
}

type Data struct {
    Value string `xml:",chardata" json:"data"`
    Type  string `xml:"type,attr" data_type:"data"`
}
Однако, сейчас этот код сгенерирует следующий JSON
{"Data":{"data": "Hello", "data_type": "plaintext"}}
Ибо они этот «баг» поправили. Свойство ``,inline`` ещё в 2011 году назвали бесполезным и «частным случаем». Фигли делать? Неужели создавать две хрен знает насколько длинные структуры: отдельно для JSON и для XML?

 , , ,

jenyadoe
()

Где взять стресс для работы?

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

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

 , , ,

jenyadoe
()

Twitter: блок «Who to follow»

По каким критериям определяется сабж? Трэкинг или анализ твитов?

Мне рекомедуется зафоловить «Первый канал» и «US Embassy». К чему бы это? Взаимоисключающие рекомендации, #каквыщитаити?

 , , , ,

jenyadoe
()

Чем снять краску с ноутбука?

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

Смотрится ужасно, решил стереть её по всей поверхности панели ноута. Однако, хѣр там. В остальных местах стираться она отказывается. Чем бы её таким принудить? Боюсь, наждак - слишком сурово. Жидкость бы какую-нибудь. Спирт в других местах не берет.

 , , , ,

jenyadoe
()

Одно свободное поле vs. тысячи

ЛОРовец, какие поля тебе больше нравятся? Свободное, но одно (типа «о тебе», markdown поддерживается). Или десятки-сотни-тысячи строгих (типа, где родился, где учился, где работал, какими навыками обладаешь, сколько ног, сколько рук, цвет глаз, волос, ушей и т.п.).

Заполнять то вроде проще, когда знаешь, что требуется. Так? Да и красиво это, особенно с прогрессбаром. Но реализовывать то первый вариант приятнее: прикрутил одно поле с markdown и добавляйте что хотите (таблицы, рисунки, ссылки, списки, формулы). Дискасс.

 , , , ,

jenyadoe
()

Категории vs. Теги

Что из сабжа предпочитаете для структурирования записей на сайте (вариант «и то, и другое, только без хлеба» не принимается)?

Если теги, то в виде отдельного поля или #хэштеги прямо в тексте?


Добавлено:
Как бы вам было удобнее ориентироваться в списке типа вакансий? При этом, нужно бы избавить администрацию от ручного управления. Рейтинги, популярность, совместное голосование: что хотите, только не ручное добавление / модерация.

 , , ,

jenyadoe
()

JavaScript нужен?

Пришло уже время отправить всех, кто без JS в пешее эротическое? Или fallback режим нужен? Как с этим дела у Fb, Mail.ru, VK, прочих?

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

 , , ,

jenyadoe
()

Client-side: Создание удобного интерфейса

Guten Tag!

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

При этом, есть сомнения относительно нужности использования туевой хучи JS'а (табы там всякие и прочее), хочется именно css фреймворка.

 , , , ,

jenyadoe
()

Что делать с проектом на Golang, Revel в несколько тысяч строк?

Уже не первый день мучает кошмар, что я - null инстанс и не содержу поля Id, а потому вызываю ошибку при заходе на страницу. Во view не закрыты Golang if-clause'ы. Мешанина. Безысходность.

Уже задавал близкий вопрос, но не услышал того, чего хотел.

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

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

Собственно, сработал психологический защитный механизм - «перепиши, перепиши всё, желательно с нуля». Возможно есть в этом здравый смысл (если да, на чём)? Или рефакторить? Кода не так много (LOC): ~3000 Golang (не считая OpenSource компонентов, которые писались в виде Filters), ~1000 Golang templates, ~200 CSS, ~100 Coffee.

С Revel пришёл к выводу, что не всё так радужно, как при создании «Hello, world» приложений. И, возможно, было бы лучше использовать, скажем, Martini.

 , , , ,

jenyadoe
()

Golang, Revel/Martini/Beego vs. JavaScript, Express/???

Во чтоб такое из сабжа повтыкать? Чтобы интересно, полезно, увлекательно. И молодёжно, главное - молодёжно.

 , , , ,

jenyadoe
()

Восстановление убитого CD

Есть CD'шка из самого начала 2000х, на ней видео (единственный экземпляр). Но вот беда, кусок внешней части диска (0.5 см x 1 см) - отвалился, CD пошла по 3.14"'★(р.п.).

Диск распознаётся компом так же, как блюдце из кухонного сервиза, т.е. никак. Поэтому ddrescue говорит: «No medium found».

Возможно как-нибудь дёрнуть с него хоть что-то, совсем мили3.14здрический фрагмент быть может?

 , , , ,

jenyadoe
()

Данные в БД: Когда денормализовать, а когда кешировать?

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

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

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

Во-о-от. Когда стОит использовать денормализацию (например, некий процесс в фоне будет всё вычислять и сохранять в базу), а когда тупо запрос на месте с кешированием? Скажем, имеется фреймворк, в котором кеш в кластере Redis/Memcached - из коробки.

Ваши мысли.

 , ,

jenyadoe
()

Асинхронное голосование и голосующие стратеги

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

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

label 1: Как бы вы организовали работу подобной системы, чтобы избежать голосующих-стратегов? Типа, все голосуют сейчас (пока у всех рейтинг около 1.0), а я проголосую через две недели, когда мой рейтинг будет 5.0.

Хранить не сам рейтинг, а проголовавших и пересчитывать голоса каждый раз относительно нового рейтинга каждого из участников? Накладно.

На начало голосования записать текущий рейтинг каждого из участников и использовать его? Пока - лучший вариант.

Ясен красен, это зависит от целей проекта. Тем не менее, goto [1].

 , ,

jenyadoe
()

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