Все потоки
Поиск
Написать публикацию
Обновить

Нулевая выдача: как попасть в яблочко?

Занять место повыше — мечта любого маркетолога. Наверняка при поиске информации вам попадались фрагменты текста с сайта, оформленные поисковиком в специальный прямоугольник (пример на картинке ↓). Это и есть нулевая выдача.

"

Нулевую позицию могут занимать:

  • Блоки ответа, которые выводятся при конкретном запросе: время, погода, курс валют или переводчик.
  • Расширенные сниппеты — это колдунщики Яндекс.Карт и Яндекс.Справочника, OneBox результаты из Google Карт и Google Мой Бизнес (добавьте свою компанию во все перечисленные сервисы!), расширенные результаты на нулевой позиции.
Читать дальше →

Программирование с нуля

Данная статья описывает основные конструкции в программировании и предназначена для тех, кто хочет в этом разобраться. Но статья не описывает все нюансы, потому что их слишком много. Если описывать их все, будет очень нудно и непонятно.

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

Читать дальше →

Как восстановить удаленные фотографии с SD-карты

Нет ничего более душераздирающего, чем потеря этой последней фотографии бабушки или видео первых шагов вашего ребенка.

Хорошая новость заключается в том, что если у вас все еще есть эта SD-карта, у вас все еще есть надежда.

Как работает восстановление файлов


Это может вызвать у вас шок, но когда вы удаляете файл с SD—карты (или жесткого диска, или флэш-накопителя), эти данные не стираются сразу- вместо этого ваш компьютер просто помечает это пространство как доступное для перезаписи. Даже если вы не можете видеть файлы, они все еще там, пока ваша камера (или компьютер) не перезапишет их с чем-то другим. Это означает, что если вы не сделали слишком много новых фотографий, вы можете получить эти старые фотографии обратно.
Читать дальше →

Попытка обойтись без require в Node.js

Поделюсь небольшими экспериментами с дублированием функциональности require в Node.js. Практика скорее порочная, но немного проливает свет на проблемы этой популярной платформы. Изначальная мотивация в подобных изысканиях возникла после следующих наблюдений.


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


В итоге захотелось по крайней мере свои файлы подключать самодельным, но более прозрачным способом. Параллельно добавив несколько дополнительных фич. Так появились нижеописанные функции.

Читать дальше →

Бессмысленность JavaScript

Предыстория


Статья несет сатирически-юмористический характер, не стоит воспринимать ее всерьез

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

Обратим свое внимание на давнее замечание по поводу графической надстройки Windows:

image

Именно с тех пор мы с Вами стали заложниками главной беды XXI века — графических интерфейсов.

Общество развивалось. Начали появляться пользовательские сайты, тогда способы разнообразить их были куда более скудными, нежели сейчас, но технологии развивались и на свет появился триумф бессмысленности графических интерфейсов — JavaScript.
Читать дальше →

Battle City/ Городской Бой (перевод авторского руководства игры)

image

Вы в городских джунглях, ваш танк столкнётся с натиском вражеских сил! Они быстрее перемещаются, имеют более высокую скорострельность и их броня гораздо крепче, но ваш танк способен переломить ход битвы. Вы будете не одиноки в этой битве, за попадание по мерцающему противнику, вам зачтётся специальный бонус, который изменит характеристики
вашего танка, повлияет на окружение или добавит вам дополнительную жизнь. Итак, вперёд, атакуйте врага, но НИКОГДА не позволяйте ему стрелять по вашему штабу!
Читать дальше →

Аудит это скучно (?)

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

Немного предыстории


Меня можно назвать фрэш бладом в моей специальности (кибербезопасность). Когда передо мной встал выбор — куда я хочу поступить, я насмотревшись фильмов про «суперхакеров», решил, что моя душа лежит именно к ИБ (ещё не зная тогда, на каком огромном перекрестке путей мне предстояло оказаться) я успешно вступил в ВУЗ и начал свой путь именно с обучения в «выше».

image

Интересовали меня по большей степени профильные предметы, начиная с программирования, «флэйринга» железом и заканчивая дисциплинами по типу «Защита ПК и Моб. устройств от вредоносов». Время шло и я начал замечать, что мой потенциал не покрывают дисциплины и всего этого будет совершенно недостаточно, чтобы стать специалистом хотя бы pre-junior уровня.
Читать дальше →

Как избежать кэширования медиа-файлов на сервере разработки Django

Когда ваше приложение Django разворачивается в общедоступной сети, его статические файлы обслуживаются непосредственно Apache или Nginx без какого-либо участия Django или вашего кода на Python. По крайней мере, это то, что должно происходить. Статические файлы — это таблицы стилей, образы, все, что находится на вашем сервере, что возвращается в ответ на запрос и не нуждается в динамической сборке. Apache или Nginx могут обслуживать эти файлы быстро, и могут справляться с проблемами кэширования, сообщая клиенту, когда у него уже есть текущая версия и нет необходимости загружать новую.

Но когда Вы разрабатываете приложение Django, Вы, как правило, обслуживаете его, используя сервер разработки Django, на браузере на Вашей локальной машине, а не беспокоитесь о реальном веб-сервере, таком как Apache. Это обычно более удобно по нескольким причинам. Основная из них может заключаться в том, что сервер разработки загружает новый код по мере того, как Вы его изменяете и не требует перезапуска.

Часто возникает одна проблема, при изменении таблицы стилей или других статических ресурсов, вы обнаружите, что ваш браузер упорно держится за устаревшие, кэшированные версии. Сервер разработки Django, похоже, не знает, что файлы изменились. Хуже того, кажется, что время от времени происходит кэширование самих файлов, так как даже указание вашему браузеру перезагрузить страницу часто не обновляет кэш. Итак, теперь вы перезапускаете сервер разработки, как если бы это был Apache.

Читать дальше →

Не работает 3 и 4 слот оперативки, только одноканальный режим

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

Решил доставить еще две планки оперативки — краш. Искал много вариантов о том что не работает один из каналов оперативной памяти, ничего не нашел по делу — и многие после чистки от пыли просто покупали новую материнку.
Читать дальше →

Несколько границ на одном блоке

Всех приветствую на моём посте. Здесь я вам расскажу о таком интересном и необычном трюке CSS — Как создать несколько границ на одном блоке (не только блоке).

Скажу сразу, мы не будем использовать свойство border, так как у него нет возможности добавлять несколько границ. Нам придётся использовать другие свойства, но пойдём по порядку.
Читать дальше →

Онбординг или 5 способов познакомить пользователей с приложением

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



Вы можете прочитать статью или посмотреть видео на Youtube.com

Читать дальше →

Операционная система elementary OS 5.1 Hera

image

«Простая, быстрая, открытая, безопасная. Превосходная замена Windows и macOS — так заявляет разработчик данного дистрибутива Linux. А так это попробуем разобраться в этой статье.
Читать дальше →

Клеточный автомат на SFML C++

Клеточный автомат.

В нашем случае карта замкнутая а размеры можно выбирать. Основная логика игры в том что в начале или в ходе игры рисуются клетки в плоскости с квадратными клетками и следующая позиция клеток которые должны быть в следующем ходе записывается в резервный массив nextStep[][]. В цикле пробегается по каждой клетке и считается их соседи. И в зависимости от количества соседей клетка либо умирает или рождается.

const int width = 100; //ширина карты
    const int height = 50; //высота карты
    const int sizeTile = 10; //размер каждого тайла
    bool world[width][height] = {0}; //двумерный массив с клетками в этом ходе
    bool nextStep[width][height] = {0}; //двумерный массив с клетками которые будут в следующем ходе
    int neighbours; //счетчик отвечающий за количество соседей
    float interval = 0;

Объявление начальных переменных отвечающих за высоту и ширину мира и размер каждой клетки.

RectangleShape tileBlack(Vector2f(sizeTile, sizeTile)); //черный квадрат будет рисоватся где живые тоесть заполненные клетки
    tileBlack.setFillColor(Color::Black);

    RenderWindow window(VideoMode(width*sizeTile, height*sizeTile), "Life"); //размеры окна размеры тайла умноженный на высоту и ширину карты

    Clock clock; float time;

Читать дальше →

Маркетинг дефицита: это все еще работает?

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


В наши дни все кажется легким, удобным и доступным. С помощью нескольких щелчков мыши вы можете получить почти все (продукты, одежду, транспорт).


Если люди не могут получить что-то от одной компании, несколько щелчков мышью и другой вариант.


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


Имея все это в виду, давайте поговорим о дефицитном маркетинге и о том, как эффективно его использовать с сегодняшними потребителями «хочу сейчас».

Читать дальше →

Электромагнитные взаимодействия с точки зрения квантовой электродинамики

Введение


Мы все наслышаны из школьного курса физики о магнитных и электрических полях и их связи, а также об электромагнитном излучении, выражающемся через их колебания, но сколько из нас осведомлены о подлинной природе электромагнитных явлений?

Взяв за основу тот факт, что электромагнитное поле (также как и свет) состоит из фотонов, можно сделать весьма интересные выводы о структуре электромагнитных взаимодействий.
Читать дальше →

Искусственный интеллект: cхема

image

Мысли, идеи и концепции, которые пришли до и вовремя составления данной схемы


  1. Избежать подобия и симуляции. Выбрать еcтеcтвенный путь, даже если он будет подобным.
  2. Для искусственного мышления нужна искусственная жизнь, плавно соединяющаяся с естественной жизнью.
  3. Искусственный интеллект не обязательно должен быть централизованным с самого начала, и мы видим сейчас в мире, как он децентрализованно создаётся всеми в разных странах и компаниях по частям.
Читать дальше →

Простой php фреймворк для начинающих

Доброго времени суток Хабровчане.

Представляю вашему вниманию супер простой php фреймворк. В нем только самое основное, что нужно для простых блогов.

Структура директорий:

Index.php
/assets/
/framework/php/
/framework/html/
/framework/system/

Итак, поехали:
Начнем с парадной двери — index.php
Вообщем отказался напрочь от html кода в индексе, так как это неудобно.
Для head или footer решил сделать отдельные функции, так как для них писать одну универсальную функцию слишком запутано получиться. Зато теперь для каждого из них можно подключать дополнительно разные примочки типа галерею.
Читать дальше →

Как сдержать новогодние обещания и не прожить год впустую

Всем привет!

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

Как запустить bash скрипт на хосте или в соседнем контейнере из docker контейнера

Мне была поставлена задача, которая потребовала настроить систему создания новых контейнеров и управления существующими из основного контейнера.

Задача противоречит принципам изоляции докера, но иногда такое решение оправдано (ИМХО).

1)Консольные команды из одного docker контейнера в другой.

Тут всё просто, достаточно прокинуть сокет докера и установить docker в контейнер.
Читать дальше →