• Mongo: хранение комментариев и лайков в отдельной коллекции или в атрибутах самого файла?

    onqu
    @onqu
    weasy
    Если вы на 100% уверены, что размер документа не превысит лимит (если не ошибаюсь это 16мб), то хранить, как вложенный массив, очевидно будет удобнее. Иначе в отдельной коллекции. Но если хранить отдельно, нужен кеш общего количества лайков, так что нужно будет клепать эту логику.

    Плюс отдельного хранения еще и в том, что удобнее производить массовые обновления, если они требуются. При вложенном хранении уменьшается количество обращений в бд.
    Ответ написан
    3 комментария
  • Куда лучше всего загрузить файл?

    zooks
    @zooks
    Frontend
    Dropbox - одно из лучших облачных хранилищ.
    Ответ написан
    1 комментарий
  • Как избавиться от бота, который постоянно регистрируется?

    onqu
    @onqu
    weasy
    Чтобы у вас зарегистрироваться, каптчу вводить не надо. У вас валидация только на клиенте.
    Заполняем email, имя и ставим любое значение в textarea id="g-recaptcha-response" -> submit, profit.

    upd: или на сервере в коде неверная валидация
    upd2: запускаем прямо из консоли браузера, значения свойств input можно менять

    var input = {
      // имя
      name: 'Иванов',
      // email
      email: 'ivanov.no.captcha@mail.ru',
      //
      'g-recaptcha-response': 'whatever'
    };
    
    var formId = 'reg_form';
    var query  = '[name=email],[name=name],[id=g-recaptcha-response]';
    
    var form = document.getElementById(formId);
    var fields = form.querySelectorAll(query);
    
    for (var i = 0; i < fields.length; ++i) {
      var field = fields[i];
      var name = field.getAttribute('name');
      var value = input[name];
    
      $(field).val(value);
    }
    
    $(form).submit();
    Ответ написан
    Комментировать
  • Как построить, структурировать изучение и повторения анг. языка?

    Extremesarova
    @Extremesarova
    Биоинформатика, машинное обучение, анализ данных.
    1) LinguaLeo. Это онлайн-платформа для изучения и практики иностранного языка, на которой по данным сервиса, на сентябрь 2014 года на нём зарегистрировано 9 500 000 пользователей.
    С помощью этого сайта можно изучать грамматику, тренировать слова, читать тексты, слушать аудио, смотреть видео (все, конечно же, на английском языке). Грамматических курсов огромное количество для всех уровней владения языком (многие из них платные, но их цена равна 1-3 занятиям у репетитора). Написаны профессионально с примерами и заданиями для проверки знаний. При регистрации для нормального обучения необходимо будет купить годовой "золотой статус" за 700-1000 рулей (цена день ото дня варьируется), который позволит вам открыть доступ ко всей функциональности (кроме некоторых платных курсов).
    LinguaLeo постоянно начинает сотрудничества с крутыми международными образовательными онлайн-платформами. Последние из них: Coursera, British Council, TED. Эти платформы предоставляют, в основном, видео, в связи с этим, в видеоплеер был встроен специальный инновационный интерактивный перевод, который позволяет быстро добавлять слова из видео себе в словарь, а потом изучать и тренировать их.
    При регистрации будет проведен тест на знание английского языка и будут предоставлены индивидуальные рекомендации по изучению. Там есть огромное число тематических наборов слов для изучения. Более того, вы можете сами создавать такие наборы. Я вот уже давно это практикую, например, для разных книг у меня разные наборы слов.
    Сервис имеет мобильные приложения для всех популярных платформ.
    Уникальный сервис (я уже с 2012 года здесь занимаюсь). Не нужно жалеть 1000 рублей! An Education is Priceless.
    Также для lingualeo есть удобное расширение для браузера (у меня chrome), которое при нажатии на английское слово сразу дает перевод, озвучивает произношение и позволяет добавить его к себе в словарь для дальнейшего изучения.
    2) Duolingo. Отличный сервис для изучения языка. На десктопной версии сайта вы сможете тренировать грамматику (без теории, только практика), а так же сможете переводить тексты и загружать свои. То есть, если вы видите какую-нибудь интересную статью на каком-нибудь сайте, то можно ее загрузить на этот сайт и удобно переводить - будет предложен перевод для каждого предложения и каждого слова.
    Имеются приложения для iOS и Android. В мобильных версиях только грамматика.
    3) Memrise. Лондонский стартап. Тут можно тренировать слова. Реализован интервальный алгоритм запоминания. Кто будет заниматься рекомендую курс Upper-intermediate English от Cambridge (тут уже нужно знать базовые слова) и курс, который поможет выучить эти базовые слова.
    4) Anki. Невероятно мощная и бесплатная программа (windows, mac, android, для iOS платная), которая использует технику интервальных повторений, о которой говорилось в предыдущем пункте. Все можно настроить под себя :)
    Очень крутой сервис. С помощью интервального алгоритма слова запоминаются очень хорошо даже, если сначала вы их совсем не знаете.
    Видите незнакомое слово, добавляете его, пишите перевод, добавляете произношение, и пример использования.
    4) Cambridge - English Grammar in Use. Это приложение, основанное на знаменитой книге. Тут полный курс грамматики (есть британское произношение примеров - очень хорошее). Есть приложение и для iOS. Стоит ~ 600 рублей. Полностью на английском. И для его выполнения рекомендую пройти базовые слова (можно использовать пункт 3).
    5) BBC Learning Language. Отличный сайт, созданный специально для изучения английского языка. Можно выбрать уровень знаний. Там вы найдете курсы, видео, подкасты.
    Да, точно, подкасты.
    6) Подкасты. Есть, по крайней мере, 3 приличных подкаста по изучению английского языка.
    ESL Podcast - самый лучший подкаст (IMHO). Два типа выпусков : диалог и беседы на определенные темы.
    6 Minute English - часть проекта BBC Learning Language. Тоже очень крутой подкаст.
    British Council - слушайте подксаты, смотрите видео, все все все.
    Grammar Girl, The English We Speak, ...
    7) Видео и каналы на YouTube. Мне больше всего нравится группа каналов от сайта engvid. Там интересно рассказывают про разные вещи: и грамматика, и произношение, и идиомы, и фразовые глаголы и многое другое. На сайте можно выбирать видео по уровню владения языком. Если вы зарегистрируетесь на lingualeo, то у них есть специальный раздел при сотрудничестве с engvid с тем интерактивным плеером, про который я писал раньше. Очень мне эти видео нравятся.
    Видео - ororo.tv . Тут можно смотреть разные сериалы и мультики, но больше часа в день платно. Этим сервисом я не часто пользовался последнее время.
    8) Совсем недавно узнал про такую возможность обучения. Создателя этой системы зовут A.J. Hoge. А сама система называется Effortless English System.
    Во-первых, у него есть подкаст. Можно слушать тут. А, если у вас есть устройство на андроиде или iOS, то там можно скачать какой-нибудь проигрыватель для подкастов, найти там этот подкаст и многие другие, и слушать там. Называется он Effortless English Podcast.
    Во-вторых, у него есть курсы, которые описаны на сайте (рейтинг по 180 отзывам 4.73/5 - круто).
    Вот тут можно видео посмотреть на кого нацелен этот курс. Я не знаю какой у вас уровень по знанию слов и грамматики (его можно поднять с помощью предыдущих пунктов, для слов хорош memrise, для всего остального lingualeo), но вам должно подойти в любом случае (как и мне), потому что разговорный английский очень сложно развить, не разговаривая с носителями языка, а тут должно быть очень классно.
    Подкаст бесплатный, а сами курсы вы можете найти на популярных трекерах. Точнее здесь. И там еще есть ссылка на Power English. Вот я него я и хочу начать, а пока только подкасты слушал.
    Общие рекомендации:
    Английским рекомендую заниматься каждый день. Выделять, хотя бы, 20 минут (лучше час).
    Кроме специальных сервисов вы можете читать книги на английском (можно на сайте LinguaLeo). Для начала можно читать детские сказки (простая грамматика и слова), потом переходить к популярным книгам, сюжет которых вы знаете и читали не раз - к таким, которые больше всего нравятся. Мне вот нравится серия книг про Гарри Поттера и я её перечитываю на английском языке. Я еще скачал аудиокниги по этой серии и очень классно слушать, и одновременно читать - получается сразу два навыка тренируются. Как я уже сказал, что на lingualeo есть эта серия и я читаю там - удобно, видишь незнакомое слово, ткнул на него и оно добавилось в словарь, и потом можно проходить его на различных тренировках (слово - перевод, перевод - слово, собрать слово из букв, аудирование, и другие). Кстати, на lingualeo тоже добавили интервальную тренировку, но она чуть хуже, чем на memrise.com.
    Более того, я рекомендую вам читать новости на английском (лучше конечно британские) - The Guardian, The Telegraph; но и американские можно, например, Business Insider.
    Ну и, конечно же, читайте тематическую литературу. Там будет необходимая в профессии лексика.
    Ответ написан
    2 комментария
  • Работа на Upwork без подвязки карты?

    azat-io
    @azat-io
    Да, спокойно.
    Настраивать вывод денежных средств для работы необязательно.

    Когда нужно будет вывести деньги - тогда привяжете карту.
    Ответ написан
    Комментировать
  • Работа на Upwork без подвязки карты?

    @Copperfield
    Android dude
    Абсолютли.
    Ответ написан
    Комментировать
  • Подойдет ли для фриланса Python по Марку Лутцу?

    Olej
    @Olej
    инженер, программист, преподаватель
    Сколько будут платить( если вообще будут:))

    После Лутца много платить не будут ;-)
    Ответ написан
    9 комментариев
  • Как заставить пользователя зарегистрироваться?

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

    А чтобы действовать не кнутом, а пряником, можно например добавить ачивки зарегистрированным пользователям
    Ответ написан
    Комментировать
  • Какой способ вывода средств из Upwork удобнее?

    opium
    @opium
    Просто люблю качественно работать
    нет там комиссии 20 баксов и 10 тоже
    удобнее тот который для вас удобнее и законнее
    Ответ написан
    Комментировать
  • Не избыточны ли коментарии?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Есть книга "Совершенный код". Прочитайте ее разок. Попрограммируйте. Прочитайте через год еще раз. Многое встанет на свои места. После второго прочтения МакКонела прочитайте про "Чистый код" и затем читайте про рефакторинг. После этих трех книг Вы будете нас учить как писать код, а не мы Вас!

    Рекомендую поступать так:
    1. Если код нуждается в комментариях, то напишите по-английски, а затем создайте новый метод с использованием этого комментария и перенесите туда этот кусок кода. Возьмем к примеру Ваши "удаляет все записи" на код "clear : function(){" . Как бы вы написали по-английски? Наверное так "clear all records' , а почему бы текущего названия метода clear() не использовать комментарий clearAllRecords() ?
    2. Задавайтесь вопросом: "Если это не открытый метод и я хочу закомментировать его, то может быть мне стоит его переписать?". Открытые методы это интерфейс, которым будут пользоваться другие программеры. Он ОБЯЗАН быть задокументирован. А внутренний код либо покрывается модульным тестом, который поясняет для чего нужен кусок кода и какой должен давать результат и дает ли? Другими словами ваш модульный тест это САМЫЙ лучший вид документации
    3. Пишите всегда комментарий об алгоритмах, стандартах, положениях, хитрых трюках. К примеру "Этот алгоритм взят из книги Кнута том 2 стр. ЧЧЧЧ", тогда ваш коллега в случае сомнений пойдет и почитает как работает этот код в теории и поймет как должен работать и сравнит с тем что есть
    4. Если же модульного теста нет, значит поленились и это вполне возможно тема для рефакторинга. На простой код, просто написать тест! То есть простой код - читать просто и тестировать просто!
    Ответ написан
    4 комментария
  • Не избыточны ли коментарии?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    абсолютно бесполезные комментарии,
    любой нормальный разработчик понимает что такой key, value, delete, clear, get -> писать каждый раз что это такое это извращение.
    также извращение использовать сокращения -> пишите код понятно, тогда и комментарии не нужны, чем писать комманду del или D , а потом указывать что это delete
    в эпоху автокомплитов, сокращения абсолютно бесполезны, и только ухудшают восприятие.
    опишите что вы ожидаете на входе, и какой результат от работы хотите получить, на этом можно остановиться -> комментарии по коду делайте если только что-то там действительно хитрое происходит, или потенциально например слабые места, в которых вы не уверены (например у вас указанно про бесконечную рекурсию, это полезно). остальное не нужно, остальное должно быть понятно из самого кода, понятных названий переменных функций и тд.
    Ответ написан
    1 комментарий
  • Как правильно обновлять таблицу товаров интернет магазина?

    opium
    @opium
    Просто люблю качественно работать
    Тот который просит заказчик
    Все методы быстрые
    Не использовал бы библиотеки кода строчек двадцать сорок будет
    Ответ написан
    Комментировать
  • Где найти Open Sourse проекты?

    Tiendil
    @Tiendil
    Разработчик ПО.
    Присоединяйся к разработке the-tale.org

    Все исходники открыты: https://github.com/Tiendil/the-tale

    Берёшь задачу делаешь, делаешь пул-реквест, получаешь критику, пока всё правильно не будет сделано, и код попадает в рабочий проект.

    В вики на гитхабе рассказано подробнее.
    Ответ написан
    Комментировать
  • Где найти бесплатные онлайн уроки HTML и CSS?

    @IceJOKER
    Web/Android developer
    Действительно, где?
    82Q7EWlC3Q73rd.png
    Ответ написан
    Комментировать
  • Тенденция к перехвату проектов/клиентов сотрудниками с последующим увольнением. Что делать?

    opium
    @opium
    Просто люблю качественно работать
    из хорошей компании сотрудниу наврятли уйдет, видимо что то в вашей компании не так, что сотрудники не только валят, но ещё и клиентов уводят.
    посмотрите вокруг
    Ответ написан
    Комментировать
  • Тенденция к перехвату проектов/клиентов сотрудниками с последующим увольнением. Что делать?

    s0ci0pat
    @s0ci0pat
    I'm Awesome
    Если такое с вами случается часто, значит проблема не в сотрудниках.
    Ответ написан
    8 комментариев
  • Тенденция к перехвату проектов/клиентов сотрудниками с последующим увольнением. Что делать?

    @vilgeforce
    Раздолбай и программист
    А деньги платить вы им пробовали? Ну и вообще условия лучше чем у конкурентов предлагать.
    Ответ написан
    14 комментариев
  • Ресурсы по обучению iOS разработке?

    @Riedel87
    Oracle/Python/IOS Developer
    Привет!
    Есть русский сайт, где вся документация на русский переведена, также они книгу выпустили.
    Все касается только Swift 2.1 - кстати, они молодцы, поддерживают в актуальном состоянии версию языка (обновляют сайт).
    Также там есть у них видеокурсы (по подписке), в общем, зайди и глянь!
    Сайт
    Ответ написан
    Комментировать