• Нужна помощь гиков). Как отправить письмо через 15 лет?

    sabramovskikh
    @sabramovskikh
    За 15 лет рушатся империи.
    Через пол года может не стать человечества.
    Ответ написан
    2 комментария
  • Как самому доучить математику?

    zhenya2125
    @zhenya2125
    Вот, высшая математика очень доступно
    www.mathprofi.ru
    Ответ написан
    Комментировать
  • Что необходимо знать о Python для того, чтобы получить свой первый проект?

    kasheibess
    @kasheibess
    веб уже не тот
    Хоспади спаси. Тостер превращается быстрыми шагами в форум "Мне лень думать самому, дай ка спрошу на шару"
    Ответ написан
    Комментировать
  • Какие существуют сервисы планирования?

    za4me
    @za4me
    Человек
    Блокнот + ручка/карандаш.
    Дешево и сердито.
    Ответ написан
    Комментировать
  • Где можно наблюдать стримы по программированию?

    gbg
    @gbg Куратор тега Программирование
    Любые ответы на любые вопросы
    У себя дома:
    Системное под венду:
    - открываете 8 вкладок с MSDN, 4 со stackoverflow и иногда их скроллите.
    Системное под Linux:
    - открываете 8 вкладок со stackoverflow и консольку с man + исходники ядра
    Математическое:
    - открываете что угодно, все равно ничего не увидите - все самое интересное делается на бумажке, которая у стримящего лежит рядом с клавиатурой
    Высокопроизводительные вычисления, HPC, Нadoop:
    -купите 128 мониторов для начала
    Прикладное:
    - ну, вы знаете толк в извращениях, если хотите смотреть, как одинэсник пишет очередной унылый запрос на три листа, чтобы удовлетворить бухгалтершу.
    Ответ написан
    Комментировать
  • Где можно наблюдать стримы по программированию?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    есть проект, на основе твича кажется, https://www.livecoding.tv/
    Ответ написан
    Комментировать
  • Как самому доучить математику?

    bitrixd
    @bitrixd
    Я слышал усвоение материала напрямую зависит от количество непонятных слов и терминов в тексте. Можно попробовать начать с "Дискретной математики" и далее дополнять пробелы в знаниях из других курсов математики. Можно взять книгу по той теме, в которой планируете развиваться и в которой вам ничего непонятно, и разбираться с каждым абзацом, находя недостающую информацию в других книгах. Хотя это долгий путь, иногда чтобы что-то осознать и связать между собой в любом случае нужно время. Серединный путь как мне кажется, это найти хорошего преподавателя, человека который ответит на те вопросы которые могут возникнуть при осознании материала.
    Постижение математики - это путь, который не заканчивается :) Все таки, если есть конкретная задача, то лучше смотреть какие разделы математики помогают ее решать и изучить их. А если для общего развития и для гибкости ума, то решайте математические задачки в свое удовольствие )

    euler.jakumo.org/problems.html
    Ответ написан
    3 комментария
  • Что лучше, cherry mx brown или greetech brown?

    @moozooh
    Chief Technical Grammar Nazi
    Лично я не пробовал Greetech, но эксперты с r/MechanicalKeyboards утверждают, что у них чуть более выраженная тактильная отдача. То есть для печати они должны быть чуть приятнее; для игр, очевидно, — наоборот.

    По усилию нажатия Greetech и Cherry одинаковы.

    Информация про 60 миллионов нажатий, вероятно, ошибочна: официальный сайт Greetech приводит цифру 50 миллионов.
    Ответ написан
    Комментировать
  • Как самому доучить математику?

    Stroy71
    @Stroy71
    Век живи-век учись.
    Даже если математика больше не пригодится(хотя у Вас впереди еще ВУЗ), она конкретно дисциплинирует мозг. Сходите на книжный развал и найдите пару старых учебников по алгебре, геометрии. Желательно издание до 90-х годов.
    А вообще, математика, понятие растяжимое. Включает в себя кучу разделов, начиная с арифметики и заканчивая теорией игр и т.д.
    Лично я начал более менее понимать диффуры только когда началось их практическое применение.
    И главное, ни в коем случае не зацикливайтесь на тестах ЕГЭ.
    Ответ написан
    7 комментариев
  • Что необходимо знать о Python для того, чтобы получить свой первый проект?

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

    А вообще так:
    - Прочитать книжку Марка Лутца (можно по диагонали, потом всёравно перечитать придётся);
    - почитать документацию на python.org;
    - ознакомиться с возможностями стандартной библиотеки;
    - найти себе проект, который надо как-то сделать;
    - поиграть на checkio.org, при этом обязательно смотреть чужие решения;
    - при открытии чего-то нового в процессе программирования перечитывать соответствующие пункты документации.
    Ответ написан
    Комментировать
  • Что необходимо знать о Python для того, чтобы получить свой первый проект?

    @nirvimel
    Желание учиться это хорошо, но само по себе оно ни к чему не приведет. Нужно ставить перед собой конкретные практические задачи и обучение произойдет в процессе их решения. Конкретная задача порождает конкретные вопросы, на которые дает ответы Гугл (или иначе Тостер). Кроме того, без конкретной задачи сложно поддерживать мотивацию к обучению в течении времени, достаточного для обучения.
    Ответ написан
    2 комментария
  • Пишутся ли на Django стартапы?

    @asd111
    Dropbox на Django
    Ответ написан
    Комментировать
  • Какую фантастику порекомендуете, где главный герой программист/инженер?

    mak-oleg
    @mak-oleg
    I believe in god, for the rest i pay in cash!
    Начать самому писать код - и будет Вам фантастика
    Ответ написан
    Комментировать
  • Как создать страницу статических настроек для сайта в админке Django?

    @deliro
    from datetime import timedelta
    
    from django.db import models
    from django.utils import timezone
    
    
    class Settings(models.Model):
        """
        Модель настроек с интерфейсом атрибутов
    
        >>> settings.hello = 'world'
        Сохранит модель с key='hello' и value='world'. Если модель с таким ключом до этого
        существовала (т.е. в данный момент мы меняем значение), запись в БД поменяется и кэш
        инвалидируется.
    
        >>> settings.hello
        'world'
        Получение ключа. Сначала ищет в кэше. Если находит - возвращает, если нет,
        ищет в БД запись с таким ключом (hello). Если находит - кладёт в кэш и возвращает.
    
        >>> del settings.hello
        Удаляет запись с ключом hello из БД и кэша.
        
        Также, ключ и значение можно редактировать из админки (кэш в этом случает также
        инвалидируется)
    
        Пример куска вьюхи, которая может редактировать настройки сайта:
        if form.is_valid():
            settings.phone = form.cleaned_data['phone']
            settings.address = form.cleaned_data['address']
        """
        key = models.CharField(max_length=255, primary_key=True)
        value = models.TextField()
    
        __cache_ttl = 60 * 60
        __cache = {}
        __cache_max_size = 300
    
        def save(self, *args, **kwargs):
            super(Settings, self).save(*args, **kwargs)
            self._cache_invalidate(self.key)
    
        def __setattr__(self, key, value):
            cls = type(self)
            try:
                instance = cls.objects.get(key=key)
                instance.value = value
                instance.save()
            except cls.DoesNotExist:
                cls.objects.create(key=key, value=value)
            self._cache_invalidate(key)
    
    
        def __getattr__(self, key):
            value = self._cache_get(key)
            if value is None:
                cls = type(self)
                try:
                    value = cls.objects.get(key=key).value
                    self._cache_set(key, value)
                except cls.DoesNotExist:
                    value = None 
            return value
    
        def __delattr__(self, key):
            type(self).objects.filter(key=key).delete()
            self._cache_invalidate(key)
    
        def _cache_set(self, key, value):
            if len(self.__cache) < self.__cache_max_size:
                self._cache_force_set(key, value)
            else:
                self._cache_remove_old()
                if len(self.__cache) < self.__cache_max_size:
                    self._cache_force_set(key, value)
    
        def _cache_force_set(self, key, value):
            self.__cache[key] = (
                value,
                timezone.now() + timedelta(seconds=self.__cache_ttl)
            )
    
        def _cache_get(self, key):
            result = self.__cache.get(key)
            if result[1] > timezone.now():
                self._cache_invalidate(key)
                return None
            return result[0]
    
        def _cache_invalidate(self, key):
            del self.__cache[key]
    
        def _cache_remove_old(self):
            now = timezone.now()
            for k, v in self.__cache.items():
                if v[1] < now:
                    self._cache_invalidate(k)
    
    settings = Settings()


    И в контекст процессоры добавить:

    def settings(request):
        return {'settings': settings}


    Ну и в любом шаблоне:
    <title>{{ settings.title }}</title>
    Ответ написан
    7 комментариев
  • Как в django реализовать поиск в админке по объектам ForeignKey?

    mututunus
    @mututunus
    Backend developer (Python, Golang)
    Ответ написан
    Комментировать
  • Как скачать страницу сайта после JS редиректа с подменой источника на PHP?

    miraage
    @miraage
    Старый прогер
    HTTP_REFERER
    Ответ написан
    Комментировать
  • Чем отличаются языки программирования PHP, PYTHON, RUBY?

    @asd111
    Сайт можно написать на любом из данных языков.
    Проще всего на Ruby/Rails и Python/Django.
    В python очень много крутых библиотек, которых нет для php и ruby - например tensor flow(библиотека от google для нейронных сетей) пока есть только под С++ и python.
    Синтаксис python проще чем ruby и php.
    Python используют yandex, google и др.
    Ответ написан
    Комментировать
  • Чем отличаются языки программирования PHP, PYTHON, RUBY?

    1. Аналогию с самими языками проводить не стоит. Аналогию стоит провести для платформ.
    Платформы вроде .net и java, которые разрабатывались для энтерпрайза, разумеется лучше для него подходят. И не важно даже, десктопное у вас приложение или веб-сервис. Важно, что в платформе есть поддержка нужных стандартов и технологий с гарантией качества от производителя.
    С другой стороны, многие компоненты таких платформ это closed-source. Поэтому, если вы не банк, а стартап, то для веб-сервиса выбирайте
    Ruby или Python.
    Социальную сеть можно сделать много на чем, но я бы делал на рельсах или джанге. А вот функционал сбербанк-онлайн я бы делал на ASP.NET MVC (т.е. на C#) или на джаве (на спринге например). Однако, тот же близзовский battle.net написан на спринге (сервер когда-то случайно отдал мне stack-trace после ошибки).

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

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

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

    4. Для веб-проектов между Ruby, Python и PHP человек бы выбирал исходя из своих умений. У каждого языка своя экосистема (библиотеки, пакетные менеджеры, серверы приложений/плагины для веб-сервера) и довольно непросто знать все сразу. Именно поэтому все расходятся по своим лагерям и просто работают. Первичный выбор языка часто определяет его популярность. Лет 5 назад Руби всех рвал за счет Рельсов, сегодня Питон и PHP подтянулись в плане экосистемы, поэтому ситуация уже другая.
    Если человек таки сумел познакомиться с разными языками, он выберет тот, в котором ему проще мыслить. Модель ООП, статическая/динамическая типизация - все это определяет ощущения КОНКРЕТНОГО человека от КОНКРЕТНОГО языка.

    5. PHP учится быстрее всех, но если вы не знаете других нормальных языков, лучше его не учите - испортитесь как программист. Python и Ruby учатся примерно одинаково. Изучение C++ - совсем другая история, я бы не ставил его в один ряд с Питоном - этот язык несколько другого уровня и требует других (более глубоких) знаний о вычислительной технике (т.е. он 100% учится дольше, чем Python).
    Ответ написан
    22 комментария
  • Чем отличаются языки программирования PHP, PYTHON, RUBY?

    Freika
    @Freika
    Senior Ruby on Rails developer
    Если говорить о различиях PHP, Ruby и Python, то в первую очередь, различия в синтаксисе. Если у Ruby и Python синтаксис более аккуратный и читабельный, то PHP тут самый некрасивый.

    Далее, Ruby полностью объектно-ориентированный язык. PHP - нет, имплементация ООП в нем есть, но она все же не так хороша, как в Ruby (За Питон тут точно не могу сказать, не интересовался).

    Комьюнити. У PHP комьюнити большое за счет минимального порога входа (русскоязычное обычно ограничивается посылом в документацию, возможно мой опыт в этом вопросе устарел). У Ruby русскоязычное комьюнити небольшое, но отзывчивое. Англоязычное вообще отличное. Про Питон, опять же, сказать не могу.

    Важный момент: на Python вы сможете писать веб-приложения, серверные и десктопные приложения под разные ОС. На Ruby вы сможете писать веб-приложения и серверные приложения. С десктопом здесь похуже. На PHP вы не сможете даже демона написать для своего веб-приложения, потому что веб - это единственная сфера применения PHP. Принимались попытки приспособить его и под другие цели, но пока из этого ничего путевого не вышло.
    Ответ написан
  • Правильный frontend?

    webdisigner
    @webdisigner
    Сначала поработай с нативным css,html,js - 1 годик так точно
    Потом поработай с bootstrap, сначала научись переопределять стили, потом изменять стили в исходном файле bootstrap.css. После этого научись пользоваться файлами bootstrap.js ну и конечно тут не обойтись без фундаментальных знаний Jquery - 15-30 дней и ты уже в теме
    Потом установи sass, и поработай с ним через командную строку
    Потом попробуй расширить sass, например установи susy, breakpoint-sass
    Опять поработай с командной строкой - 14-30 дней
    Потом установи интерпритатор sass, например compass
    Разузнай все тут, поработай с командной строкой, установи config для compass`a
    7-10 дней на это все, многое узнаешь.. - 2 дня макс.
    ->
    Потом чтобы это все говно сжать у себя в мозгу как раз придумали gulp
    Вот с этих пор, ты познаешь истинное удовольствие с gulp`ом
    Тут то и понадобятся навыки работы с консолькой
    Понимание глобального и локального нахождения плагинов и не только
    Установишь node.js, выберешь себе консольку по-красивее и по-краше, прочитаешь туториалы, просмотрешь видосы и ты уже спец по gulp - 12-15 дней макс

    материал:
    1) sass - sass-lang.com
    2) sass-playground: www.sassmeister.com (поддерживает susy,breakpoint-sass)
    3) susy - susy.oddbird.net (любые сетки, полный контроль)
    4) bootstrap - dedushka.org (неплохие уроки по css), www.w3schools.com/bootstrap/default.asp (неплохие уроки по css и js бутстрапа)
    5) gulp - https://www.youtube.com/watch?v=9zwwmjGz1Vs&list=P... (неплохие уроки по gulp)

    Ты все еще хочешь стать фронтенщиком? :)
    Ответ написан
    5 комментариев