Задать вопрос
  • Почему стремление к упорядочиванию приводит к большей энтропии и отнимает силы?

    @di23
    Периодически меня, как и вас, клинит на теме упорядочивания всего.

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

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

    Если уйти из абстрактного мира, в реальный. Это означает что у вас будет куча различных приложений, помогающих вам в повседневных делах, не удивительно если у вас будет сразу несколько ТуДушек.... Сейчас посчитал сколько их у меня, оказалась 4 штуки. Причем все они выступают также и хранителями информации. А сколько разнообразных хранителей информаций я использую... уж лучше и не считать.
    Причем все это эффективно работает, нужная инфа находится крайне быстро, несмотря на внешний хаос. Все это потому что мой мозг врос в систему и стал неотъемлемой его частью. Как пароль, как ключ, как процессор обрабатывающий хаос и упорядочивающий его в уме.

    Вот собственно как это работает у меня. Надеюсь "метафизики" достаточно в моем посте и вы ею насладились. ))) Я старался. )
    Ответ написан
    Комментировать
  • Как выучить основные методы и функции Javascript?

    trevoga_su
    @trevoga_su
    не надо учить язык, точнее не надо заучивать ВСЕ его методы/функции.
    надо знать хорошо синтаксис языка и понимать как на нем писать.

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

    opium
    @opium
    Просто люблю качественно работать
    какой то херней вы страдаете, пробовали просто делать?
    Ответ написан
    19 комментариев
  • Как отдать html-страницу, а потом её конвертировать в PDF?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    В pageclan содержится объект HttpResponse, а convertURI принимает ссылку на страницу. Надо что-то вроде

    tmpl = get_template('marketing/parser.html')
    html = tmpl.render(done)
    pdf = client.convertHtml(html)
    Ответ написан
    2 комментария
  • Как сделать публикацию новости посредством чекбокса?

    winordie
    @winordie
    Лучшая документация -- исходники
    class NewsView(ListView):
      model = News
      def get_queryset(self):
        return super().get_queryset().filter(published=True)

    В чем проблема то?
    Ответ написан
    22 комментария
  • Python. От теории к практике?

    saboteur_kiev
    @saboteur_kiev Куратор тега Python
    software engineer
    Суть вашего непонимания заключается в том, что сейчас программирование состоит не только из знания языка программирования, а из знания стека технологий, из которых можно построить продукт.

    Например, чтобы сделать веб-сайт на питоне, нужно понять как в принципе работает http, подучить html, понять как прицепить питон к веб-серверу (cgi?), разобраться как работает авторизация, как хранить данные (sql?). Часто для этого используют фреймворки, следовательно разобраться с ними, а для фреймворков уже нужен ООП.

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

    В общем учитесь дальше.
    Ответ написан
    Комментировать
  • Python. От теории к практике?

    1nn0
    @1nn0
    Системный администратор\Фрилансер
    Вложу свои 5 копеек:
    Я начал изучать Python для всякого рода скриптов атоматизации (простой и выразительный синтаксис, ООП, PEP8 в конце концов). Вначале написал маленький скрипт-костыль для отправки Push-уведомлений, потом переписал скрипты, которые я использую в работе, с Bash на Python. Много нового узнал о стандартной библиотеке и сторонних модулях (requests, workerpool). Потом на предприятии потребовалось заменить старый телефонный справочник (внутренний сайт). Написал его на основе Flask. Вот так вот, от простого к сложному, до жути банально, но работает.
    И еще, книга Лутца - это больше академический справочник по языку (Есть еще у него "Программируем на Python", это уже ближе к практике). Для того чтобы начать кодить мне больше помогли:
    Zed Shaw - Learn Python The Hard Way
    Программируем на Python (Майкл Доусон)
    ну и в качестве тренировок: checkio.org
    Ответ написан
    Комментировать
  • Как вы совмещаете IT с другими интересами?

    Maronus
    @Maronus
    можно и с женой кино посмотреть

    Выходит это по вашему зря потраченное время?) Но это так, пост не об этом.

    Есть ли сейчас возможность найти работу с небольшими требованиями

    Можно.

    с возможностями развиваться на месте и карьерно-финансово расти

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

    Поэтому я бы посоветовал выбрать что-то одно, и развиваться целиком и полностью в этом направлении.
    А вот что выбрать (IT или музыку) зависит конкретно от вашей ситуации.
    Есть ли уже семья или намечается в ближайшее время? Если да, то вам нужно будет эту семью обеспечивать. Сможет ли музыка дать нужное количество денег в ближайшее время? А в перспективе? Адекватно ли вы оцениваете свои силы в музыке? Не получится ли так, что семья будет через 10 лет (например), а в музыке вы как зарабатывали допустим 25-30к, так и дальше не уйдете? А в ИТ как себя чувствуете? Готовы уделять этому направлению много времени, или это только способ при небольших трудозатратах получать больше денег?

    В первую очередь подумайте не о текущих ваших желаниях и интересах, а о своем будущем. Сможете ли вы обеспечивать свою семью, детей, родителей в конце концов? Пенсии копеечные, образование с каждым годом все дороже.. ИМХО отталкивайтесь только от этого фактора. Сможете через N лет достаточно зарабатывать с помощью музыки? Бросайте IT. Музыка безумно нравится, но перспектив по зарплате особых нет? Оставляйте ее в качестве хобби.
    Ответ написан
    Комментировать
  • Динамическая форма редактирования объекта в админке Django?

    winordie
    @winordie
    Лучшая документация -- исходники
    class MyModelAdmin(admin.ModelAdmin):
        my_filter = {1: ('field1', 'field2'), 2: ('field3', 'field4')}
        def get_fields(self, request, obj=None):
            fields = super().get_fields(request, obj)
            if obj is None:
                return fields
            return [f for f in fields if f not in self.my_filter[obj.my_type]]

    Но это будет работать только при изменении объекта.
    Если нужно динамически при создании, то тут только js, ловишь изменение поля my_type и скрываешь/показываешь необходимые поля.
    class MyModelAdmin(admin.ModelAdmin):
        class Media:
            js = (
                'js/my_fields_filter.js',
            )
    Ответ написан
    1 комментарий
  • Как вывести картнку в шаблоне django?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    models.py
    class Product(models.Model):
        @property
        def random_pic(self):
            return self.images.order_by('?').first()


    template.html
    <img src="{{ product.random_pic.image.url }}">
    Ответ написан
    4 комментария
  • Где найти стандартные правила наименования url, class base view и методов моделей?

    DmitryVoronkov
    @DmitryVoronkov
    Python Developer
    Все что хочешь в рамках PEP8
    Я обычно делаю так:
    articles/models/article.py:
    # -*- coding: utf-8 -*-
    from __future__ import unicode_literals
    
    from django.db import models
    
    
    class Article(models.Model):
        title = models.CharField(max_lenght=32, verbose_name=_('name'))


    articles/views/article.py:
    # -*- coding: utf-8 -*-
    from __future__ import unicode_literals
    
    from django.views import generic
    
    
    class ArticleMixin(object):
        fields = ['title']
        model = Article
        paginate_by = 30
    
        def get_success_url(self):
            return reverse('articles_article_index')
    
    
    class Index(ArticleMixin, generic.ListView):
        template_name = 'articles/index.html'
    
    
    class Create(ArticleMixin, generic.CreateView):
        template_name = 'articles/create.html'
    
    
    class Update(ArticleMixin, generic.UpdateView):
        template_name = 'articles/update.html'
    
    
    class Delete(ArticleMixin, generic.DeleteView):
        template_name = 'articles/delete.html'
    
    
    index = Index.as_view()
    create = Create.as_view()
    update = Update.as_view()
    delete = Delete.as_view()


    articles/urls.py
    # -*- coding: utf-8 -*-
    from __future__ import unicode_literals
    
    from django.conf.urls import url
    from django.conf.urls import patterns
    
    from articles.views import article
    
    urlpatterns = patterns('',
                           url(r'^$', article.index, name='articles_article_index'),
                           url(r'^update/(?P<pk>[\w-]+)/$', article.update, name='articles_article_update'),
                           url(r'^delete/(?P<pk>[\w-]+)/$', article.delete, name='articles_article_delete'),
                           url(r'^create/$', article.create, name='articles_article_create'),
                           )
    Ответ написан
  • Какая должна быть структура статических файлов внутри проекта Django?

    sim3x
    @sim3x
    Несобранная статика (+ jade ) - где угодно, лучше даже за пределами репозитория с джанго проектом
    Собранная - в
    └── myapp
        ├── manage.py
        ├── myapp
        │   ├── __init__.py
        │   ├── settings.py
        │   ├── urls.py
        │   ├── wsgi.py
        ├── requirements.txt
        ├── templates
        │   ├── css
        │   │   └── css.css
        │   ├── images
        │   │   └── image.png
        │   ├── index.html
        │   ├── js
        │   │   └── js.js
        │   ├── fonts
        │   │   └── font.svg


    вместо бовера лучше использовать npm - меньше телодвижений и все в одном файле вместе со сборщиками, пакетами для тестов и тп
    Ответ написан
    4 комментария
  • Стоит ли учить Ruby и Rails в 2016 году?

    Стоит ли учить язык Ruby и фреймворк Ruby on Rails в 2016 году?


    Зависит от ваших целей. Лично мне было просто интересно изучать этот язык и мне он нравится.

    В мире PHP активно развивается много отличных фреймворков и библиотек. В JavaScript вообще каждый день революция, новые подходы и фреймворки растут как грибы после дождя.
    А вот про Ruby и Ruby on Rails давно ничего не слышно.


    В мире Ruby тоже есть неплохие библиотеки и фреймворки. Например, hanami (hanamirb.org) или занимательный volt (https://github.com/voltrb/volt) у которого как на клиенте, так и на сервере используется ruby код. Правда Rails довольно сильно притягивает всех своей гравитацией, к слову, в этом месяце обещали релизнуть Rails 5 с поддержкой общения с клиентом через websocket — ждём-с.

    В целом, ещё Ruby используется для Chef (автоматизация серверов), homebrew (пакетный менеджер в маках), cocoapods для разработки OS X приложений, vagrant для управления виртуальными машинами разработки, jekyll/middleman/octopress — для генерации статических сайтов, известные sass/scss тоже на ruby, хоть теперь уже и есть реализации на других языках.

    Ещё, сравнительно недавно вылез на стол и начал танцевать, соблазняя возможностью компиляции кода — руби-косплеер Crystal (https://github.com/crystal-lang/crystal). И есть RubyMotion — фреймворк для создания OS X/iOS/Android приложений на Ruby (www.rubymotion.com).

    Тут можно посмотреть список популярных библиотек — https://github.com/markets/awesome-ruby

    В общем, смотрите сами. Да, язык сейчас не на вершине волны, но он развивается и говорить о смерти пациента рано.
    Ответ написан
    4 комментария
  • Как именно писать view - функциями или классами?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    Как удобнее, так и пишите. При реализации типовой функциональности, CBW позволяют писать меньше кода. Но если в view много логики, то выигрывать по объёму кода начинает решение на базе функций.
    Ответ написан
    Комментировать
  • Зачем нужен Gulp?

    @artinnok
    бекенд-программист
    CSS и JS:
    К примеру, у вас имеется большое количество (Х штук) css или js файлов, которое вы подключаете на своих страницах посредством тэгов <link> и <src>.
    При загрузке страницы, браузер клиента будет отправлять X запросов к вашему серверу, а ваш сервер должен будет ответить на X запросов.
    Это:
    1. Тормозит загрузку страницы - будете ждать ответа от сервера
    2. Загружает ваш сервер

    С помощью сборщиков фронтэнда вы можете "склеить" все файлы в один - main.css и main.js, которые будут отдаваться 2 запросами с сервера. Также, вы сможете минифицировать CSS и JS. Под минификацией подразумевается уменьшение размеров файла на диске. Естественно, более легкий файлы будет быстрее прогружаться + минимальное количество запросов к серверу.

    IMG:
    К примеру, у вас имеется Х изображений размером 700 Кбайт. Клиенту надо будет загрузить 700 * X Кбайт. Если вы пропустите свои изображения через Gulp, то вы получите изображения с меньшим размером на диске и такого же качества, т.е. клиенту придется прогрузить примерно (500-600) * X Кбайт.
    Ответ написан
    1 комментарий
  • Golang или Java?

    rkravchik
    @rkravchik
    System Solutions
    Самое начало вопроса "Хочу заняться разработкой под Андроид" почему?
    Ответьте себе. Почему не iOS, например?
    Сдаётся мне, что вы где-то прочитали о высоких заработках Java программистов и выбрали нишу, с которой можете начать java-путь. Разработка под Андроид кажется наиболее простым решением по сравнению с J2EE и прочим.
    Иначе бы вы хотели заняться "мобильной разработкой".

    Хорошо, Java. Но учтите, большинство вакансий - это работа в банках и телекомах, - 20-ти страничные спецификации, по которым вы будете, используя Java, перекладывать байты из одного модуля в другой.

    Идите в серверную разработку с GO. Тогда вы будете писать софт под все мобильные платформы, правда с другой стороны.
    Ответ написан
    2 комментария
  • Что нужно знать начинающему тестировщику?

    sloboda
    @sloboda
    Java QA Automation
    Нужно знать (для функционального тестера):
    1. Теорию тестирования.
    Что такое тестирование.
    Что такое баг.
    Виды тестирования.
    Структура тест-кейса.
    Структура тест-плана.
    Что такое тест-дизайн.
    Классы эквивалентности.

    2. Основы разработки.
    Жизненный цикл ПО.
    Место тестирования в разработке.
    Основные понятия ЯП - функции, методы, типы данных.

    3. Основы баз данных.
    Умение составлять простые SQL-запросы
    Определения реляционной БД
    Нормализация.

    4. Bug-трекеры
    TFS, Jira, Jazz, ALM и др.

    Хорошо бы также обладать базовыми знаниями по XML.

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

    @Silm
    Верстальщики изучают PHP на уровне шаблонизатора.
    • Надо уметь выводить в шаблонах переменные.
    • Писать логические условия (если пользователь не авторизован, то показываем форму входа, если нет, то ссылку на личный кабинет).
    • Писать циклы (в шаблон передается переменная с массивом постов, верстальщик должен написать цикл для их отображения).
    • Надо знать базовое API языка, встроенные функции для работы с числами, массивами, строками, датами и тп.
    • Нужны знания синтаксиса объектов. Понимать не обязательно, главное знать как вывести содержимое.


    Скачиваете какой нибудь базовый курс по PHP, дня за 2-3 пройдете. Обязательно почитайте документацию на php.net
    Ответ написан
    1 комментарий
  • Python, django... поможете разобрать кашу в голове?

    Советую учить Python 3.4 / 3.5 и Django 1.8 (LTS) / 1.9 (последняя стабилная версия)

    Пригодится ООП, в т.ч. множественное наследование + декораторы + знания о том, как работает система импортов. Иначе можно набить шишки.

    Как учить зависит от уровня знания английского.

    Если с ним все в порядке, то прямая дорога на официальные сайты python и django за документацией. Для начинающих есть туториалы, по ним отлично можно вкатиться.

    Если с английским плохо, то на djbook.ru есть перевод документации по Django.
    Ещё рекомендую Django girls tutorial(на русском). Несмотря на ориентированность на девушек, весьма годная штука.

    Из must have книг: по Python -- Саммерфилд(есть на русском, по ниму неплохо учить язык). По фреймворку -- Two Scoops of Django. Ну и Совершенный код, разумеется.
    Ответ написан
    5 комментариев
  • Что нужно знать начинающему тестировщику?

    tuulikki
    @tuulikki
    Есть несколько вариантов вашего дальнейшего развития:

    1. Если вы готовы "тренироваться на кошках", смело идите (вернее, записывайтесь) на курсы Software Testing (у них еще полезный форум). Там есть разные варианты, основы вам дадут и это будет крепкая база по небольшой цене (только не выбирайте ускоренный курс, лучше возьмите простой базовый). Перед этим можно заправиться онлайн-курсом Савина и курсом от Mail.ru (про него писали выше). Есть еще бесплатный вводный курс на Udacity.

    2. Пойти на стажировку/обучение при крупной IT-компании (так училась я сама). Эти тренинги проводят Epam, ITransition, Veeam и другие. Ищите на хэдхантере по словам "QA/тестировщик/специалист по тестированию", затем выбирайте графу "без опыта". В Питере, кажется, есть несколько открытых позиций. Требуется знание логики и базовое понимание SQL. Кое-где - ООП (это уже зависит от компании и направления). Если указано, что ищут выпускников, а вы уже давно не выпускник, всё равно пишите: мотивацию ценят в первую очередь.

    То, что очень сложно понять, не имея опыта, но можно предположить, зная себя и свои способности: решите, каким тестированием вы хотите заниматься.
    - Веб-приложения, сайты и т.п.? Продолжайте зубрить Html/CSS/SQL, попробуйте поверстать. Без этих знаний попасть на джуниорскую должность тяжело - конкуренция высока.
    - Функциональное - тот же SQL, администрирование (учите запросы в комстроке), язык (лучше Python или Java).
    - Плюс, спросите себя, в какой сфере хотите работать. Если игровым тестировщиком, будет проще: на позицию джуна попасть легче, но нужен большой игровой опыт. Кроме того, есть мобильное тестирование, тестирование графического контента и артов и т.д. Подумайте, в чем вы сильны.

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

    Подумайте над своим резюме и сопроводительным письмом - в 80% именно они решают, позвонят вам или нет.
    Удачи)
    Ответ написан
    Комментировать