• Какой сервер выбрать?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Вообще, для приложения на html5+php лучше использовать более масштабируемые варианты.

    А так, зависит от нагруженности вэб-приложения. Чем дороже, тем лучше (из предложенного), но оно и дороже (ваш К.О.).

    А вот у материнок за 2000. Есть ли смысл покупать более скоростную память, или она будет работать только на той частоте, которую может обрабатывать процессор?

    Это значит, что шина и чипсет на материнке способен работать с такой частотой, то есть RAM лучше брать ту, которая 1866, будет именно эта частота (можно и разогнать, но на сервере делать этого не советую). В принципе, этот вариант более чем оптимален, так как более высокая частота на DDR3 уже не даёт ощутимого прироста в производительности, разве только попугаев разводить.
    Ответ написан
    9 комментариев
  • Как визуально текст опустить ниже по странице, но в коде оставить в начале?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    css
    position: fixed;
    bottom: 0pt;

    или
    position: absolute;
    bottom: 0pt;

    Если есть скрол, определяем высоту всей страницы в js, и обновляем bottom с отрицательным значением. Довольно грязный вариант, но самый простой, наиболее кроссбраузерный (если учесть все ньюансы), правда разбираться с наложениями элементов придётся самим.
    Ответ написан
  • Какие существуют open source библиотеки для проверки текстов на уникальность?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    А в чём проблема его реализовать? Да и с гуглом у всех в последнее время проблемы.
    Ответ написан
    Комментировать
  • Можно ли загрузить страницу через js?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    8 комментариев
  • Какое есть высокопроизводительное сетевое API?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    В смысле API? Есть протокол UPD, на который есть службы с таким API.

    Если будет задача и условия, возможно подскажу точнее.
    Ответ написан
    9 комментариев
  • Возможно ли сейчас повторить успех it-гигантов?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Можно. Но не так легко. Советую почитать эту статью. В ней не совсем то, но мысли в какой-то степени правильные.

    На самом деле, можно. Дело в том, что всегда можно создать новый рынок, ведь продавать можно почти всё, хоть воздух, если это правильно подать. Давайте просто возьмём и посмотрим где сильны междунадродные IT-гиганты:

    Apple сильна в их собственной экосистеме, везде вне неё они начинают мгновенно сдавать позиции (Windows' iTunes ставят в 99.9% случаях для синхронизации iPad'ов и iPhone'ов). Они зарабатывают на технике и софте в едином целом, другого они просто не умеют. И это довольно сильно их ограничивают.

    Google почти ничего не зарабатывают на софте и железе прямо: софт у них весь или бесплатный, или открытый; производства железа своего у них нет. Они зарабатывают 95% на рекламе. На контекстной рекламе. Купив их телефон, он будет отправлять отчёты о том, как Вы его используете и, если Вы пофотографировав, перестали, они поставят плюсик, что Вас интересуют фотографии, но, видимо, не устраивает качество. Не удивлюсь, если у них уже на всю работают огромные нейронны..., которые и решают, что Вам показывать. Именно поэтому Apple так рвёт гугл вроде бы: они создают людей, в отличии от Google, которые создают для рекламодателей. Именно поэтому user-ориентированная экосистема от Apple имеет большую популярность, чем adware-ориентированная экосистема от Google.

    Microsoft. Они создают софт. У них ещё есть XBox, но пока он довольно узко-специалированный, хотя идёт работа на рывок в медиа-развлекательный сектор (а не только на хардкорных игроков). Это огромный софтварный монстр. Он настолько силён, что уже сотый айсберг его не топит. Их софт был настолько популярный, что по инерции большая часть населения планеты выбирает Windows, именно на этом у них получается зарабатывать. Благодаря тому, что в 80х "640 КБ хватит на всех", это корпорация маркетинга, они буквально втюхивают своим клиентам продукты, а многи из них даже и не задумываются над альтернативами.

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

    Если подумать, то возникает вопрос, чем отличается Twitter и Rovio от Apple и MS. Те и те имеют сверхприбыли, к которым так стремился западный капитализм. Но у twitter команда от силы человек 100, у Apple - тысячи, если не десятки. У Rovio - десяток другой дизайнеров, и с десяток программистов, у MS - в сотню другую раз больше. Поэтому прибыль в рассчёте на человека в комманде примерно равна. Но Apple и MS целеноправленно шли к результату, а Twitter и Rovio - выиграли джекпот.

    Но даже если выбрать ту же область, что и у кого-нибудь из существующих IT-гигантов, и начать с ними конкурировать, это не значит, что Вас загнобят. Никто не будет (я надеюсь), поливать Вас грязью, по крайне менее не оправданно. Возможно, Вы просто образуете свой подрынок, как Twitter не стала конкурировать с Facebook, а сделала ставку на теги, ленты и короткие сообщения, жёстко ограниченные кодом. Рынок огромный, места найдётся многим, хотя да, не всем.
    Ответ написан
    Комментировать
  • Уникален ли дизайн toster'a и других проектов хабры?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Вот кстати да, плюсую @iiil @Ivnika , дизайн действительно не идеал юзабилити. Хотя, stackoverflow тоже не дзен. До сих пор не могу привыкнуть к это проклятому меню, ибо не понятно, где вопросы, где ответы, где трекер. Бывает зайдёшь на страницу, ищешь куда щёлкнуть и понял, что попал не туда. Более того, "правило трёх кликов" не работает (когда из любого места в любое можно попасть не более чем за три клика), наверное его расстрактовали как правило трёх страниц, ибо чтобы попасть на страницу с упоминаниями нужно сделать ровно три клика, на ссылку уже не хватает. Ещё, очень странная система подписки, но это больше похоже на оффтоп.

    Про дизайн... Тут как сказать, сейчас в тренде большие иконки, плавающие элементы, выезжающие менюшки и мало текста. В общем-то логично, тем более текст есть, просто он скрыт. Цветовая гамма на мой вкус не лучшая. Но к этому привыкаешь.

    Отношение? Юзабилити раздражает, а вот к дизайну, как я говорил, привыкаешь. А то, что все дизайны выглядят одинаково, так здесь ложь и клевета. Похожи только тостер и фрилансим (после редизайна), хотя последним уже не пользуюсь, ибо нет смысла платить за заказы раз в два месяца. Brainstorage тоже чем-то похож, но не сильно. Хабр вообще не похож - уже сколько лет дизайн почти не обновляется, разве только тем, что слева контент, а справа туча листовых виджетов с сылками на релевантные статьи, вопросы, вакансии...
    Ответ написан
    4 комментария
  • Какой планшет выбрать на замену трансформеру?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Microsoft Surface Pro 2 (ya.ru), не дешёвый, но очень сильный. Докстанция отдельная. Полноценная винда. То есть море возможностей, не урезанная система, хорошая экосистема, и просто отличный планшет.

    Ещё можно подождать nVidia Tegra Note, которые должны подойти в конце этого - начале следущего года с высокой вероятностью.
    Ответ написан
  • Какой выбрать отдельный жесткий диск для /home в Linux (5400 или 7200)?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Заметной просадки по скорости между 5400 и 7200 не будет. Пара-тройка мегабайт погоды не сделает, когда HDD пингует (в смысле, позицонирует головку и дожидается начала, и снова позиционирует головку и дожидается продолжения) до секунды без проблем.

    По часам, в любом случае потеряете где-нибудь до часа-двух автономной работы. Если всё остальное так же прожорливо, пожет быть потеряете часа пол. В общем, 10-20% автономной работы. 5400 сэкономит пару процентов, не более. Но зато он более устойчив к внешнем воздействиям, намного менее шумный и это уже намного интереснее.
    Ответ написан
    Комментировать
  • Алгоритм Эллера для генерации лабиринтов генерирует петли

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Читал про алгоритм Эллера, так и не понял его красоту. Имхо, намного лучше использовать обход в глубину и в качестве лабиринта использовать остовное дерево. В коде увидеть его можно здесь (извиняюсь за ужасный код).
    Ответ написан
  • В чем недостатки Java для веб-разработки?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Забавно читать ответы.

    Когда читал Философию Java, автор высоко оценивал python. И не с проста. Как и Java, у Python свои плюсы.

    По производительности что Python, то и Java примерно равны. Python имеет "нативный" byte-code, если так можно выразиться (не смотря на то, что его портировали и на CIL, и на JVM, и на сам Python). Так что здесь паритет.

    По удобству зависит от проекта и задач. Если цель - сделать как можно быстрее, то Python явно удобнее. Ибо можно набросать прототип в интерактиве, немного подправить его и вауля - проект "готов". Если цель надёжность - наш выбор Java: статическая типизация и компилируемость выявляет сотни ошибок ещё до запуска приложения.

    Стоит заметить, что вэб в Java развит очень сильно. Причём настолько, что он просочился до клиентских вэб-приложений (и умер лет 10 назад), хотя backend всё равно в разы сильнее. Что это значит? Это значит, что для Java есть множество отличных фреймворков, ориентированных на web. Каноничная реализация ООП позволяет использовать паттерны банды четырёх "из коробки". Интерфейсы, если ими уметь пользоваться, решают. Python же не создавался как web-движок, а создавался просто как удобный инструмент для быстрого программирования как прикладных, так и теоретических задач. В этом помогает всё - и сахарный синтаксис, и крутейшие итераторы, и пресловутый интерактивный режим, и невероятные slice'ы, и неплохие лямбды, и красивый код. RoR, если говорить о языке фреймворка, так же сильно похож на Python, но магии в нём много больше. Но Python-приложения тяжко отлаживать. Можно пару лет вести баг, который окажется из-за того, что мы не проверили возможность преобразования объекта к строке в аргументах. Динамическая типизация, причём очень хардовая из всех, наверное, это и дар и проклятие.

    Собственно, если вопрос стоит "стоит ли изучать", то да, конечно стоит. Как и Java, Python - мультипарадигмальный язык, и те практики, которые Вы изучите в Python несомненно улучшат код в Java.
    Ответ написан
    7 комментариев
  • Какую первую книгу по программированию выбрать?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Если знания нулевые, как Вы говорите, начните с изучения базового синтаксиса. Java сегодня имеет довольно богатый, пусть и очень стандартный синтаксис: классы и интерфейсы, наследование, переменные и члены класса, методы и уровни доступа, управляющие операторы (циклы, условия), анотации, система пакетов. Вроде всё. Пусть этот список станет поводом для того, чтобы прочитать это в рамках java где угодно, будь то wikipedia, аль coursera, да хоть Шилтд. К слову, здесь не сильно важен язык программирования. Если до этого хоть что-нибудь изучали, втянете за пару дней. Иначе изучение может растянуться на пару недель.

    Вот после этого уже можно копать вглубь. Здесь я бы рекомендовал вами упомянутого Кормена и Кнута. Первого нужно читать вдумчиво, выполнять все упражнения (каждое выполненое упражение это +10 к интеллекту). Кнута можно просто полистать. Оба годяться как справочники, но Кнут будто создавался таким образом. Математики у Кнута много больше и если Кормен может что-нибудь доказать "абы как", то Кнут себе такого не позволит. Из-за чего его читать долго и нудно: можете смело пропускать доказательства и возвращаться как было что-то не понятно. В любом случае, их читать действительно сложно. Осилите хотя бы Кормена - медаль Вам уготована.

    Но и язык нужно знать и понимать. Поэтому здесь пора заняться и тем, для чего java предназначена - энтерпрайзом. А именно, умением не столько программировать, сколько разрабатывать продаваемые продукты. Здесь подойдёт филосифия java для начала. Когда наследование перестанет Вас пугать (или наоборот, пройдёт время чересчур увлечённого наследования всего и вся), можно приступить к банде четырёх. В то же время, умея строить сложную архитектуру, мы всё ещё смутно знаем что под капотом у java. Так что можно почитать про оптимизации в JVM (читал англ, не знаю есть ли перевод), ну и покопаться в openjdk, если будет излишняя увереность, лишнем не будет.

    Собственно, это roadmap на очень долгое время. С самых начал до седой старости будете изучать java. Вполне возможно, что к тому времени, как начнёте банду четырёх (если начнёте), уже подойдёт долгожданная java 2.0 и всё нижеописанное потеряет значение, но чем чёрт не шутит? К слову, Кормен, и Кнут, и философия, и банда четырёх остануться, это скорее фундаменальные книги.
    Ответ написан
    Комментировать
  • Какой IPhone выбрать для тестирования приложений?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    iPod Touch будто-бы создавался специально для вас. А ещё - это шикарный плеер.
    Ответ написан
  • Как написать условие?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Если хочется своего велосипеда вместо использования Array.every (спасибо @k12th ), то как-то так:
    var num = 5,
        all = true,
        arr = [1, 5, 7, 9];
    
    for(var i = 0; i < a.length && all; i++) {
        if( all )
            all = arr[i] == num;
    }

    Можно даже более по-извращенски:
    for(var i = 0; i < a.length && (all = arr[i] == num); i++);
    Ответ написан
    Комментировать
  • Есть ли библиотеки облегчающие построение графиков на SVG?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Попробуйте рафаэля.
    Ответ написан
    Комментировать
  • Зависает браузер при выводе большого объема записей с БД (items.length >= 5000)?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Как вариант, можно по /ajax/items.php возвращать не все 5000 элементов, а кусками. Например, по /ajax/items.php?count возвращать количество страниц, а по /ajax/items.php?number возращать страницу из 500 элементов. И при добавлении на страницу использовать небольшую задержку в миллисекунду.

    Правда, вопрос: почему нельзя сделать PHP-скрипт, который возвращал сразу готовую страницу со всем контентом. Зачем ajax?
    Ответ написан
    3 комментария
  • Безопасный сервис электронной почты

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Ответ прост - заведите свой. Припаркуйте домен к недорогой VPS, поднимайте сервер и пользуйтесь наздоровье. Алсо, gmail умеет парковать домейны.
    Ответ написан
  • Какое есть хранилище файлов, не хранящее файлы на компьютере?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    А зачем? Медленно и проблематично, сам пользовался, если коннект рвался, а кто-то хотел записать в папку, то возникала ошибка. Хотя, мб wuala это как-то решила. Я же завёл дома samba и настроил vpn к роутеру. В общем, если коннект хороший и стабильный очень удобно, работаешь, не замечая что это по сетке, даже видео при жирном канале смотрелось отлично.
    Ответ написан
    Комментировать
  • Какие есть 2 way sms провайдеры в Черногории?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    А зачем вам виртуальный номер? Заводите свой! Главное выбрать тариф, в котором смс-ки дешёвые.
    Ответ написан
    3 комментария
  • Как/на чем заработать обычному верстальщику?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Общие советы, что уже были даны:
    + учи js,
    + учи english хотя бы до intermediate,
    + генерируй портфолио,
    + какой же верстальщик без своего сайта? сделай его идеальным и храни там своё портфолио и контакты, по возможности ставь на создаваемые сайты свой копирайт со ссылкой на портфолио (конечно, если заказчик не возражает),
    + в свободное время потерзай какой нибудь backend (RoR или Django)

    От себя добавлю: бросай PHP и никогда о нём не думай, может он и становиться лучше, но ему никогда не избавиться от своего тёмного прошлого (и переменных со знака доллара, вот ужас!). Когда будет пара хороших отзывов, смело иди на фриланс биржи, вроде odesk. C RoR и хорошим, красивым, технологичным, кроссбраузерным фротендом там вполне можно иметь и по $100 в час.

    Ах да, учись быстро копипастить. Использовать плагины. Избавляйся от всяческих попыток напилить велосипед, даже если так будет быстрее и лучше. Со временем, это мастерство позволит тебе делать сайты со скоростью пулемёта. Тогда ты постигнешь тёмный дзен и получишь свою порцию печенек. Я на полном серьёзе, когда ты поднимаешь сервер за 2 минуты, ставишь на него Bootstrap за 1 минуту и подгоняешь его (натягиваешь вёрстку из заранее созданных темплейтов) за 5 минут, обвешиваешь нужными виджетами из js, html5 и css3 за 5 минут и через 15 минут после получения заказа отправляешь заказчику наступает странное чувство эйфории. Конечно, это непостяжимый дзен, как всегда, по закону Мёрфи, какая-нибудь библиотека отвалиться, что-нибудь заглючит, а где-нибудь поползёт вёрстка и дебаг займёт пару часов, но всё же, делать полноценный сайт за 3 часа - бесценно. Для всего остального есть MasterCard.
    Ответ написан
    48 комментариев