Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Я и моя борода: как бриться «по науке»
Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
evnuh

evnuh

Поиск Гугл помог мне, впусти и ты его в свой дом
  • 562
    вклад
  • 24
    вопроса
  • 661
    ответ
  • 23%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как еще оптимизировать запрос без связей в таблице с 4 млн записей?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Ускорить запрос = сделать индексы. Как вы вообще проектируете БД, не зная про индексы? Идите читайте.
    Любой вопрос про оптимизацию запроса должен включать в себя вывод результата двух запросов:
    SHOW CREATE TABLE <tablename>; -- или его аналоги для вашей СУБД
    и
    EXPLAIN <query>;
    Ответ написан более трёх лет назад
    Комментировать
    Нравится 1 Комментировать
  • В чем в MySQL лучше хранить день рождения?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    День рождения (год, месяц, день) лучше хранить в DATE, очевидно. Не разбивать их по столбцам, а оперировать с данными внутри базы.
    Ответ написан более трёх лет назад
    3 комментария
    Нравится 2 3 комментария
  • Как убрать на Mac из дока программы в которых нет открытых документов?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    В маке разделены понятие окон и программ. То есть программа может быть запущена, но окон в ней может не быть. Например вы открыли два документа Word, закрыли оба, окон не осталось, но ворд так и будет запущен. Вам нужно либо через главное меню нажать Word -> выйти, либо ⌘+Q.
    Сделано это для того, чтобы вы могли закрыть приложение, при этом сохранить все открытые документы и расположение окон при следующем открытии этой программы. Это поведение отключается в настройках -> общие.
    Запомните - закрыть окно/документ - ⌘+W, закрыть приложение не закрывая документов - ⌘+Q.
    Ответ написан более трёх лет назад
    1 комментарий
    Нравится 3 1 комментарий
  • Где взять реалистичные биржевые данные?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    moex.com/a2193
    Ответ написан более трёх лет назад
    Комментировать
    Нравится 1 Комментировать
  • Какую среду разработки использовать, чтобы для запуска не требовались библиотеки (Win)?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Все, кроме тех, которые не транслируются в машинный код, то есть не скриптовые (php, js, python), не в виртуальных машинах (java, c#, scala). Например С, С++, Go, Rust.
    Вообще Go как раз одной из парадигм заявляет что один экзешник - наше всё. Советую его.
    Ответ написан более трёх лет назад
    2 комментария
    Нравится 2 комментария
  • Как определить количество страниц в индексе Google - php+oauth2?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Аналитикс - это про js, запускаемый в браузере ваших посетителей
    Webmaster - это про поисковую базу на серверах гугла, что вам и надо.

    При чём здесть авторизация вообще?
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Как поправить кроссдоменный запрос?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    никак
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Как перебросить файлы после загрузки?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Nginx file upload - https://coderwall.com/p/swgfvw/nginx-direct-file-u...
    А файл на первом сервере у вас уже сохранён, в папку /tmp скорее всего. Функция move_uploaded_files не сохраняет их, а, как не сложно догадаться, перемещает. Можете её не использовать
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Как в Sublime Text 3 сделать обзор папок при помощи FTP плагина?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Нет. А если бы можно было, стал бы разработчик писать специально такой неудобный плагин?
    Меняйте схему работы, откажитесь от изменений файлов на сервере, а изменяйте их локально и синкайтесь на сервер.
    Ответ написан более трёх лет назад
    1 комментарий
    Нравится 1 1 комментарий
  • Как открыть сайт с локального сервера по домену?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Для http://локальный_ip_сервера/.../ - нужно указать в Apache правильный document root
    Для project.net/... - нужно либо в ваш dns сервер на роутере добавить ваш ip для project.net либо на всех компах прописать его в hosts, либо использовать сервисы типа ngrok, но тогда адрес будет другой
    Ответ написан более трёх лет назад
    Комментировать
    Нравится 3 Комментировать
  • Какой локальный сервер выбрать для mac?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    homebrew -> install nginx, php-fpm, mysql
    Ответ написан более трёх лет назад
    Комментировать
    Нравится 2 Комментировать
  • Блокирует ли адблок рекламу яндекс.директ'а?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    да
    Ответ написан более трёх лет назад
    3 комментария
    Нравится 3 комментария
  • Как делают сайты со статьями?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Статичные сайты - (только html/css/js) - да, нужно руками писать html код, чтобы менять содержимое сайта.
    Динамичные сайты - это программа на любом языке программирования, которая в зависимости от входных данных (url, параметры формы и т.д.) выдаёт разные выходные данные (генерирует html на лету). При этом данные (текст статьи) она может записывать и читать в базу данных. Тут вы можете управлять этой программой, давать ей команды записать в базу такой-то текст, а она потом по какому-нибудь определенному url этот текст возьмёт и базы и сгенерирует html код с текстом статьи и отдаст браузеру. Чаще всего это программы на языке PHP, которые ты можешь написать сам, а можешь взять что-то готовое, типа cms.
    Ответ написан более трёх лет назад
    1 комментарий
    Нравится 1 1 комментарий
  • Как защитить очки в онлайн-игре от накруток?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    подтверждение голоса через смс или на худой конец соц сеть
    Ответ написан более трёх лет назад
    2 комментария
    Нравится 2 комментария
  • Смаршалить в JSON поля внешней структуры через метод внутренней, или один метод для всех типов?

    evnuh
    evnuh @evnuh Автор вопроса
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Решение дали на stackoverflow и как подсказал Никита

    Решение простое -
    func Save(i interface{}, id int) {
        data, err := json.Marshal(i)
        check(err)
        if id == 0 {
            _, err = app.DB.Exec(`INSERT INTO users(data) VALUES ($1) `, string(data))
        } else {
            _, err = app.DB.Exec(`UPDATE users SET data = $1 WHERE id=$2`, string(data), id)
        }
        check(err)
    }

    и вызывать
    u := User{}
    a := Admin{}
    
    Save(u, u.ID)
    Save(a, a.ID)


    Мне потом ещё потребовалось присваивать ID, вернувшееся из базы обратно в структуру, поэтому я сделал
    interface Model {
        getID()
        setID()
    }

    Сделал реализацию этого интерфейса для User и использовал его вместо interface{}
    func Save(i model) {
    	data, err := json.Marshal(i)
    	var id int
    	check(err)
    	if i.getID() == 0 {
    		err = app.DB.QueryRow(`INSERT INTO users(data) VALUES ($1) RETURNING id`, string(data)).Scan(&id)
    		i.setID(id)
    	} else {
    		_, err = app.DB.Exec(`UPDATE users SET data = $1 WHERE id=$2`, string(data), i.getID())
    	}
    	check(err)
    }
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Откуда столько followers на github?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Из 127000 им зафолловленных только 1200 зафоловвили его в ответ. Это всего 1%, что говорит о том, что техники накрутки, успешно работающие в инстаграме, не оправдывают себя в тусовке программистов :)
    Ответ написан более трёх лет назад
    7 комментариев
    Нравится 3 7 комментариев
  • Как SmmBox получает доступ к работе со стеной, не являясь Standalone-приложением?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Сдаётся мне, что они и вправду попросили у администрации доступ к стене
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Как яндекс.маркет группирует товары?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    https://yandex.ru/support/partnermarket/elements/v...
    Ответ написан более трёх лет назад
    Комментировать
    Нравится Комментировать
  • Где лучше брать сертификаты для https?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Конечно первым делом следует посоветовать https://letsencrypt.org, а вторым делом, конечно, гугл
    lmgtfy.com/?q=ssl+certificate
    Ответ написан более трёх лет назад
    2 комментария
    Нравится 2 комментария
  • Foreach или num_rows - что лучше?

    evnuh
    evnuh @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    MySQL - это СУБД, а не БД. Ключевое отличие здесь как раз в буквах СУ (система управления), что означает, что это не тупое "хранилище данных", как вам написал Троцкий 2.0, а система управления данными. И в этом её задача - перемалывать эти самые данные и отдавать вашему приложению. Поэтому данные из бд должны приходить уже в готовом виде, без лишней информации, без недостающей информации, а уже готовые. Потому что это работа субд, а не приложения.
    В вашей задаче правильный ответ - SELECT COUNT().
    Ответ написан более трёх лет назад
    Комментировать
    Нравится 5 Комментировать
Оценили как «Нравится»
  • ← Предыдущие
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • Следующие →
Самые активные сегодня
  • SoreMix
    SoreMix
    • 7 ответов
    • 0 вопросов
  • Drno
    • 7 ответов
    • 0 вопросов
  • firedragon
    Владимир Коротенко
    • 7 ответов
    • 0 вопросов
  • Василий Банников
    • 6 ответов
    • 0 вопросов
  • Fallenyasha
    • 6 ответов
    • 0 вопросов
  • sergiks
    Сергей Соколов
    • 5 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации