Большинство приложений, которые мы создаем сегодня, требуют внесения каких-то видоизменений в набор данных. Обработка элементов массива — это стандартная операция, с которой вы, скорее всего, часто сталкиваетесь. Забудьте обычный способ выполнения таких действий— с помощью цикла for-loop, когда вы использовали что-то вроде int i; i < value.length; i++. Предположим, вы хотите показать список продуктов и […]
Автор: editor
Как построить идеальное хранилище данных
Может показаться, что в последние годы многое изменилось в сфере сбора и хранения данных. Такие вещи, как NoSQL, «Big Data», различные графические и потоковые технологии изменили “ландшафт”, но “фундамент” остался прежним. На моей текущей работе мы используем Amazon Redshift в качестве хранилища данных. Однако, если бы мы построили традиционное хранилище […]
Изучение нового языка для работы с данными
В постоянно меняющейся экосистеме инструментов для анализа данных вам придется часто изучать все новые и новые языки, чтобы идти в ногу со временем и эффективно работать в команде. В течении нескольких лет я писал код на языке R, но давно уже хотел перейти на Python, чтобы в полной мере использовать библиотеки […]
Освобождаем место на диске после docker
Я большой фанат docker. Уже более чем 2 года я уверен в том, что этота технология изменит способ развертывания приложений. Не только web-приложений, но и инструментов командной строки, а, возможно, и графических приложений. Но такая точка зрения не отменяет кучи недостатков, с которыми я периодически сталкиваюсь. Один из основных неприятных […]
Razer Huntsman — клавиатура с невероятно быстрыми переключателями!
Совсем недавно в Ирвине, штат Калифорния, компания Razer — одна из лидирующих в сфере разработки современных девайсов для геймеров, представила новейшую серию игровых клавиатур под названием Huntsman. В данный момент эта линейка располагает двумя устройствами: Huntsman и Huntsman Elite. Первое отличается высокими техническими показателями и превосходной производительностью, а второе, вдобавок […]
Как в MySQL добавить новое поле и сделать его первичным ключём и заполнить автоинкрементом
Бывают такие ситуации, когда в какой-либо таблице вместо первичного ключа с автоинкрементым значением используется что-то другое, например уникальное строковое значение. Но рано-или поздно возникает потребность в доступе к этой таблице по числовому первичному ключу. И чтобы изменить первичный ключ и заполнить его значениями нужно прибегнуть к такой хитрости:
Как в Golang создать двумерный 2D slice массив
Например, чтобы создать массив 3 на 3 элементов, можно воспользоваться таким способом: var input = [][]int{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}} Для большей строгости можно также указать размеры массива: var input = [3][3]int{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}
Как в Golang сделать цикл по всем элементам массива
В Golang есть как минимум три способа пробежаться по всем элементам массива. Для начала рассмотрим foreach-like способ: for key, value := range A { // do something }
JavaScript – Массивы. Метод concat
Метод concat() возвращает новый массив, состоящий из массива, соединенного с двумя или более массивами. Синтаксис Синтаксис метода concat () заключается в следующем: array.concat(value1, value2, …, valueN);
Настройка обратного прокси-сервера Traefik для контейнеров Docker в Ubuntu 16.04
Docker – довольно эффективный метод запуска приложений в среде производства. Но что делать, если нужно запустить несколько приложений на одном хосте Docker? В такой ситуации можно настроить обратный прокси-сервер, который будет поддерживать открытыми только порты 80 и 443. Traefik – это обратный прокси с поддержкой Docker, который предоставляет встроенную панель мониторинга. Данный […]