← All posts tagged мысли

Прорабатываю идею сервиса агрегатора. Давно в голове крутилась идея, но как то на задний план откладывал. Идея очень большая, и очень простая с другой стороны, и очень web 2.0-ная. Интересно будет, что получится из всего этого. ) Надо бы поработать и посмотреть.

Верстать надо исключительно на недорогих ноутбуках (а не с самыми крутыми дисплеями). Сижу делаю интерфейс. Вот взял свой любимый Bootstrap. Забацал табличку в архив стрипнутую (ну строки светлые/темные). Ок. Смотрю. Ну хер отличить могу, чесслово. Вообще разницы никакой. Зато на мониторе справа все четко видно, что они светлосероватые. Так же в принципе непрочитанные сообщения в чате контакта — то же самое происходит. То ли яркость высокая, то ли цветопередача говно, то ли правда настройки подкрутить стоит — но вот такой вот интересный зрительный эффект. А так как тут видно хуже, то лучше подгонять под худший вариант, мне кажется )

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

Но вот, что меня навело на некоторые размышления. Вот есть реляционная теория. Этакий идеальный эталон. Отношения, в виде множеств, состоящих из кортежей. На деле, SQL подразумевает таблицы, в которых есть определенный порядок строк (кортежей), что просто ломает все определение отношения, так как множество не имеет порядка элементов по определению. Оно просто само по себе не имеет никакого порядка, как его не изображай.

Но на деле. Как работать с множеством, когда мы имеем дело с весьма детерменированной системой? Как бы работалось, если бы в SQL убрали GROUP BY, или ORDER BY. Что, если нужно упорядочить элементы (а это обычное дело при работе с базами данных).

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

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

И исходя из этого, я немного переношусь на языки программирования. Вот есть Python, Ruby, C++, Java, Javascript к примеру. Эти языки очень сильно критикуют со всех сторон, и как только можно. Но они чертовски популярны, и очень прагматичны в своих областях.

А есть Haskell к примеру. Я снимаю шляпу перед Haskell, ML, Lisp и прочими. Но почему они не завоевали популярность (Lisp не в счет частично)? Они идеальны во многих отношениях, их концепции лежат на непоколебимых математических основах. Они позволяют добиться идеального кода. Но почему же тогда, их так мало используют?

Вот мне почему то кажется, что они просто сильно идеализированы. Человеку легче понять код на Python или Java (или другом), на языке который более человечным, и не математическим, более формальным (хотя и не без доли математической основы) языком позволяет описать реальный мир. Нужна ли вообще настолько идеальная математическая модель для большинства ПО, и насколько правда оправданы возможности Haskell или ML для ежедневного использования, даже если предположить, что писать и понимать их не сложнее Python или Basic.

Вот такие воспаленно больные бредовые мысли перед сном. ))) надо завязывать с матанозадротничеством :D

Весьма интересно вникать в книгу Дейта, и анализировать опыт использования ORM. Вот к примеру. Ограничения типов. SQL не поддерживает ограничения типа, только ограничения на уровне базы данных. Ну тот же CREATE ASSERTION. И это вызывает разные ощущения. С одной стороны, и правда соглашаешься с Дейтом, с другой стороны думаешь, о том, что часто работаешь с базой данных через ORM слой, где есть валидации. В последнем случае, как определение и работа с моделью находятся на клиенте, в одном месте и легко изменяемы, с другой стороны, не покидает ощущение, что всякие ограничения и вообще подобная работа с данными должна проделываться самим сервером базы данных, избавляя клиент от излишней раздутости. Но опять таки, вспоминается, что работа с собственно определенными типами данных в SQL через ORM — штука довольно сомнительная в плане удобства, и опять таки в остатке остаются ограничения уровня БД.

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

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

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

Скоро середина марта, и планируемый переход на новую работу. Надо заставить себя прочитать и проштудировать как можно больше книг. Очень хорошо углубиться в PostgreSQL, реляционную теорию и SQL, на этот раз очень глубоко и основательно вникнуть в Metaprogramming Ruby и Rails Way, в книгу по RSpec, и почитать о Capistrano, и по возможности опробовать его. Жаль только, что после рабочего дня, так трудно заставить свой мозг поработать еще часа три четыре над вниканием в книгу

Чем больше вчитываюсь в Дейта, тем больше понимаю, что моя раняя неосознанная нелюбовь к SQL может быть вполне оправданной. Но тем больше понимаю, что Tutorial D, который предлагает Дейт тоже не особо то нужен, ибо есть Prolog, который вполне может сгодится как язык для БД, особенно если учитывать, что БД в общем случае состоит из множеств логических утверждений, которые истинны. А если тут все сводится к логике, зачем огороды, если есть Prolog. Тем более, что его тоже используют для хранения баз знаний, которые по сути частный случай (или общий случай) базы данных.

Сижу читаю код на C++. Пытаюсь писать. Давно это делал. И в голове один вопрос: "Как на этом пишут?"... Видимо таки динамические языки меня развратили, но блин. Имея три числа, надо создать строку и вставить их в определенные места. Столько геммора. Строку создай, размер или через string, смотри чтобы там было то-то и то-то. А не просто:
"Some string %s" % (some_number) или "Some string #{some_number}" и все.
Читаешь хабр где нить про плюсы. Там хитро выебанный код, и говорят об изящности. Вспоминаешь о динамической типизации, о родных Python и Ruby... Так на душе становится тепло, и реально пытаешься понять людей: а в чем собственно красота-то?

Как бы мне теперь эту развращенность убрать обратно, и приучаться писать не только на динамических, но иногда и JUST FOR FUN на статических?

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

Да. Это пришло. Бесспорно, и это будущее как-то очень незаметно влилось в наше повседневное так, что казалось бы так и должно быть. Но вместе с ним, что пришло в Интернет. Кто все эти люди? Мы мечтали видеть кучу народа в сети, сайты и общение. А в итоге? Всякие нимфеточки и малолеточки, "ретвитни если тебе то-то", "i love NY", и так далее. До жути отвращающее и отдающее приторно сладким ароматом ванили, и невинности, от приторности которого просто неимоверно тошнит и невозможно дышать.

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

Какой-бы закрытый и элитный ресурс не был — любой из них со временем затапливает этим вот говном.

Разве об этом мечтали те, кто подымал Интернет 30, 20, 10 лет назад? Разве об этом думали мы, мечтая о светлом будущем глобализации?

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

Я все. Это просто дикий баттхерт.

Веб-жуйк. А ты помнишь еще, когда раньше делать уголки на сайтах было круто и прикольно, и считалось хорошим тоном. А как потом начали все радоваться CSS3 уголкам? А сейчас. сейчас кажется уже все забили на уголки. И классным дизайном считается простой белый дизайн, угловатый без излишеств и с яркими цветами. Красиво, эффектно, минималистично. Ну вот пример, который меня на мысль навел: blendinsider.com и не только он. Такой дизайн проще, красивее и эффектнее. И это не только в продуктах MS. К примеру Facebook, Google.

Не программистом мне надо быть. В евангелисты мне надо. Замечаю все больше за собой, как не стесняясь ругаю один софт, и откровенно хвалю понравившийся другой. И могу повторять и повторять. %) Это конечно плохо, но похоже такие качестве больше подходят маркетологам, пиарщикам и евангелистам, нежели программисту. Надо работать над собой.

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

Жуйк. А ты веришь в одиночество? Ну в то, что оно вообще реально, как какое-то явление, когда человек на него жалуется. Почему то в голову прокралась мысль, что если человек одинок — то он либо сам отворачивается и не замечает близких людей, с которыми он не одинок, либо он осознано идет к нему. Хотя, если человек сам идет к одиночеству — то это скорее уединение, и социопатия (или как по научному будет правильно).
В общем, камрады. Чего то мне кажется, если жалуешься, что ты одинок — то это твои проблемы, и порой стоит оглядеться вокруг. =)))))

Тут у меня мысля возникла... А почему XML и иже с ним не заменить на HAML или что-то подобное? Ведь реально и меньше места занимает, и DOM-модель по сути сохраняется, но сам синтаксис становится нагляднее. Ну только да. Возможно, проблемой для многих станет двумерный синтаксис (так нелюбимый многими в Python).

Вспоминаю, как раньше жаловался на маленький канал на USB-модеме от блядолайна, как все плохо и хреново, медленно и ужасно. А сейчас. Сижу ночами, че та делаю. Читаю жуйки, плюсы и прочее, и все. Остальное простаивает. И даже мысли нет, о том, как хочется 20 Мбит канал. Вещи не меняются, меняется отношение к ним. =) P.S. А канал таки в пустую решил не тратить, и качаю с Jamendo музло. =)