Pull to refresh
25
0
Вячеслав К. @Infanty

Software Engineer

Send message
Иногда дешевле платить за час 200$ чем держать своего работника
Процитирую своего друга, технического директора немецкого бизнес фонда:

1. Программисту всегда интереснее (а потом уже проще и удобнее), написать свой велосипед нежели изучать документацию чужого (хоть и распространенного) продукта.

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

3. Если ваша команда до сих пор использует Apache, а не nginx в высоко-нагруженных проектах и не знает как разгрузить сервера с помошью кэширования используя технологии memcached и varnish, то от таких работников стоит немедленно избавляться. Так как не зная основ они в большинстве случаев умеют только много говорить не читав не одной специализированной книги.

От себя добавлю, Drupal 5 отличается от Drupal 7 как гужевая повозка от Lamborghini Diablo. Но к моему великому сожалению все желающие высказаться на тему Drupal ссылаются на Drupal 5 и при этом не один ни разу не открывал «книгу знаний Druapl»: Pro Drupal Development (в данный момент Pro Drupal Development 7). А спорить о знаниях, не познав их (не прочитав «книгу знаний Druapl») значит просто разводить флуд.

P.S.: Стоимость поддержки drupal доходит до 200$ в час, если бы эффективно было использовать другую технологию, то цены не доходили бы до таких высот.
Готов ответить своей кармой, что механизм транзакций писали СУПЕР-дауны! На 8-ми битном ассемблере.
Люди вы что!!! Cмотрите исходники: какое подтверждение? Какие подписи? Там ппц сплошной. Полное незнание основ мат. логики и ужасная аппликация используемых алгоритмов.
Охереть можно, а вы ещё это обсуждаете :(
Спасибо. Было бы интересно прочитать как продавать рекламные места в региональном СМИ.
Самое главное, что есть у YCombinator это связи и инвесторы. Они дают $20K инвестиций для построения прототипа в обмен на 6-7% в доли компании. Следующий сид после изготовления прототипа может быть на 1 мл. $ и те же 6 — 10%. При этом уже на стадии идеи приблизительно понятно кто будет потенциальным инвестором и через кого можно будет продвинуть проект в массы.

В России много инкубаторов, но вот инвесторов готовых вложить в прототип 1 мл. $ в сотни раз меньше. Да и вкладывать они хотят уже в готовый продукт, а ещё лучше готовый бизнес и желательно за 50% + 1 процент акций. Поэтому, отчасти, если идея дотянута до продукта, то инвесторы уже ненужны, только покупатели бизнеса. А так же поэтому множество интересных идей загибаются на стадии прототипа, так как потратить 3 — 6 месяцев жизни не каждый готов, для того, что бы попробовать — получится бизнес или нет.
Я храню ссылки на скачанные страницы в виде CRC32 + ID страницы, а на неизвестные страницы приходится ещё и саму ссылку тащить.
Расчёты делаете на скалярном процессоре или на x86? Я тут решил полностью на скалярные переехать.
И чего все от базы данных так много требуют :). У меня это хранилище и только не более 20% база данных. Когда половина информации хранится в бинарном, а потом ещё сжатом виде с распределителем записывающим данные :). У меня только для каждого слова своя таблица запакованная в базу слов, отдельно база для хранения исходных страниц и т.д. и т.п. Т.е. 80% случаев это расширенный интерфейс к API файловой системы + обвязка в виде хешей даных в памяти и т.п.
Нет предела совершенству, тут в части случаев вопрос сугубо финансовый, к сожалению ;)
У меня машинка которая обрабатывает данные имеет много памяти на борту. Из базы данных (Firebird) выгребаю по определённому сайту данные в своё подобие memcached => обработка => пакетное обновление базы данных. В ряде случаев быстрее очистить таблицу и вставить новые данные. Из базы где лежат тексты — только читаем, для всех индексов (в том числе и расчётных) отдельная база. Скорости обработки мне хватает, но по существу как и вы использую базу данных больше как интерфейс к жёсткому диску, чем для применения сложных выборок с объединением (они на таком объёме информации просто неработают).
Я ещё небольшими извращениями проверками занимался в виде дополнения к дереву:

— Строить дерево только по Div и Table, самой большой лист дерева — статья, всё остальное скорее всего (если совпадает с контентом предшествующей страницы на 70-80%) мусор. Ну и немного правил для востановления логики, если в table, что то пропущено.
— Если вёрстка нелогична, понижал рейтинг сайту.
— Правила для отсечения Div и т.п. c логическими именами типа: menu.
— В редких случаях можно попробовать ещё несколько методов, типа фильтраций, карт, нейронных сетей и т.п. Даже ради интереса грузил шаблоны популярных CMS (drupal, wordpress и т.п.) в них есть теги вывода основного контента = патерн выделения центральной части.

Проверки нужны были когда нужен был очень «корректный» текст статьи для определения на основании него определённых смысловых гипотез текста. Но опять же у меня база знаний, а не поисковик в чистом виде :).
Гм… Нужно будет попробовать потестить, я просто сделал своё подобие memcached в который выгребаю все значения из базы данных, а потом по ключу = слову получаю ключ первой словоформы, а в последствии и данные слова. Памяти много потребляется, но работает вроде быстро. Нужно будет провести сравнительное тестирование. Спасибо за наводку :).
Гм. я морфологию отдал на откуп базе отдельно в таблице словоформы, отдельно таблица с первой формой слова, отдельно таблица окончаний. База сама кэш в оперативной памяти хранит — поэтому работает довольно быстро при сохранении удобства. Правда мне нужна о словах вся морфологическая информация.

В остальном делаю почти так же.
Все вопросы мне, шлите в личку :).
HTML помогает разбить контент на логические блоки, а потом проверка текста на повторение на соседних страницах + учёт длины текста + чуть чуть ручных правил фильтрации.
Тут вопрос религии ;).

FreePascal немного медленнее, но зато памяти в два раза меньше кушает в синтетических тестах. На деле же получается солянка из кучи библиотек и кто сверху будет рулить ими C++ или FreePascal не имеет значения. Я просто где нужно быстрее, так же использую C++ (запаковываю в библиотеки), а некоторые вещи сделаны с использованием LUA — так как там важна гибкость и от использования языков более низкого уровня выигрыш минимален.
Я логику на базе молекулярной сетки строил, что то между нейронной и семантической сетью оперирующей связями на основе большого словаря. В общем тут в любом случае нужны разумные боты для проверки словаря.
Да нас много таких. Когда я говорю что это всё работает на Lazarus (FreePascal) + Firebird, народ начинает вращать глазами и читать мантры ;).
Я Firebird использую, ненамного медленнее, но немного удобнее в плане обновлений между серверами.
Загрузка сжатие и обработка может происходить дома, а вот индекс инкрементно можно и в ДЦ на сервере для народа обновлять. Я так делаю ;).

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity