• Архитектура базы данных для комментариев

    alexxxst
    @alexxxst
    Одной таблицы хватит. Зачем городить что-то? Выборка по ключу (ид статьи) очень быстрая (у меня для примера, в таблице около 4 миллионов записей, выборка десятка записей по ключу занимает около 0.03 сек).
    А вот куча таблиц (особенно, если статей много) быстро забьют кэш таблиц сервера БД.

    Самые тормоза будут при добавлении комментариев в таблицу, я бы рекомендовал (в случае мускула) включать delay_key_write в таблице.
    Ответ написан
    2 комментария
  • Статья про преимущества Qt4 над Qt3?

    Gorthauer87
    @Gorthauer87
    Программист
    Я бы советовал поискать новости о выходе Qt4.0, там наверняка развернутое описание почему Qt4 лучше. А вообще: Qt4 быстрее, Qt4 функциональнее, Qt4 имеет нормальный порт на винду, Qt4 гораздо более кроссплатформена, Qt4 развивается, а в Qt3 даже баги не правят.
    Ответ написан
    Комментировать
  • Ускорение видео в 16 раз?

    bagyr
    @bagyr
    mencoder с опцией -speed.
    Мануалов в гугле полно, но может потребоваться подбор параметров.
    Ответ написан
    Комментировать
  • Нужно ли высшее образование веб-программисту?

    TEHEK
    @TEHEK
    Что-то все забыли, что универ это не только знания, но и новые друзья, связи, опыт, взлеты, падения, контрольные, курсовые, диплом… Так, о чем мы там вообще говорили?
    Ответ написан
    1 комментарий
  • Google Translate "Allow phonetic typing" -Off

    @dsn
    Есть вариант пользоваться мобильной версией: translate.google.com/m/translate?hl=ru&langpair=en
    Ответ написан
    Комментировать
  • Нужно ли высшее образование веб-программисту?

    noxxx
    @noxxx
    Не нужно. Не ходите туда. Работайте, программируйте. Должны же мы (люди с высшим образованием) кем-то руководить :)
    Ответ написан
    Комментировать
  • Файловая система для авaтарок?

    @vgrayster Автор вопроса
    Гугл ничего не выдает, наверное готового нету. Пока на коленке родилось следующее решение.

    1) В основной базе (mysql) храним всю мета информацию + ключ для картинки. Ключом является (имя файла sqlite + id)

    2) Есть куча небольших (100-200мб) файлов sqlite в которых в блобах хранятся изображения.

    Так как запись идет append only и предыдущие не будет меняться — то в ежедневный бекап будет попадать только последний sqlite файл.

    Что скажите? бред?
    Ответ написан
    4 комментария
  • Нужно ли высшее образование веб-программисту?

    @b0n3Z
    Задался себе тем же вопросом. Хотелось попробовать студенческую жизнь, поэтому поступил и проучился месяц. И решил, что лучшим выбором будет заочное высшее образование. Перевожусь, к сожалению, потеряю немножко времени, но оно того стоит. Сейчас учусь на первом курсе. Software engineering изучаем, хотя на парах по программированию скучно было. А еще у нас обучение на английском. Казалось бы, могло быть гораздо хуже, зачем уходить? Я просто не привык к такому обучению. Фриланс сказывается-с.
    Штудировал очень много источников, разжигал холивары на форумах и в конференциях, но все же сделал необходимые выводы.
    Итак, аргументы за заочку с первого курса:
    • Корочка (диплом) — очень спорная штука. В некоторые компании без нее не берут, но такое случается редко. Но все же я сильно рекомендую получить ее, тем более, что усилий вам прикладывать практически не прийдется. Как уже писали, есть шанс, что веб вам надоест. Единственный минус диплома, если на заочке — это небольшая сумма, которую нужно платить каждый семестр.
    • «без мат аппарата не представляю себя» — в 99% программисту математика если и нужна, то никак не высшая, а дискретная. Если же у вас когда-нибудь появится необходимость в дискретке, я думаю, вы без проблем сможете изучить ее не прибегая к помощи каких-то преподавателей, раз уже докажете себе, что с самообразованием проблем не имеете.
    • Совмещать фриланс и учебу на первых курсах можно, но довольно сложно. И незачем. Если вы переведетесь на заочное, у вас появится гораздо больше времени. Лично мне не хотелось жить по строгому графику «учеба — работа — сон» в то время, как мои одногруппники имеют время на себя. В результате мы сейчас встречаемся вместе и развлекаемся, так как появилась уйма свободного времени, хотя, опять же, в универе я не бываю. И на спорт появилось время. Это важный пункт, потому что прогореть/устать становится гораздо легче, коль совмещать учебу и работу.
    • «я узнал кучу алгоритмов, о которых без универа, наверное, никогда и не услышал бы» — просто нужно заниматься качественно саморазвитием. Штудировать книжки по всяким computer science. Они интересны для программиста и знания, которые там преподаются очень редко можно увидеть в современных ВУЗах СНГ. Я собираюсь купить е-читалку скоро, буду книги загружать / покупать в интернете. А списочек длинный и купить их в бумажном виде, да и, часто, на русском, просто нельзя.
    • Так как вы сможете работать на полную катушку, то за пять лет вы наберете очень много опыта и денег. А так как вы на заочке учитесь, то получите диплом в то же время, что и ваши сверстники.
    • Все аргументы за университет по-поводу «ВУЗ вселил в меня умение думать/выкручиваться!» выеденного яйца не стоят, простите. Думать вы, раз сами научились программировать, можете. «Выкручиваться» — это умение давать взятки и готовиться к сессии за ночь?
    • Единственное, о чем я жалею — это что на заочке узнаю меньше интересных людей, чем мог бы на дневном.
    Ответ написан
    4 комментария
  • Неочевидность выбора между Mac OS и Ubuntu?

    SilentImp
    @SilentImp
    Если товарищ Хабрин верстальщик и немного дизайнер, то знает что форматы adobe photoshop/fireworks стандарты де факто для макетов.
    Под macOSX есть родное решение Adobe.
    Под Ubuntu — нет.
    Можно, конечно, покричать про wine, экспорт в… и виртуальные машины, но мой опыт показывает что это не выход.
    Хотите использовать что то кроме Windows — выбирайте мас. Тогда в виртуальной машине будет только IE для тестирования.
    Ответ написан
    Комментировать
  • Линейные или иерархические комментарии к ответам лучше реализовать?

    kekekeks
    @kekekeks
    Основная проблема древовидных комментариев — если их становится много, то очень сложно делать вменяемую разбивку оных на страницы. И это хорошо ещё, если сервер мощный и движок грамотно написан, а то зачастую ждёшь 10 секунд, пока страничка сформируется, и столько же, пока загрузится. Если же их разбивать на страницы, то становится трудно следить за обсуждением, которое ведётся в разных ветках. Кто-то решает эту проблему обрезкой веток и подгрузкой оных по клику, но это, мягко говоря, не удобно.
    Ответ написан
    1 комментарий
  • Нужно ли высшее образование веб-программисту?

    borisiq
    @borisiq
    По поводу высшего образования надо для себя решать самому, исходя из своей текущей жизненной ситуации, ближайших и стратегических целей, планов на жизнь.
    +от вышки вижу только для молодых людей: тренировка мозгов и воли, общее развитие, студенческая тусовка, которая позволит обрасти широкими связями, закос от армии (не знаю на сколько сейчас актуально, но в моё врем был весомый фактор).
    Взрослые (30 +) больше учатся (или не учатся, а проплачивают ...) только для корочки, когда дорастают до тех должностей, где корочка необходима. Дорастёшь до такой должности и купишь себе диплом, а то и кандидатскую, формально учась на вечернем/очно-заочном отделении.
    Ответ написан
    Комментировать
  • Нужно ли высшее образование веб-программисту?

    Co0l3r
    @Co0l3r
    высшее образование по специальности веб-программирование или computer science полезно, но в среднестатистическом российском вузе обычно есть специальности типа прикладной математики, механики и информационных технологий, что совсем другое.
    Ответ написан
    Комментировать
  • Нужно ли высшее образование веб-программисту?

    MniD
    @MniD
    Считаю что на постсоветской территории образование крайне хреновое и не думаю что 5 лет стоит тратить на наши ВУЗ…
    Я вот уже как шесть лет почти работаю веб-программистом и считаю что за это время я набрал гораздо больше знаний, если бы учился эти же пять лет в нашем ВУЗе… хотя поступал в наш ВУЗ уже проработав пару лет программистом, поступал в ту же сферу, в конечном итоге довольно быстро ушёл из ВУЗа, о чём не жалею…

    Хотя сейчас уже собираюсь пойти получать образование, но уже заграницей… образование нужно, но получать его в нашей стране — трата времени и денег… а ещё и на работах у нас оно почти особо и не требуется, редко оно играет роль…

    Сугубо моё ИМХО.
    Ответ написан
    Комментировать
  • Разобраться со слабыми сторонами C++?

    @Mercury13
    Программист на «си с крестами» и не только
    Что я могу сказать про проблемы C++?
    1. Слишком слабая типизация. Например, int x = 0.0;
    2. Система хедерных файлов крайне медленна, «предкомпилированные хедеры» и extern template — полумеры.
    3. Запутано подключение чужого откомпилированного кода (DLL, к примеру). Мало написать хедер, надо ещё откомпилировать lib — в общем, интересного мало.
    4. Библиотека STL крайне жирна. Хотя и libc тоже «хороша» — минимальная программа на Паскале занимала несколько килобайт, в зависимости от компилятора, на Си — приближается к сотне килобайт. Я не говорю про Linux/MSVC, где libc динамически подключаемая.
    5. Строковый литерал на C++ — это та же нуль-терминированная строка. Когда эту строку приходится оборачивать в какой-нибудь std::string, уже при выполнении вычисляется её длина. Зачем? Почему бы не вкомпилировать её в exe'шник?
    6. Нет ключевых слов override/reintroduce. При изменении сигнатуры виртуального метода приходится вспоминать, где он переопределялся.
    7. Нет виртуальных конструкторов. «Фабрика» — полумера.
    8. Коряво реализовано право доступа «читай кто угодно, пишу только я».
    9. Явное определение методов как inline или не-inline в сочетании с шаблонами приводит к странным эффектам. Когда расшаблонивание приводит к сложному коду, inline вреден (сжирает кэш процессора), когда к простенькой операции с указателем — наоборот, нужен. В общем, это давно уже должно стать парафией оптимизатора.
    10. В разного рода callback'ах замыкание приходится реализовывать собственными силами. Что-то типа: typedef void (*ProcDoSomething)(int aParam, void* aClosure). То же самое в Delphi: type ProcDoSomething = procedure(int aParam) of object;
    11. Если вдруг случайно два разных модуля реализуют одно и то же, но один препроцессором, а второй — синтаксисом C++, будет ОЧЕНЬ много геморроя с поиском ошибки.
    12. В обычном цикле for счётчик упоминается трижды. В общем, место очень ошибкоопасное. Для самых простых циклов у меня вообще есть макрос FOR_S (i, 0, n); суффикс S означает size_t.
    13. Когда из-за рефакторинга «внутренней кухни» объекта меняется способ хранения ссылки, меняется и код, который этой ссылкой пользуется. Например: object.buddy.field, object->buddy.field, object.buddy().field — в зависимости от того, buddy реализовано как Buddy& buddy, Buddy* buddy или Buddy buddy().

    Пока, засиделся. Мне бежать.
    Ответ написан
    4 комментария
  • Какой основной недостаток std::vector?

    @BaJlepa
    прошу извинить
    вот так лучше

    std::vector<double> v = { 1, 2, 3.456, 99.99 };
    
    Ответ написан
    Комментировать
  • Какой основной недостаток std::vector?

    Horse
    @Horse
    А какие недостатки вы уже назвали?
    Ответ написан
    Комментировать
  • Тормозит Firefox

    @holivar
    У всех тупит. Это стратегия такая, чтобы продвигать ГуглХром. (все же в курсе, кто купил мозиллу?)
    Ответ написан
    Комментировать
  • Разработка проекта на разных компьютерах

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    Любая система контроля версий. Распределенные при этом позволяют совершать коммиты, будучи оффлайн (в дороге). Это Mercurial, git, Bazaar.
    Ответ написан
    Комментировать