• Можете накидать большую порцию задачек для практики Python-новичка?

    Я когда также искал наткнулся на один сайт там человек выложил тестовое задание которое он получил на вакансию Junior Python Developer.

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

    Собственно вот само задание:

    Цель тестового задания
    Определить возможную динамику самообучения кандидата. А так же глубину понимания кода, реализующего тестовое задание.

    Задание
    Написать тестовое web-приложение по управлению электронной библиотекой:

    1. Редактирование (доступно авторизованному пользователю при наличии аутентификации):

    Управление списком книг: добавить / удалить / редактировать книгу.
    Управление списком авторов: добавить / удалить / редактировать автора.
    Запись о книге содержит следующие данные: ID, Название.
    Запись об авторе содержит следующие данные: ID, Имя.
    Свзязь между книгами и авторами — многие ко многим.
    2. Поиск книг по названию либо автору (доступно анонимному пользователю при наличии аутентификации).

    3. Аутентификации и авторизация (по желанию кандидата).

    Технологии, которые должны быть задействованы:

    Flask
    SQLAlchemy (Declarative)
    SQLite (встроенный в приложение)
    Jinja2 Templates
    WTForms
    jQuery (желательно, но возможно использование альтернативных решений)
    Список может быть расширен по усмотрению кандидата, но с обязательным использованием технологий, перечисленных выше.

    Дополнительные требования
    Список дополнительных требований следующий:

    1. Код проекта должен быть доступен на сервисе github.org или bitbucket.org.

    2. Проект должен содержать SQL-скрипты для развертывания базы данных и наполнения ее тестовыми данными.

    3. Пользовательские данные должны валидироваться перед сохранением в БД.

    Дополнительные знания
    Дополнительные знания, необходимые при защите проекта:

    HTTP
    WSGI
    SQL, Transactions, Transaction Isolation Levels
    SQLAlchemy
    Уязвимости веб-сайтов
    User Experience
    Ответ написан
    Комментировать
  • Разработка web-сервисов – LAMP (Python/Django) vs. MEAN (Node.js)? Или что-то другое?

    1) Мой основной язык Python, на JS больших программ почти не писал. Когда писал на нём больше, то ощущал дискомфорт из-за:
    - отсутствия нормального наследования (хотя сейчас, вероятно, это уже исправлено)
    - трудностей с типами данных и неявными преобразованиями (вот вчера буквально был холивар на Тостере о == и ===)
    - списков, реализованных как переодетые объекты
    - отсутствия из коробки структур данных вроде deque.

    Но это были студенческие поделки.

    2) Python предоставляет больше средств борьбы со сложностью. Наследование, система метаклассов, синтаксический сахар. Хотя бы даже такая штука как property. Он даёт больше возможности инкапсулировать сложность внутри. Ну и на нём действительно очень много разнообразных библиотек. Возьмите хотя бы Django: она умеет автоматически генерировать миграции базы данных. Насколько я знаю, это мало кто умеет делать.

    3) Не думаю, что JS - это язык будущего для бэк-енда. Я бы согласился, если бы вы сказали про Scala или Kotlin, которые куда больше подходят для больших и сложных приложений хотя бы потому, что имеют ещё больше средств борьбы со сложностью, чем Python. Поэтому я смотрю скорее в их сторону для своего будущего профессионального развития, не на JS. Он как-то не очень тянет в сравнении.

    4) Ничто не помешает вам изучить платформу А, затем Б, потом В и так далее; от этого только польза. Может быть, вы через десять лет будете на Quipper - диалекте Haskell для квантовых компьютеров - писать. Но начинать посоветую всё же с Python - чтоб меньше заниматься мазохизмом и больше писать кода.)
    Ответ написан
    2 комментария
  • Что изучать: Ruby или Node.js?

    MarcusAurelius
    @MarcusAurelius Куратор тега Node.js
    автор Impress Application Server для Node.js
    Берите ноду, на ней тоже уже все есть готовое в NPM, не меньше, чем на RoR, но не подсядьте только на "все из коробки", главное определиться для со стеком технологий и адхитектурой, это важнее, чем язык, сейчас разрабатывают больше даже на фреймворках, нежели на языках. Определитке задачи для себя, что Вы хотите решать на ноде, что писать, для чего использовать: обычные сайты или CMS, SPA-сайты сайты или SPA-приложения, Rich-приложения, адаптированные под мобильные или будете заниматься только backend и работать в команде с кем-то, кто будет писать frontend. Нужно выбирать все в комплексе, СУБД, фреймворк для браузера, серверную ОС, варианты хостинга. Я рекомендую такой стек: CentOS, Node.js, MongoDB / PostgreSQL, React. Какие ссылки советую:
    1. Моя статья на Хабре - habrahabr.ru/post/204958
    2. Мой ответ на вопрос по фреймворкам для ноды тут на Тостере - Подсоветуйте фреймворк для node?
    3. Видео-уроки по node.js - learn.javascript.ru/nodejs-screencast
    4. Про Impress - habrahabr.ru/post/247543
    5. Разнообразные ответы по поводу выбора языка - Актуальный язык программирования
    Ответ написан
    1 комментарий
  • Linux Mint 19 глючит клавитура или буфер обмена?

    sotvm
    @sotvm
    Умный поймёт, а дураку и так всё равно.
    с новым профилем/учёткой работает?
    создай профиль нового пользователя,залогинся под ним и попробуй
    Ответ написан
    2 комментария