• Какие привычки могут сэкономить время?

    GavriKos
    @GavriKos
    - не ставить знаки препинания в сообщениях (sms, соцсети, мессенджеры);
    - сокращать некоторые слова и выражения;

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

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

    А потом даёте задачи на использование определённых технологий в зависимости от этапа. Т.е. к примеру с начала говорите, что бы все создали схему бд с зависимостями для своего проекта и подключили постгресс, потом миграции. После лекции про модели, пусть делают модели, после того как расскажете про контроллеры - делают контроллеры, потом вьюхи + натянуть бутстрап например... Потом говорите запилить что-нибудь на ajax. И что бы вся разработка велась через git (т.е. самой первой или второй лекцией сделайте лекцию про гит и ВСЮ домашку проверяйте через гитхаб, что бы уже к моменту когда вы перейдёте к джанго вопросов по гиту не было)
    На каждый этап - дедлайн. В ветку мастер реквесты принимаете только вы, если всё ок.

    Если всё это подробно продумать, то может выйти достаточно интересно) Я так понимаю, что в начале же будет просто обучение питону? Так вот на основе успеваемости по питону можно поделить всех на команды для выполнения проекта на джанге)
    По итогу получается у всех студентов будет по завершённому проекту + небольшой опыт реальной командной работы + максимум практики.

    UPD. В командах можно назначить тимлида, который будет распределять таски.
    UPD2. И всё снимайте на видео, а потом в ютуб))
    UPD3. Просто, если вы вместе со всеми студентами разом будете делать один проект, то как мне кажется, знаний не оч останется, т.к. по сути каждый студент будет просто переписывать ваш код или повторять ваши действия step by step.
    Ответ написан
    4 комментария
  • Какой несложный проект взять, чтобы научить новичков максимуму из веб. разработки?

    Там где нужен Postgre необязателен ajax а для redis надо что-то в реальном времени подбирать, я бы сделал несколько задач, каждую задачу под отдельную технологию.
    Ответ написан
    2 комментария
  • Почему использование 'object.get_attribute()' лучше, чем object.attribute?

    OMarchenko
    @OMarchenko
    Random Expansion
    Макконнелл С. "Совершенный код":
    "Предоставление доступа к данным-членам нарушает инкапсуляцию и ограничивает контроль над абстракцией. Как указывает Артур Риэль, класс Point (точка), который предоставляет доступ к данным:
    float x;
    float y;
    float z;
    нарушает инкапсуляцию, потому что клиентский код может свободно делать с данными Point что угодно, при этом сам класс может даже не узнать об их изменении (Riel, 1996). В то же время класс Point, включающий члены:
    float GetX();
    float GetY();
    float GetZ();
    void SetX( float x );
    void SetY( float y );
    void SetZ( float z );
    поддерживает прекрасную инкапсуляцию. Вы не имеете понятия о том, реализованы ли данные как float x, y и z, хранит ли класс Point эти элементы как double, преобразуя их в float, или же он хранит их на Луне и получает через спутник".
    Ответ написан
    Комментировать
  • Стоит ли перейти на linux

    lesovsky
    @lesovsky
    System engineer and PostgreSQL DBA
    Да, несомненно стоит. Но не зацикливайтесь на одном дистрибутиве))
    Ответ написан
    Комментировать
  • Какой самый красочный linux диструбив?

    tsarevfs
    @tsarevfs
    C++ developer
    Мне KDE нравится. Без излишеств с анимацией, но красивый и продуманный.
    Ответ написан
    Комментировать
  • Каковы криптографические возможности linux?

    leahch
    @leahch Куратор тега Linux
    3D специалист. Dолго, Dорого, Dерьмово.
    В системе есть абсолютно все возможности по работе с крипто, начиная от организации крипто-туннелей IPsec, туннелей ssl/tls, крипто-дисков, крипто-контейнеров и заканчивая библиотеками криптографии типа openssl. Не всегда все это специфицировано в единый API, как в java или microsoft, но от этого не хуже работающее. Просто есть все это в нескольких реализациях, и иногда достаточно сложно выбрать чем пользоваться.
    Обычно как стандарт для крипто-API используется openssl.
    Ответ написан
    Комментировать
  • Как защитить sms-рассылку от bruteforce?

    seriyPS
    @seriyPS
    Ограничение по кол-ву запросов с одного IP + капча.
    Первое защитит от простых случаев, второе от случаев, когда злоумышленник использует прокси.
    Можно сделать сложнее - активировать капчу, если поток запросов SMS по всей системе возрос. Например, всё время средний поток запросов 10 в минуту а тут скакнул до 100 - включаем всем капчу.
    Ну и капча не является 100% защитой - на antigate.com их разгадывают по 1$ за 1000 штук. Но сама необходимость работать с антигейтом существенно усложняет бота.
    P.S.: я сам защиту строить не пробовал, но ботов часто пишу.
    Ответ написан
    Комментировать
  • Как организовать хранение больших текстовых данных?

    MarcusAurelius
    @MarcusAurelius Куратор тега Node.js
    автор Impress Application Server для Node.js
    Файловая система рассматривается в самую последнюю очередь.

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

    Выризать аттачи из письма нельзя.

    Почему? Вы их что в MIME BASE64 храните? Как раз нужно - делайте папку для каждого письма и сохраняйте все атачи из него в папку. Конечно, нужно держать индекс файлов и писем в СУБД, с дополнительными полями, которых нет в файловой системе. Для этого лучше взять реляционку и хранить там имена файлов в UTF-8, а на диске держать файлы переименованные, например в ID записи в БД, можно в HEX.
    Ответ написан
    6 комментариев
  • Как в JQuery сделать селектор класса по маске?

    $(function() {
        var mask = "op-";
    
        $("div[class*=" + mask + "]").on("click", function() {
             var classes   = $(this).attr("class").split(" "),
                 className = "";
              
            for (var i = 0; i < classes.length; i++) {
                if (classes[i].indexOf(mask) !== -1) {
                    className = classes[i].replace(mask, "");
                    return;
                }
            }
          
            console.log(className); // Остаток имени после маски
        });
    });
    Ответ написан
  • Быстрый переход с Java на Python: что читать?

    @Nodar
    Python, Ruby, JavaScript
    Марка Лутца не рекомендую - занудная книга. Лучше Dive into python
    Ответ написан
    1 комментарий
  • Как реализовать организацию отдачи статического контента с учетом версионирования?

    Vintorez
    @Vintorez
    Костылей городить не нужно. В Джанго все уже есть. Для версий от 1.4.х до 1.6.х специально для этого предусмотрено хранилище статики CachedStaticFilesStorage. Как подключать - по ссылке все описано. А смысл, если вкратце, такой:
    Командой collectstatic создаются копии ваших статических файлов с добавлением хэша к именам файлов (хэш вычисляется из контента самого файла). Таким образом, если контент файла изменяется, то изменяется и его название, поэтому браузер вынужден получать новый файл статики с вашего сервера. Если файл не менялся - тянем с кэша браузера, как обычно.
    Если вы в самом проекте используете темплейт-тег static (как и должно быть), а не переменную STATIC_URL, то проблем с подключением этого хранилища статики у вас возникнуть не должно.
    Да, есть тут один момент. В созданных новых файлах статики все имеющиеся ссылки на другую статику (например в css-файле есть ссылка на картинку) тоже изменяются. Если у вас в файлах есть битые ссылки на статику, то collectstatic свалится с ошибкой.
    Ответ написан
    3 комментария
  • Существует ли пример программы на С++ с полным набором особенностей этого языка?

    foxmuldercp
    @foxmuldercp
    Системный администратор, программист, фотограф
    Ага, есть. вдумчивое чтение документации + реальная поставленная цель, которую надо решить. Можно поставить цель самому себе, как это сделал я.
    Ответ написан
    Комментировать
  • Как в Python гарантировать вызов кода деструктора сразу после того, как экземпляр не нужен?

    dizballanze
    @dizballanze
    Software developer at Yandex
    Вам нужно добавить функционал ContextManager для того, чтобы можно было использовать класс при помощи конструкции with. См. PEP 343.
    Ответ написан
    4 комментария
  • Реально ли установить и успешно без особых глюков работать в Photoshop под Ubuntu?

    Я запускаю в виртуалке фотошоп, вырезаю там нужные мне изображения, делаю заметки о шрифтах, и скрин макета. Далее уже в родном окружении, пользуясь гимпом работаю со скрином, остальные данные вытягивал ранее в фотошопе. Несколько неудобно, но более комфортно, нежели все далать в фотошопе на виртуалке
    Ответ написан
    Комментировать
  • Реально ли установить и успешно без особых глюков работать в Photoshop под Ubuntu?

    @tushev
    Для запуска Photoshop и Microsoft Office я запуская виртуальную Windows XP на VirtualBox. На виртуальной ОС я делаю общие диски с Ubuntu. Так работать вполне удобно, а ресурсов компьютера много не съедает. По скорости, все работает очень быстро.
    Ответ написан
    Комментировать
  • Хочу быть программистом, но не выходит. Как двигаться вперед?

    dizballanze
    @dizballanze
    Software developer at Yandex
    Правда, что в университете, как и в школе (я про информатику и программирование) не дают практически никаких существенных знаний?

    Да, это правда. За редкими исключениями в университетах ничему полезному в программировании не учат и надеяться на это не стоит.

    Какой язык выбрать для дальнейшего изучения

    C++ достаточно сложный, особенно для начинающего, но я все равно советую его освоить. Сам, тоже, классе в 9-10м учил C++ по книгам Шилдта и Страуструпа. Это было сложно, но оно того стоило, хотя сейчас я и не программирую на C++ (больше на Python), но это был очень полезный опыт.

    После того, как я выберу язык окончательно

    Дальше будет легче, каждый следующий язык программирования, по моему опыту, осваивается быстрее и приятнее предыдущего (хотя конечно многое от самого языка зависит).
    В любом случае стоит попробовать что-нибудь вроде Java/C++, потом что-то интерпретируемое вроде Python и выбрать, что больше нравится. В таком подходе не вижу ничего плохого.
    Ответ написан
    Комментировать
  • Хочу быть программистом, но не выходит. Как двигаться вперед?

    rose_solnyshko
    @rose_solnyshko
    Забудьте бред про ненужность традиционного образования. Это как служба в армии - у вас будет другая точка обзора, и это можно использовать.
    Я не стал пока что программистом, но дам вам совет, который мне в университете дал крутой преподаватель-программист. Он мне сказал: "Возьми и напиши на любом языке программирования графический редактор с такими же возможностями, как и paint brush (.. это были времена windows 3.11), а потом обратись ко мне".
    Перефразируя более современными реалиями, возьмите готовый программный продукт (не обязательно открытый), и создайте аналогичный по функционалу.

    Когда вы это сделаете, сами многое поймёте и освоите - на деле.

    А куда потом обращаться - потом и будет видно :)
    ---
    Updated:
    Хотел сразу написать, но решил подумать сначала.
    Это совет лично мне, и любому человеку: Будьте настолько свободны, насколько это возможно сегодня и там, где вы сейчас есть - во всём. Вспомните электрон (и вообще частицы), и его степени свободы, а так же то, что он всегда стремится занять более выгодное для него положение с энергетической точки зрения (такова его (условно) "жизненная среда"); обычно такое положение означает максимальный кпд с минимальными энергетическими затратами.
    Не работайте в офисе с графиком-обязаловкой. Воспользуйтесь развивающимися телекоммуникациями. Попробуйте (очень индивидуально, но..) быть хозяином себе и всему, что в вашей жизни уже есть, и будет (это надо создавать, или создавать условия для появления этого) - жить полноценным человеком.
    Почитайте здесь habrahabr.ru/company/profishop/blog/201852 с 7 абзаца.

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

    ОНО ТОГО СТОИТ

    Желаю всем на земле удачи в этом :)
    Ответ написан
    5 комментариев
  • Хранимые процедуры mySQL: преимущества и недостатки

    AmdY
    @AmdY
    PHP и прочие вебштучки
    приложения с хранимыми процедурами поддерживать сложнее, т.к. логика размазана.
    невозможно использовать нормальное кеширование и будут проблемы с маштабированием. лучший запрос — это тот, который не делается, а для этого нужен умный кэш.
    Ответ написан
    1 комментарий