LINUX.ORG.RU

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

Ваша любимая современная фантастика?

Форум — Talks

Ясен пень что на главную такое не пропустят, потому тут. Давайте по три книги.

1. Анклавы, Панов.
2. Бремя империи, Афанасьев.
3. Завтра война, Зорич. KRoN73, спасибо за рекомендацию!

* современная <= 20 лет. ** вспомнил лучшее что прочитал за последние года три и что впечатлило еще с детства.

 ,

drull
()

Что почитать по проектированию ПО

Форум — Development

Добрый вечер.

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

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

 , ,

crowbar
()

Напутствие в трудной жизни.

Форум — Development

Дисклеймер. Этот пост всесторонне вдохновлен каким-то древним видео в интернете, автора которого я благополучно забыл. Если автор сейчас читает это - респект тебе и увага, бро!

Итак.

Помойму программисты сильно перегибают палку.

Засрали всю джаву мусором.

Хотите вы бин, и что-то в нем хранить тупо, сделайте все поля public! Вместо лесов геттеров-сеттеров.

Боитесь, что такой класс (с пабликами) будет не thread-safe и хомяки не смогут писать с ним хороший многопоточный код? Да побойтесь б-га, хомяки вообще не напишут хорошего многопоточного кода, всё это миф. Дайте среднестатистическому человеку треды и локи, и он напишет код в миллион раз более медленный, чем аналогичный на готовом TransferQueue. Вот и пишите свой продюсер-консумер на TransferQueue, не выпендривайтесь.

ООП, и конкретно механизм наследования, очень плохо подходит для увеличения реюзабельности кода. Глупому заказчику можно втирать рекламу ООП=реюзабельность, но мы тут все грамотные люди, линуксоиды, как минимум с 8 классами образования, мы же все понимаем как оно на самом деле. Трейты/миксины и препроцессор и то с этим лучше справляются иногда.

Но сидят сумрачные гении, и ночами напролет пишут какие-то иерархии классов, чтобы одну строчку копипасты сэкономить. Всё это фигня! В такой надуманной иерархии классов еще сложней разобраться, чем отрефакторить копипасту. И уж точно ее сложнее модифицировать. Мой совет: копипастите смело и открыто! Если коллеги будут придираться, спокойным голосом, глядя на правое ухо поциента, говорите: «вот сам и поправь», 90% что коллега посинеет от страха и сдрыснет в ужасе, в остальные 10% можно утешаться тем, что эту лажу писать пришлось хотя бы не тебе.

Никто не заставляет писать Factory которые производят Factory, которые производят Factory! Хочешь посмотреть, откуда берется объект, а там целый стектрейс на 50 этажей, можно блуждать пока не умрешь от голоду. Хотите сделать объект - ставите new и поехали. Сразу понятно - вот тут делается объект. Фактори нужно изничтожать безбожно (только если это не Spring, Spring надо пожалеть).

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

Никаких фреймворков! Ехал фреймворк через фреймворк, и все - говно. Каждый день кто-то еще производит новый фреймворк. Потом набигают ПМы-хипстеры и такие, а что у нас популярно? Ахххаха, гороскоп показывает, что в эту фазу луны популярен Wicket, давайте нафигачим на нем гуй для Международной Космической Станции. Потом где-то там эта чушка не распарсила XML, свалилась в корку обосравшись стектрейсами, и все космонавты сварились. Отлично! Зато фреймворк!

Особенно радуют люди, которые боятся эти фреймворки чинить. Ололо, всё работает через задницу, но трогать не будем. Потому что - потом поддерживать же свой «форк» надо! Лучше нагородим еще костылей вокруг кривого фреймворка! Мотивируется это тем, что «на дальней дистанции» хомякам проще будет писать костыли, чем фиксить фреймворк. Но это ложь, через пару лет развития проекта уже совсем в этих костылях не разобраться. Совет тут такой: не использовать фреймворков, а если использовать - то понимать как они работают, и чистой душой фиксить их, а коммиты стараться засылать в апстрим.

Это всё от другой болезни, называется «Архитектура». Ее нужно долго придумывать, и потом всех насиловать. Можно сказать, архитектура передается половым путем, как сифилис и гангрена. Кто-то из великих говорил, что архитектура - это самая стрёмная, самая зачерствевшая и неизменяемая часть кода, то что фиг изменишь. Нормальный код должен легко меняться. Но во все времена были люди, поклоняющиеся говну. И вот тут, обязательно найдутся поклонники архитектуры. Совет тут такой: шлите архитектуру в зад, пишите гибко изменяемый код, так чтобы (если такая возможность потребуется) двумя легкими движениями рефакторинга текстовый процессор превращался в графический редактор и наоборот. Софт - это не паравоз, нельзя взять три семьнадцать колес, паровой бачок, сложить их по чертежу(архитектуре) и получить паровоз. Софт - это непрерывный процесс рефакторинга.

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

Самая жуть, это всякие ынтерпрайзные сервера, портлеты, фигеты, шушпанчики. Вот притащил ты себе в проект WebLogic или еще какой-нибудь архитектурно-окаменевший кусок, и что изменилось? Кстати, вы видели чтобы на одном реальном хайлоадном сервере запускалось больше одного приложения? Обычно бывает как раз наоборот - на куче серверов запускается ОДНО приложение! А сколько бед от этой псевдофункциональности по огранизации шаред хостинга! Что ынтерпрайзные сервера лучше делают, чем Jetty запущенная прямо из функции main? Собственно в этом и совет, запускайте джетти откуда-нибудь руками, или из мавена, и не парьте мозг.

Надо писать так, чтобы код отражал СУТЬ. Чтобы деплой отражал СМЫСЛ. Посмотрел на код - и сразу понятно, что там написано. Запустил сервер - и сразу понятно, что и как он обслуживает, где скачать его исходники и пофиксить, если чо.

Если вы последовали перечисленным советам, но вас никто не понимает, скажите что stevejobs с лора разрешил.

В общем, идея понятна, теперь можно приступать к критике :)

Привет.

 

stevejobs
()

TRUE-DEATH-PRIMITIVE-LINUX-CHIPTUNE

Форум — Multimedia

Представляю вашему вниманию очередное ненужноподелие — программу Robotonic. Сотня строчек говнокода на православной сишечке превращает любые входные данные в нечто мелодичное. Четыре параметра (длина последовательности, длительность «ноты», частота дискретизации и уровень тёплого лампового шума) регулируются константами, по просьбам трудящихся могу прикрутить ключи. Использование, например: cat /dev/urandom | ./robotonic | aplay. Можно вместо входного файла вбивать музон прямо с клавиатуры (учтите, что программа жуёт символы по четыре).

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

Гуманитариям, говнарям и прочим нежноухим просьба проходить мимо.

На всякий случай оставлю здесь демо.

Перемещено beastie из talks

 , , ,

MiniRoboDancer
()

Руссификация цивилизации

Форум — Games

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

 ,

siphonops
()

OpenGL под Android

Форум — Development

Кто-нить с лора пишет под андроид opengl? Игры. Насколько тяжело даётся разработка под голый opengl с нуля? Есть опыт 1.5 года flash разработки игр, и год objective-c/c.

Интересует игра уровня 2048: 2D, opengl es 3.0. Только спрайты, никакой физики. Сложно ли такую игру поддерживать и разрабатывать? Знаю про libgdx и прочее, но интересует такой минимализм для саморазвития.

 , , ,

menangen
()

Настройка сети для KVM

Форум — Admin

Здравствуйте. Пытаюсь поднять виртуалку на kvm. Хост - Gentoo. Физический сетевой интерфейс всего один. Нужно настроить сеть так чтоб и виртуалку и хост было видно из локальной сети. Подскажите куда смотреть.

 , , ,

Freest
()

Как связаться с spamhouse.org

Форум — Admin

spamhouse занес адрес моего postfix сервера в свой черный список, и от этого, понятно, проблемы. Удалять его из списка без устранения причин не хочется, как и копать все логи.

Вопрос: можно ли получить от spamhouse.org пример спам письма от меня с датой и временем?

constrn
()

Определить своё ведущее полушарие мозга

Форум — Talks

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

 

ViTeX
()

Хорошие игры для мобильного

Форум — Games

Есть мобилка на андроид, нексус 5 и планшет сиаоми миПад с тегра к1.

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

Xcom:enemy unknown имеется под андроид, вроде хорошая игра, но 3.5 гига кэша качать не очень хочется. Есть Freeciv, но я не люблю ранние цивилизации.

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

Спрашиваю тут т.к. на всяких форумах вроде 4пда не сижу.

PavelRyzhov
()

Что полезно почитать новичку по параллелеизму?

Форум — Development

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

 

terminator-101
()

Iron Sky The Coming Race

Форум — Talks

Создатели супермеганаркоманской фантастической эншн-комедии Iron Sky собирают средства на сиквел: https://www.indiegogo.com/projects/iron-sky-the-coming-race--2. Слабонервным лучше не смотреть: в тизере содержится Гитлер на зигующем тираннозавре!

 , , , ,

Deleted
()

тук-тук на распродаже

Форум — Games

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

Evgueni
()

Посоветуйте mini-ITX плату

Форум — Linux-hardware

Всем привет! Очень нужна материнская плата mini-ITX с двумя LAN портами, современная, нигде не могу найти список всех доступных моделей - одни магазины. Дайте пожалуйста наводку, кто работает стабильно с linux дистрибутивом (centos)

dimabie
()

Опрос: что вам удалось или не удалось пробросить и как хорошо работает?

Форум — Linux-hardware

Предлагаю отписаться тем, кому удалось пробросить видеокарту в qemu/kvm/xen - или не удалось (полностью, вообще) и как стабильно работает.

Мне не удалось пробросить полностью Sapphire Radeon HD 7790, потому что именно 7790 (вероятнее всего независимо от производителя) хоть и пробрасывается и работает на отдельном мониторе через видеовыход карты, но драйвера (любую версию, на любой версии windows) установить невозможно, что полностью лишает смысла сам факт проброса.

Мне пока-что не удалось полностью пробросить Gigabyte Radeon HD 7870, по той же причине, хотя здесь пробовал как через seabios, так и UEFI/OVMF, но в таблице с qemu/kvm, где люди делятся результатами, а также в списке Xen достаточно 7870, так что шанс есть.

Просьба полностью указать ваше железо: материнка, GPU хост и GPU гость.

 , , , ,

xinu
()

Сверхдешевый vps

Форум — General

что-нибудь за $5 в год имеется? нужно для одного проекта. память, процессор практически не имеют значения.

 

int13h
()

XDG Base Directory Specification, даже когда софт не хочет.

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

Довольно давно меня подзадолбала мусорка в домашней директории, постепенно получилось заставить почти весь софт гадить в строго определенное место, а именно в .config, .cache и .local

Для особо одаренных (Skype, Dropbox) пришлось слегка поизвращаться, если для Skype достаточно было изменить параметр запуска на

skype --dbpath=$HOME/.local/share/skype
, то для Dropbox уже пришлось городить костыль в виде

HOME=$HOME/.local/share/dropbox /usr/bin/dropbox start -i 2>&1

Остальной софт относительно разумен, где через alias, где через export, удалось обяснить, куда складировать свое добро. Ниже листинг .bashrc и .profile, авось кому пригодится.

( Листинг )

>>> Просмотр (749x517, 36 Kb)

 

gwinn
()

Что почитать по concurrency и memory model в С++11

Форум — Development

Интересуют atomics, CAS, memory barriers, false sharing detection and prevention, lock-free структуры данных, разные примеры happens before и т.д.

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

Статьи тоже сойдут, хотя я уже их начитался.

 

vertexua
()

Crusader Kings 2 со скидкой в 75%

Форум — Games

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

http://store.steampowered.com/sub/51212/  — со всеми дополнениями стоит 692,25 деревянных, осталось 44 часа.

Налетай!

 , ,

deterok
()

покритикуйте самописный рогалик

Форум — Games

На старости лет собрался что-нить игровое написать. Получился рогалик :)

онлайн-версия (бесплатно, без смс, хехе): http://www.wessense.org/

Есть бинарники для линуха, мака и винды, пакованные node-webkit. Короче, критикуйте, предлагайте фичи, тыкайте в баги и прочее.

 , ,

Shadow_Walker
()