• Как классифицировать текст с помощью нейронной сети?

    Arseny_Info
    @Arseny_Info
    R&D engineer
    1) Почистить данные (убрать стоп-слова, спецсимволы, привести в нормальную форму и т.п.)
    2) Векторизовать данные (bag of words, tf-idf, n-grams... )
    3) Разделить выборку на train/test.
    4) Собственно, обучить классификатор (не начинайте с нейросетей, начните с чего-то более простого типа random forest).
    5) Сделать кросс-валидацию, ужаснуться от результата, начать чинить проблемы на каждом шаге.

    Очень базовый туториал scikit-learn.org/stable/tutorial/text_analytics/wo... Гораздо менее базово - nlp.stanford.edu/IR-book/.
    Ответ написан
    Комментировать
  • Напомните, что за плагин такой который UML делает по спагетти-коду PHP?

    uakoB
    @uakoB Автор вопроса
    эта тулза называется PHPModeler. прикрепляю ссылку.
    marjan.fesb.hr/~jomaras/phpModeler
    Всем спасибо) надеюсь кому-нибудь пригодится
    Ответ написан
    Комментировать
  • Сколько стоит IT-услуга на фрилансе? Как узнавать вилки цена\(качество=профессионализм)?

    @murlogen
    Никак.

    На биржах много новичков (которые ничего не умеют), которые готовы работать за еду.
    Поэтому никаких оптимальный показателей выявить невозможно.

    И не являясь специалистом в сфере - ты не оценишь никак.

    Проконсультироваться у рекомендованного тебе специалиста по поводу заказа и исполнителя.
    Возможно заплатить ему за консультацию немного. А может и бесплатно с удовольствием сделает - людям нравится поучать.
    Но, ВАЖНО, чтобы этот специалист-консультант был заведомо классным.
    Которого тебе РЕКОМЕНДОВАЛИ.

    Ну или просто методом проб и ошибок (много денег профукаешь, готовься).

    Со временем наработается твой личный опыт. Если будешь постоянно на биржах заказывать.

    ВИЛОК НЕТ.
    Это не одинаковый товар в разных магазинах.
    Это:
    1. Очень разные люди, с разной квалификацией и разной самооценкой - то есть работа будет РАЗНАЯ, а не одинаковая как товар.
    2. Эти люди могут по разному понять вашу работу (кто-то лучше, кто-то хуже и потом просить еще денег за доработки).

    создавать заявку - половина вообще не читает что написано, либо вилки выходят очень пространные, а вдаваться в критерии своих расценок просто так тоже мало кто хочет, опять таки многие просят бюджет озвучить, да и представления о качестве у всех субъективные.


    Кто не читает - тех сразу в топку. Есть даже метод: вставлять в описание специальные слова (пароли) и просить их называть в заявке. Если не назвал - сразу в топку. Если он даже не читает заявку (которая банально может не соответствовать его квалификации), то работать с ним не стоит.

    По поводу пространных вилок: скажу про свою программистскую профессию. Задача должна быть описана ОЧЕНЬ ЧЕТКО и очень жестко описаны все граничные условия, чтобы вы получили маленькую вилку. И дело даже не к разнице самооценки квалификации программиста (хотя и это имеет место), а в том, что один человек задачу понял, второй понял по своему (проще, дешевле), третий понял что задача сложная, но назвал маленькую цену, в надежде сделать за эту сумму костяк, а потом, когда клиенту будет некуда деваться, потребовать за доработки еще денег.

    Подробнейшее описание - уменьшает эти риски.

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

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

    Singaporian
    @Singaporian
    Половину из списка можно сразу выкинуть. Например Kibana занимается визуализацией логов, а не сбором. В ELK стэке для этого служит Logstash. А Blackfire - инструмент для перфоманс-тестирования + метрики.

    Дальше нужно определиться, где вы хотите разместить сервис. Если в облаке, то New Relic, Loggly и Logentries остаются в списке (если ваш сервис на AWS, то добавляется CloudWatch), но из него уходят LogStash и GrayLog2. Но если хотите держать сервис у себя, ваш дальнейший выбор только между LogStash и GrayLog2.
    В первом случае у вас продолжение поисков -- на следующем этапе уже встает вопрос цены продукта.

    =====
    "Так же интересно чтобы можно было собирать логи ошибок nginx/mysql/postgres, не требовало особых плясок с бубном"

    Все три сервиса написаны на C-lang. Это значит, что, в отличии от Java, они не будут выкидывать ужасные стэктрейсы на 100500 строк, а всегда будут укладываться в 1024 символа. Именно этот предел есть у стандартного syslog. Поэтому пусть они и дальше пишут в syslog, а уже в нем вы настроете куда редиректить логи дальше. Таким образом вам не надо будет при смене сервиса сбора логов бегать по всем нджинкасам и постгрессам и менять настройки - достаточно будет поменять в одном месте, в syslog.
    Но! Если будет Java приложение, то такое не пройдет и вам потребуется что-то типа GELF, чтобы успешно доставить полный размер exception.
    Ответ написан
    Комментировать
  • Как учить что-то новое и быстро не забывать?

    Куча практики
    Море практики
    В какой-то момент для тебя какой-то аспект просто становится обыденным и простым, как ходьба, и забыть это почти невозможно.
    Но это только благодаря океану практики.

    PS: уметь кодить и помнить что-то - две абсолютно разные вещи. Практика и теория тут не подходят для сравнения.
    Ответ написан
    Комментировать
  • Макеты для очень начинающего верстальщика?

    сам придумывай - это же элементарно
    в ином случае игнорируй все, что касается JS
    Ну и верстальщик без JS - не верстальщик
    Верстка это как два пальца, можно за неделю-две научиться всему что надо и потом постигать остальное на практике.
    Лучше сразу с JS работай. И даже не думай о jQuery, только посмей притронуться к библиотеке, не научившись нативному JS. Я прослежу.
    Ответ написан
    6 комментариев
  • Сколько стоит IT-услуга на фрилансе? Как узнавать вилки цена\(качество=профессионализм)?

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

    @nirvimel
    1. Купите недорогой VPS (от $15/год, можно даже дешевле) и поднимите на нем личный VPN. В Сети есть куча подробных руководств как это делается. Только не надо говорить, что у вас нет на это денег, интернетом вы же не бесплатно пользуетесь. Просто примите это как небольшую дополнительную плату за интернет за ваш спокойный сон.
    2. Работая через VPN (обязательно), заведите себе новый почтовый ящик на зарубежном сервере у компании, у которой нет никакого бизнеса и любых коммерческих интересов в РФ. Пусть это будет не мажорный гигант индустрии, а скромная компания, малоизвестная в РФ. Главное - это наличие SSL в веб-интерфейсе и в IMAP, в остальном почта есть почта, она просто работает, и этого достаточно.
    3. Работая через VPN, заведите себе новый аккаунт в vk facebook и/или google (если вы неспособны полностью отказаться от использования социалок). При регистрации указывайте место проживания подальше от РФ. Учитывайте, что все гиганты индустрии, имеющие большой бизнес в РФ, полностью сотрудничает с ГБ, но аккаунты нерезидентов, зарегистрированные и посещаемые с зарубежных IP, они не станут сливать по умолчанию (но по первому запросу сольют мгновенно). Так что забудьте про любые приваты в социалках, ведите все общение так, как будто все это читает весь ваш квартал и все те, кому бы вам меньше всего хотелось это показывать. Для приватного общения пользуйтесь только безопасной почтой (пункт 2) и защищенными чатами, на telegram jabber на зарубежных серверах. Все это касается только тех, кто не может окончательно завязать с пагубной зависимостью от соц.сетей. Очевидно, наиболее безопасным (и полезным для здоровья) вариантом является полный отказ от социалок.
    4. Не вбрасывайте в старые ящики и соц.аккаунты адреса и ссылки на новые чистые, не указывайте новые адреса в любых исходящих и старайтесь, чтобы они не попали во входящие. Помните, что в любой социалке и любом веб-интерфейсе почты (сотрудничающей) кнопка "удалить" скрывает удаляемое только от вас самих и не более того.
    5. (Самый неприятный пункт) Забудьте про vk, mail.ru и российские gmail и facebook. - КАК? - Так! Я понимаю, что это не легко, что они давно стали частью вашей жизни. Но это придется сделать! Поговорите сами с собой, спросите себя что для вас важнее: ваша личная безопасность, спокойствие и крепкий сон или старые привычки, которыми вы опутаны, и которые не хотят отпускать вас? Учтите, что продолжая пользоваться местными социалками (и сотрудничающими иностранными), вы продолжаете каждый день генерировать на себя тонны компромата, который может обернуться против вас в самый неожиданный момент самым неприятным образом. Проявляя активность в своих старых аккаунтах, вы не даете им "протухнуть" и не даете даже формального повода добрым компаниям снести их через пол года, после истечения отведенного законом срока хранения (как известно, vk не ограничивается минимальным сроком хранения, а хранит все метаданные и текст практически вечно за исключением видео/аудио).
    Ответ написан
    26 комментариев
  • Чем чревато заключение NDA?

    noby2000
    @noby2000
    Founder.
    1) ничем не чревато. NDA подписывается с целью общаться с Вами спокойно и открыто, в том числе с конфиденциальной информацией. В западных юрисдикциях более распостранено. Да, NDA подписывается и перед собеседованием, и это не означает, что тебя возьмут на работу. Лично я считаю, что любое обсуждение деталей проекта должно начинаться с NDA.
    2) паспортные данные Ваши нужны для Вашей идентификации. Вас не смущает, что покупая машину, квартиру, приходя к нотариусу, заказывая авиабилет, устраиваясь на работу, заключая любой другой договор, давая расписку, Вы указываете паспортные данные? Правда, волноваться не о чем...
    3) А вот Вашей большой ошибкой будет не подписать договор найма, авторского заказа или иным образом не урегулировать ваши трудовые отношения. Не забыть там указать момент перехода авторских прав на разработку к заказчику (например, момент оплаты). Вот тут-то и кроется загвоздка: работая без договора но с NDA, Ваш код может являтся ИХ коммерческой тайной независимо от оплаты.
    Ответ написан
  • Как установить php7 pdo_pgsql через Dockerfile?

    Для Debian или Ubuntu попробуйте установить libpq-dev.
    Ответ написан
    1 комментарий
  • Что нужно знать php разработчику для изучения фреймворка? Ваше мнение?

    AmdY
    @AmdY
    PHP и прочие вебштучки
    Нужно знать буквы, обязательно английские, русские опционально.
    Даже через десяток лет вам нужно будет постоянно читать и узнавать новое. Окрываете, читаете, если встречаете что-то незнакомое - гуглите.
    Ответ написан
    2 комментария
  • Корпоративная политика для android-смартфонов - реально?

    074909
    @074909
    группа медленного нереагирования
    MS Intune вкупе с SCCM (aka configmgr)
    https://en.wikipedia.org/wiki/Microsoft_Intune
    https://technet.microsoft.com/en-us/library/jj8841...
    This walkthrough shows you how to configure Configuration Manager to manage iOS, Android (including Samsung KNOX)


    Только есть существенный минус - на андроиды сертификаты не доставляет, так что весь остальной функционал и не разглядывал пристально и мнения не имею.
    Ответ написан
    Комментировать
  • Корпоративная политика для android-смартфонов - реально?

    @Pavkhv
    электронщик, сисадмин, ТВ, радио, медиапродакшн
    тащемта есть оно: тыц!
    Гуглить "EMM MAM android"
    Ответ написан
    Комментировать
  • Практическое использование схем в Postgresql - когда они нужны?

    В целом, понимайте схемы как пространства имен. Схемы помогают логически организовать структуру БД. Различные приложения или компоненты приложений внутри себя имеют более высокую связность, чем между собой, тоже самое и с данными в БД - часто таблицы сами по себе организуются в логические группы, причем внутри группы связей довольно много (внешние ключи, какие-то общие хранимые процедуры и т.д.), а между этими группами - мало или нет вовсе.

    Важно понимать, что различные БД плохо подходят для логического группирования, т.к. разбиение по базам данных нужно скорее для администраторов, а не для приложений. Плюс, в большинстве СУБД, где существует понятие схемы, возможно ставить внешние ключи на таблицы в другой схеме, но нельзя на таблицы в другой БД. Иными словами, отдельные БД удобно создавать тогда, когда вы разделяете данные абсолютно не связанных приложений или сервисов. Например, складского учета и форума поддержки пользователей. С другой стороны, если вы хотите логически разделить таблицы в соответствии с компонентами одного приложения (например, корпоративный портал: 4 таблицы для поддержки авторизации, 10 таблиц для поддержки форума, еще 5 для чата со службой поддержки или отделом продаж) - то именно схемы будут удобным механизмом для этого.

    Если сформулировать коротко, то разбиение на базы данных - это для администраторов БД, а разбиение на схемы - это для администраторов данных и разработчиков приложений, чтобы им же было легче.

    А что будет если несколько юзеров будут на одну public-схему коннектиться?

    Помимо того, что схема - это пространство имен, в большинстве СУБД это еще и пространство безопасности. Даже в рамках одного многокомпонентного приложения имеет смысл ставить границы безопасности для ограничения возможных потерь и разрушений в случае компрометации одного из компонент.

    Вот допустим, у вас есть отдельная схема для таблицы авторизации и аутентификации и отдельная - для корпоративного форума. Сервис авторизации у вас выполнен отдельно от форума (например, авторизация выдаёт токены пользователю, с которыми он потом может зайти на форум). С точки зрения безопаности было бы логичным выдать сервису авторизации и форума различных пользователей в базе - тогда, при взломе форума невозможно будет получить доступ к паролям в базе или изменить права на портале, подправив данные в таблице ролей. Конечно, многие СУБД разрешают ставить права на отдельные таблицы, однако схема в данном случае играет роль контейнера и позволяет проставить единые правила для всех таблиц внутри неё.

    то есть при работе в постгре предпочтительнее вместо отдельных баз делать разные схемы в одной

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

    Вот вам еще хороший пример. У вас есть приложение для ведения бухгалтерии и складского учёта на фирме. При этом сложилось так, что вам нужно хранить на одном сервере данные нескольких разных фирм (например, вы предоставляете готовый сервис под ключ нескольким клиентам). В этой ситуации более чем логично хранить данные разных клиентов в разных БД, а данные бухгалтерского и складского учета - в различных схемах в рамках одной БД конкретного клиента.
    Ответ написан
    2 комментария
  • Как организовать структуру нескольких машин vagrant + ansible || docker для разработки?

    AfsmNGhr
    @AfsmNGhr
    Full stack web developer
    Вам более чем подойдёт docker + docker-compose.
    Делаете images - php5.6, php7, остальное в сети легко найти и использовать.
    (p.s. можно не делать, но так быстрее разберётесь)
    Ни каких ssh ключей в контейнеры не нужно, порты делать разными, если прокидываются на хост.
    Код на хосте, монтируете в контейнеры или добавляете.
    Для разработки лучше монтировать и работать с локальной папкой.
    Менять конфиги в docker-compose.yml директивы environment или env_file .
    Бекапы можно прям контейнерами или tar.gz -> docker load tar.gz container ...
    На каждый проект по-любому 1 VM, что весьма накладно, если хотите одновременно работать с ними,
    или docker container приложения + containers services (nginx , mysql, redis), которые можно использовать в разных проектах(php5, 7).
    Ответ написан
    Комментировать
  • Передача значения по ссылке. В чём проблема?

    Передача параметра функции в качестве ссылки вызывало предупреждение в 5.3 и фатальную ошибку 5.4. Подробнее по ссылке, цитирую:
    Замечание: В вызове функции отсутствует знак ссылки - он есть только в определении функции. Этого достаточно для корректной передачи аргументов по ссылке. Начиная с PHP 5.3.0, вы можете получить предупреждение о том, что передача переменной по ссылке устарела, если используете & в foo(&$a);. Начиная с PHP 5.4.0 передача переменной по ссылке стала невозможна, поэтому использование этого приема приведет к фатальной ошибке.


    Корректнее в объявлении функции принимать значения по ссылке:
    function func(array &$par) {
      $par[0] += 5;
      echo $par[0] . "<br>";
    }
    Ответ написан
    7 комментариев
  • Что лучше pymorphy2 vs phpMorphy для обработки русских слов?

    @kazmiruk
    Я бы взял pymorphy (я даже не выбирал в принципе, так как php не приемлю, но не суть), так как phpmorphy не поддерживается больше разработчиком (последнее изменение 4 года назад) и Вы останетесь со всеми вопросами и багами один на один.
    Какой инструмент имеет круче предсказатель - накатайте тестик по формированию частотных отношений лемм и натравите на хабр, к примеру. А потом смотрите на результат (думаю он не будет отличаться даже) На pymorphy это примерно 20 строк кода. На phpmorphy думаю не многим больше. Результат работы pymorphy по определению части речи и выдергивания лемм меня более чем удовлетворил.
    По скорости - разработчик pymorphy заявляет, что одной из задач для него была оптимизация, поэтому есть шанс, что работать будет быстрее.
    Ответ написан
    Комментировать
  • Попросили проверить код, на что смотреть нужно?

    apavlyut
    @apavlyut
    www.pavlyut.ru
    Все комментаторы совершили одни и те же ошибки управления потому что, при всем уважении, скорее всего за эти ошибки (в стратегировании) они не платят из своего кармана.

    На пальцах отвечаю на ваш вопрос:

    1) По структуре - при проверки качества кода / решения / задачи / продукта / настройки сервера и так далее нужно проходить по списку (чеклист) критериев контроля качества - обычно они выглядят как списки определенных параметров которые может замерить третье лицо или сама система - формат проверяемого параметра прямо вот соответсвует / не соответсвует. На сколько процентов пройден чеклист - на столько процентов результат "качественный"
    2) Почему ребята ошиблись - потому что стали приводить конкретные списки. Дело в том что у каждого проекта / сиутации / команды / набора компетенций - свои наборы таких чеклистов на разные ситуации. В больших командах сущесвтует основной чеклист который регламентирует CodeReview - и за него отвечает как правило тим лид - он его обновляет, развивает, обосновывает внесенные правила и следит за тем чтобы ПЕРЕД началом разработки все разработчики были ЗАРАНЕЕ ОЗНАКОМЛЕНЫ с этим порятком проверки качества, а все потому что:
    3) Количество стайлгайдов и критериев в приципе существует огромное количество - и то как каждому в одной части света / компании удобно делать одно дело - не регламентирует ни разу что именно так же другому человеку в другой ситуации применять эти правила к своему контексту. В виде открытых стайлгайдов они существуют для накопления практик и навыков в первую очередь для их же развития (процесс формулировки наводит порядок в голове) а также дают возможность "на них конкретно" нанизать точечные ответы огромного сообщества людей, и получить те самые разные взгляды на ситуации, и по возможности опять же привести к общему знаменателю. Но это все мелочи жизни, а в вашем случае вы совершите серьезную ошибку если прямо сейчас возьметесь (примите на себя ответственность) проверять чужой код на предмет оценки, потому что:
    4) Вас явно используют как внешнего эксперта на которого можно сослаться, от которого можно получить якобы аргументацию для давления на свою позицию при решении какой-то возникшей ситуации во взаимоотношениях клиент-разработчик на проекте куда вас приглашают за экспертизой.
    Если вы, не предупредив, о том что "качество кода" начинается с декларации этого качества (в случае если речь идет о проверке этого внутреннего качества в рамках сотрудничества, а не самих задач которые поставлены перед создаваемой системой - фичесов) - любая ваша оценка будет недостоверна контексту ее применения (вы напишете про строки или еще что-то - а у человека будут либо взыскивать деньги / либо недоплатят за работу / или инкапсулируют в договоренности пост фактум за те же деньги работу над соотвествием определенным стилям - это все работа которая должна быть оплачена). Поэтому вот вам вилка ваших дейсвтий:

    1) Если у вас просто просят менторства молодые коллеги - дайте им ссылку на гугл и ключевое словосочетание php style guide github
    2) Если вас спрашивают (либо вы сами являетесь таким заказчиком который ищет за что зацепиться в коде чтобы продавить свою позицию) - нет критериев качества кода ДО начала работ подписанных на бумаге / пересланных по почте - никакие критерии не могут быть применены к текущим отношениям - только к следующей итерации за следующие деньги.
    3) Если вы все же разработчик и вас попросили оценить код - донесите данную ситуацию до стадии корректного закрытия текущего этапа работ - но дальше предложите уже введение стайл гайда если оно того требует. Я полагаю что на самом деле нет. Дав сейчас ответ на вопрос в виде оценки качества кода вы сделаете только одно - абсолюно необоснованно дадите агрумент в явно перекошенном споре, и просто возьмете на себя еще один мешок кармогрязи которую будуете еще сколько-то положенного времени отрабатывать.

    Подумайте хорошо на эту тему - придется выбрать свою сторону.
    Ответ написан
    Комментировать
  • Есть ли смысл учить yii2 без знания JS?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    Стоит ли учить php-фреймворк без знания другого языка? Да, сложный вопрос, нужно посоветоваться с сообществом...
    Ответ написан
    Комментировать
  • Как объяснить девушке что такое "некрасивый" код?

    mak-oleg
    @mak-oleg
    I believe in god, for the rest i pay in cash!
    Не надо этого ей объяснять, лучше продемонстрируйте ей некрасивый секс и проведите аналогию, обязательно поймет
    Ответ написан
    Комментировать