Задать вопрос
  • Будет ли время во время учебы(универ) подработать программистом?

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

    Если вы сможете подработать какие-то добавки к стипендии - хорошо. Если при этом еще получите реальный опыт - вообще прекрасно. Для будущего.
    Ответ написан
    Комментировать
  • Есть ли минусы у 1C-Битрикс?

    Adamos
    @Adamos
    Если вопрос соответствует тегам - то есть заключается в дилемме "Битрикс vs Wordpress", то вкратце так:
    WP - всемирно популярный открытый движок.
    Битрикс - чисто российская платная платформа.
    Соответственно, WP чаще ломают - уже просто потому, что большинство ломающих Битрикса в глаза не видели.
    У WP живая публичная инфраструктура - по нему пишут руководства и подкасты, к нему тоннами клепают плагины и он развивается с оглядкой на новые тенденции в мире РНР.
    У Битрикса есть хозяин, который поддержку ставит выше инноваций (точнее, последние используются не столько в техническом, сколько в маркетинговом плане). Так что и руководства - только официальные, и новую версию можно получить, только купив, и программисты стоят ощутимо дороже.
    А главное - однажды сев на Битрикс, чертовски тяжело спрыгнуть. Фактически, только переписав весь сайт заново. А спрыгнуть рано или поздно захочется...
    Ответ написан
    1 комментарий
  • Как правильно оптимизировать сайт?

    Adamos
    @Adamos
    Для начала имеет смысл выключить блокировщик рекламы в браузере.
    Некоторые счетчики и пузомерки, будучи обрезанными, дают именно такой эффект.
    Ответ написан
    Комментировать
  • Как защитить компьютер с постоянным аптаймом?

    Adamos
    @Adamos
    В винде же есть шифрование пользовательской папки.
    Сам не пользовался, но теоретически - если пользователь, под которым вы заходите, не совпадает с локальным пользователем по умолчанию, то на месте никто ваше файло не прочитает.
    Или файлы все-таки должны кем-то читаться все время, но только тогда, когда вы этого хотите? Тогда задача, конечно, неразрешима.
    Ответ написан
    Комментировать
  • Как ускорить обработку запроса к бд?

    Adamos
    @Adamos
    Вам нужен список записей, у каждой из которых есть список связанных записей?
    Это делается двумя запросами:
    1. Загрузить нужные записи.
    1.1. В РНР пройти по ним и собрать id связанных записей.
    2. Загрузить все записи со связанными id.
    2.1. В РНР пройти по всем записям и приписать им подходящие связанные.
    И все. Никаких запросов в цикле и многосекундного дерганья одной жалкой тысячи записей.

    Собственно, если в Ларавеле прописать связь этого поля с той же таблицей и использовать lazy load, он, по-моему, вполне самостоятельно обходится теми же двумя запросами...
    Ответ написан
    Комментировать
  • Чистый код: блоки try/catch. Стоит ли так делать?

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

    Adamos
    @Adamos
    Обычно, если взломщик смог получить базу, скрипт хэширования он тоже может стянуть.
    Имеем задачу: вот хэши паролей, вот алгоритм, которым они получены.
    Берем словарь частых паролей, прогоняем его через этот алгоритм, смотрим совпадения.
    В теории - имеем всех пользователей, кто использует слабые пароли.
    На практике же индивидуальная соль для каждого пользователя и хэширование чем-нибудь потяжелее, чем md5, делает процесс подбора слишком долгим (до полной нерентабельности) в большинстве случаев.
    Ответ написан
    Комментировать
  • Можно ли при помощи php создать такой простой веб сервис?

    Adamos
    @Adamos
    Сервис действительно примитивный, и на РНР он делается без всяких проблем (можно даже присмотреть под него бесплатный хостинг).
    Особенность задачи скорее в том, что из нее со временем вполне может вырасти что-то большее, и лучше бы сразу не портить зародыш говнокодом, а использовать фреймворк типа Laravel. Авторизация в нем есть из коробки, ваши пожелания воплощаются за день, при этом добавление новых фич не будет наращиванием костылей на велосипеде.
    Любой современный фрилансер вам сравнительно недорого реализует этот вариант, и потом можно будет обращаться к другим фрилансерам, просто уточнив, что используется Лара.
    Ответ написан
    6 комментариев
  • Ставить ли линукс на слабый пк и какой?

    Adamos
    @Adamos
    Во-первых, "грузит ЦП до сотни" не система, а браузер, антивирус и прочая шняга.
    Во-вторых, вы не хотите разбираться в Линуксе - значит, ставить вам его противопоказано. Дистрибутивы не разрабатываются специально под лентяев со старым железом, и тормоза на любом популярном и не требующем лишних знаний дистрибутиве у вас будут не меньше, чем под Окошками. А проблем, скорее всего, будет больше.
    В-третьих, если вам нужно всего лишь заполнять клиентскую базу через браузер и редактировать текст хоть через wordpad - найдите себе слабенький-древний-но-не-прожорливый браузер и запустите таки Wordpad. Потому что если вы собираетесь запускать на этом слабом железе тот же современный Хром - он точно так же сожрет всю память и пошлет любую систему в своп. Никаких реальных преимуществ Линукс здесь не даст.
    Так что, в-четвёртых, я бы не советовал решать проблему, которой нет, методами, которые ее только усугубят.
    Ответ написан
    Комментировать
  • Принцип работы VeraCrypt?

    Adamos
    @Adamos
    Принцип работы VeraCrypt - взять оставленный разработчиком TrueCrypt, напихать туда своей криво реализованной дряни и выдавать это добро за инновации.
    Ответ написан
    7 комментариев
  • Паблик это коммерческое использование?

    Adamos
    @Adamos
    С юридической точки зрения "коммерческое использование" - это использование в каком угодно виде в каких бы то ни было действиях, которые приносят вам какую бы то ни было прибыль.
    Некоммерческим использование будет только тогда, когда не приносит вам никакой прибыли или не играет никакой роли в получении вами прибыли.

    Например, вы можете заворачивать шаурму в распечатки романов Акунина, и это таки будет некоммерческое использование. Но если вы будете заворачивать шаурму в распечатки романов Акунина и подавать это покупателям как эксклюзив "и пожрешь, и почитаешь" - извольте откидываться автору за споспешествование вашему бизнесу.
    Ответ написан
    2 комментария
  • Как оперативно протестировать PC на работоспособность?

    Adamos
    @Adamos
    www.system-rescue-cd.org
    Memtest там был, whdd для проверки винта - тоже.
    Но вообще-то работоспособность железа совершенно не означает, что винда на нем в адеквате и будет работать...
    Ответ написан
    Комментировать
  • Что почитать и на чем потренироваться, не могу перейти от процедурного к ооп?

    Adamos
    @Adamos
    Практика. Решайте задачи, не давая себе писать ни строчки вне объектов. Теория суха...
    Ответ написан
    3 комментария
  • Есть ли в PHPStorm инструмент для просмотра того, какие файлы инклюдят друг друга?

    Adamos
    @Adamos
    Теоретически в Шторме есть пункт контекстного меню Find Usages в дереве файлов проекта.
    Но РНР позволяет заинклюдить файл через такие хитрые задницы, что IDE тут бессильна.
    Если же вы предпочитаете не мудрить и сохранять суровую простоту и порядок - выше про PSR уже сказали.
    Ответ написан
    Комментировать
  • C чего начать аудит и переход на AD?

    Adamos
    @Adamos
    Если планировать и расписывать графики все-таки некому, можно использовать метод тыка.
    1. Берете какой-нибудь старый системник (но с приличным - и по размеру, и по скорости - винтом) и ставите на него, например, Debian.
    2. Копируете с машины пользователя его шару на примерно одноименную на сервере, закрываете ее и объявляете всем (в том числе этому пользователю), что его файлы теперь лежат вот на этой шаре сервера.
    3. Повторяете с другими пользователями до полного уничтожения персональных шар.
    4. Выясняете, есть ли необходимость ограничить каким-то пользователям доступ к каким-то данным. Если она есть - это уже повод заводить Windows-сервер, AD и т.п. Если ничего такого не вскрылось - осталось настроить бэкап сервера (возможно, просто взяв еще один старый системник...).
    Ответ написан
    Комментировать
  • Какой сервер собрать для офиса в 15пк?Какое ПО использовать для резервирования?

    Adamos
    @Adamos
    Соглашусь с коллегами, идея больше смахивает на создание единой точки отказа всего и сразу без особой на то необходимости.
    Тем более, что бэкап самого сервера, вполне возможно, будет нужнее, чем бэкап пользовательских машин (особенно если сделать грамотно - то есть ничего на них не хранить). Делать бэкап на тот же самый сервер - не слишком разумно.
    Я бы советовал:
    1. Приличный роутер, который закроет вопрос с интернетом и файрволлом - а при выходе из строя просто заменяется свежекупленным. При желании бесперебойной работы можно просто держать под рукой второй такой же.
    2. Достаточно серьезную машинку под файл-сервер. RAID и прочие ништяки по вкусу. Хотя я, признаться, не представляю, как у вас на 15 человек по сети раздается файловая 1С - и в этом еще можно работать. Или все-таки не файловая?
    3. И небольшой дешевый неттоп с большим винтом, единственной задачей которого будет тихо-мирно автоматически делать бэкапы. С несколькими копиями, конечно (шифровальщики нынче в моде, а бэкап, в котором файлы автоматически перезаписались зашифрованными, бесполезен). С доступом извне только на чтение.

    При чем здесь ОЕМ-лицензии - вообще не понял, признаться. Вы собираетесь хранить в бэкапе развернутые образы со всех машин? Неужели их приходится постоянно "чинить" таким образом?
    Ответ написан
  • Имеет ли юридическую силу запрет на парсинг сайта?

    Adamos
    @Adamos
    Информация на вашем сайте и так принадлежит вам (авторское право), никто другой не может ее использовать для получения прибыли без вашего согласия.
    Вопрос в том, готовы ли вы доказать эти два факта: что это ваша информация и что она была использована для получения прибыли. А что там было написано у вас на сайте (исключая разрешение кому угодно использовать информацию как угодно) роли, по большому счету. не играет.
    Запрет, о котором вы говорите - всего лишь напоминание об авторских правах и предупреждение, что автор готов связываться с судами, если что.
    Ответ написан
    Комментировать
  • Как вы работате с гитом?

    Adamos
    @Adamos
    Контроль версий - это ведь не отчет о проделанной работе, это просто удобный способ вспомнить, как что-то менялось, и сравнить то, что было до, с тем, что стало после.
    Коммитить на уровне "написал новую функцию", "добавил новый класс" и, тем более, "создал десять объектов" - по большому счету, бессмысленно.
    Вам нужно будет откатываться или хотя бы сравнивать только тогда, когда вы что-то меняете. И когда понадобится сравнить, вам нужно будет знать, что вы поменяли и зачем. Первое вам скажет git, второе - только ваш комментарий к коммиту. И именно в этом его важность, да и важность раздельных коммитов вообще.

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

    В общем, на git нужно смотреть не снизу (от кода), а сверху - с точки зрения собственных интересов через год-два, когда к этому коммиту придется вернуться. И все станет проще.
    Ответ написан
    Комментировать
  • Си это основополагающий язык или просто популярный?

    Adamos
    @Adamos
    Особенность С среди языков программирования - в том, что в стандарте языка есть только то, что компьютер может выполнить без лишних накладных расходов. Поэтому его хорошо знать - просто для понимания идеалов оптимизации, но без закапывания вглубь архитектуры, как в ассемблере.

    Большинство языков пишутся для того, чтобы решать некие проблемы - ну, и как-то исполнить результат. В машинном коде он будет исполняться, в коде для виртуальной машины или вовсе дерганьем какого-то API - это совсем второй вопрос. У высокоуровневых языков может быть несколько вариантов на вкус.
    Ответ написан
    2 комментария
  • Почему в C++ нужно строить всю программу на ООП (длинный вопрос)?

    Adamos
    @Adamos
    Право, может быть, вы даже "Идеальный код" не читали?
    ООП - это уникальная возможность разделить код на уровни абстракции. Реализовать все скучное, но необходимое, внутри методов класса - и забыть о нем все, кроме его интерфейса. В результате программа пишется на более высоком уровне и читается на нем же. Детали требуется изучать только тогда, когда это действительно требуется.
    Километровые простыни функций, которые может вызвать кто попало где попало с неизвестно как подготовленными входными данными и столь же неизвестными ожиданиями на выходе - ну, это может нравиться... если у вас много свободного времени или вы полжизни изучали именно этот хаос.
    Ответ написан
    Комментировать