Search
Write a publication
Pull to refresh
163
0
Валерий Макаров @valemak

Программист

Send message

Как с первого раза попасть в AppStore: пошаговое руководство

Reading time11 min
Views11K


К запуску курса «Fullstack мобильный разработчик», проводимого совместно с агентством Agima, мы подготовили серию материалов о том, как создавать приложения для мобайла. Будем говорить о кейсах, цифрах, правилах и провалах, но начнем, вместе с Никитой Архиповым из студии Anvics, с темы прохождения релиза в App Store. Разберем, как договориться с ревью-командой и избежать проблем, по шагам расскажем про техническую сторону — от создания сертификата до взаимодействия с Itunes Connect — и про то, о чем все молчат, — как же все таки пройти ревью с первого раза. Готовьте лапки, и поехали!

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

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

Вот куда ушли ваши детские воспоминания

Reading time8 min
Views26K

Мозгу необходимо забывать, чтобы расти




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

Когда я пытаюсь вспомнить жизнь до пятого дня рождения, в памяти всплывают только эти проблески – эти чиркания спичкой в темноте. Однако я уверен, что я столько всего почувствовал, подумал и выучил. Куда делись все эти годы?
Читать дальше →

Скрипт Automator, загружающий изображения на Habrastorage: второе пришествие

Reading time2 min
Views7.8K
Некоторое время назад я сделал скрипт, который загружает изображения на Habrastorage прямо из файлового менеджера. Но вот беда: после обновления он перестал работать.

image

Но вчера мне все-таки надоело загружать фотографии через веб-интерфейс, и я пошел чинить скрипт.
За решение надо ставить плюсики в карму пользователю avalak, который рассказал как это сделать в моем вопросе на тостере. Тостер — торт!

Итак, как теперь загружать изображения?
Читать дальше →

Безопасность Microsoft Office: форматы документов

Reading time14 min
Views14K
Всем привет!
Этой статьей мы открываем цикл, посвященный исследованию безопасности компонентов Microsoft Office. Речь в материале пойдет о форматах данных, шифровании и получении символов.
Когда в компании Microsoft задумывался и разрабатывался масштабный пакет офисных программ Microsoft Office, вероятно, создатели надеялись на успех. Сложно сказать, могли ли они рассчитывать на его триумфальное шествие по миру впоследствии, на то, что продукт станет фактическим стандартом, а существование его растянется на десятилетия. Однако можно уверенно утверждать, что массивность приложений, количество человеко-часов, затраченных на создание, развитие, поддержку обратной совместимости компонентов продукта способствовали появлению «тяжелого наследия» в виде устаревшего, написанного десятилетия назад программного кода, составляющего ядро приложений даже в последних версиях пакета. Требования, которые предъявлялись к коду двадцать лет назад, изменились. Сегодня во главу угла ставится кроссплатформенность, масштабируемость и безопасность. При этом, расходы на значительные изменения в продукте таковы, что Microsoft предпочитает подход «не сломано – не трогай», и старательно обеспечивает обратную совместимость с самыми древними форматами документов. Не обходится и без определенного давления со стороны коммерческих и государственных структур, которые также медленно и неохотно обновляют свои технологические парки, предпочитая привычные средства в ущерб развитию и безопасности.

Покопавшись в дебрях обработчиков файлов Microsoft Office, мы готовы представить вам это небольшое исследование.
Читать дальше →

Странные операторы в PHP

Reading time4 min
Views41K


Если вы прочитаете документацию по PHP, вы узнаете о массе операторов. Если вы не знаете ещё PHP-операторы, сперва изучите их, а потом вернитесь к прочтению этой статьи.

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

Классические алгоритмы и структуры данных на JavaScript

Reading time2 min
Views95K
Привет Всем! Я недавно запустил на GitHub проект JavaScript Algorithms and Data Structures, который содержит примеры классических алгоритмов и структур данных написанных на JavaScript с объяснениями, примерами и ссылками для дальнейшего изучения (в частности на соответствующие YouTube видео).

Основная задача проекта — помочь программистам в изучении и применении алгоритмов и сделать это на JavaScript-е.
Читать дальше →

Механика сновидений

Reading time8 min
Views47K

Rob Gonsalves, Bedtime Aviation

В этой статье я субъективно опишу что такое сновидения, как они появляются и где же та самая грань между реальностью и сном, а также, опишу самый простой способ начать осознавать себя во сне. Дело в том, что я познакомился с осознанными сновидениями очень рано, где-то в средних классах школы. Не помню точно, как это произошло. Думаю, это была какая-то защитная реакция мозга на многочисленные кошмары. Мельком посмотрел некоторые статьи на эту тему и не нашёл ничего похожего на собственный опыт. Поэтому не стал искать дальше, решил написать свою, чтобы другие материалы как можно меньше влияли на моё мнение.
Читать дальше →

Краткая формула про длинную выдержку

Reading time5 min
Views23K
Нет, это не просто картинка для красоты. Это – Алёна, участница эксперимента. Которая именно танцем внесла в него основной вклад. Впрочем, обо всём по порядку.


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

Вопрос: а как вероятность этого зависит от выдержки?

По этому поводу возможны многочисленные теоретические соображения. Но теория без эксперимента – это как тост без вина. А потому был проведён эксперимент:

  1. Расставлена фотостудия.
  2. Включена музыка.
  3. Приглашена Алёна.
  4. Которая танцевала...
  5. … пока я в случайные моменты времени делал со штатива фотографии с разными экспозициями, набрав их в итоге несколько сотен...
  6. … и подсчитав в конце долю чётких среди них.

Читать дальше про методику и результаты


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

Открытое письмо к маркетологам и прочим пиарщикам, причастным к контенту на Хабре и других ресурсах

Reading time7 min
Views70K

Короче, настало время. Присаживайтесь поудобнее

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

Дисклеймер: это не пост хейта или срача на тему «компании — вон с Хабра!», а вполне обоснованный текст на тему того, что стоит делать, чего не стоит делать и как с этим дальше жить. Он зрел в моей голове не один месяц, учитывая, что я уже пятый год зарабатываю на хлеб с маслом написанием постов. Надеюсь, что текст найдет отклик у аудитории и ситуация на платформе немного улучшится.

Этим постом я хочу достучаться до многочисленных маркетологов, которые пасутся на моей родной «полянке» и тут же делают не самые приличные вещи, которые, в итоге, бьют и по мне в том числе. А еще я хочу поговорить с аудиторией.
Поехали

Комментирование кода: хороший, плохой, злой

Reading time4 min
Views43K


Вы наверняка это слышали: «Хороший код является самодокументированным».

Я больше 20 лет зарабатываю написанием кода, и слышал эту фразу чаще всего. Это клише.

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

Она истинна? Да.

Означает ли она, что вы никогда не должны комментировать код? Нет.

В этой статье мы рассмотрим разные аспекты комментирования кода.
Читать дальше →

Наука сна: часть 2

Reading time9 min
Views15K
Вторая часть статьи, раскрывающей удивительные секреты происходящего в вашем мозгу после того, как вы закрываете глаза и улетаете в страну снов (и о том, что происходит, если этого не делать).

4. Сны


Ах, сны – самая интригующая, загадочная и интересная часть процесса сна. Что мы знаем о них? Да, вы правильно догадались – недостаточно для полной уверенности в чём бы то ни было.

Давайте сразу отбросим Фрейда с его «подсознательными желаниями» (у нас ведь научный блог) и перейдём сразу к фактам. Некоторые исследователи считают, что между недавно созданным воспоминанием, их консолидацией и формированием снов существует связь. Одна из гипотез говорит, что когда элементы нового воспоминания появляются во сне, мозгу становится проще записать их, поскольку они воспроизводятся в изначальном состоянии (вы как бы воспринимаете воспоминания заново). Существуют исследования, показывающие, что утром, после того, как людям снилось что-то недавно выученное, они лучше справляются с воспоминаниями на этот счёт, чем те, кому этого не снилось.

Про спящих в аэропорту: полезности и байки

Reading time7 min
Views79K
Я много летаю и повидала разное дерьмо вроде восьмичасовой задержки рейса и больших окон между транзитами в 3 пересадки. Мои друзья теряли документы, или же мы просто летали через Копенгаген летом, когда койка в хостеле стоит 15 тысяч рублей за ночь.

Мы спали в Копенгагене в аэропорту, и было страшно. Как вернулись, я узнала про этот вид хобби много интересного.

Первое — идём на sleepinginairports.net. Там огромная база знаний, есть куча гайдов из серии «В этом аэропорту будьте внимательны, там нет розеток» или «Там есть зона A, где лучше всего спать». Там же показано, где душ, где можно вымыть ноги (в молельнях) и где комната йоги. Комната йоги — это сразу лютый вин, там очень хорошо спать.
Читать дальше →

Управление платежами в Приват24 из Google-таблиц

Reading time5 min
Views15K

Работать с интернет-банкингом большого количества предприятий может оказаться достаточно рутинной задачей. Для создания платежей и их контроля необходимо каждый раз переключаться между кабинетами. А если таких организаций больше 50, то можно с легкостью сбиться и наделать ошибок, не говоря уже о портаченном времени. Давайте посмотрим, как можно облегчить жизнь бухгалтера на примере API ПриватБанка для бизнеса.
Читать дальше →

Нумерация двоичных деревьев

Reading time3 min
Views6.5K
Как пронумеровать все двоичные деревья? Как на КДПВ: “дерево” из одного листа будет первым, дерево из двух листов вторым, второе дерево с ещё одной веткой, исходящей из корня – третьим. А как найти номер произвольного дерева в такой схеме?

КДПВ
Читать дальше →

Решаем задачи без самобалансирующихся деревьев в Python

Reading time10 min
Views16K
Многие задачи на алгоритмы требуют знания определённых структур данных. Стек, очередь, куча, динамический массив, двоичное дерево поиска — нечасто решение алгоритмической задачи обходится без использования чего-либо из них. Однако, качественная их реализация — нетривиальная задача, и при написании кода всегда хочется по максимуму обойтись использованием стандартной библиотеки языка.

Что касается Python, то в нём есть почти всё.

  • Динамический массив — встроенный тип list. Он же поддерживает и стековые операции: .append() и .pop().
  • Хэш-таблица — встроенные типы set и dict, а также неизменяемый брат сета frozenset.
  • Куча — list со специальными операциями вставки и удаления, реализованными в модуле heapq.
  • Двусторонняя очередь — это описанный в модуле collections тип deque.

Но вот самобалансирующегося дерева поиска, как такового, в стандартной библиотеке нет. А жаль!

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

Начинающему веб-мастеру: делаем одностраничник на Bootstrap 4 за полчаса

Reading time15 min
Views227K
Фреймворк Bootstrap — это свободный набор инструментов для создания интерфейсов сайтов и веб-приложений. Его возможности ориентированы исключительно на фронтенд-разработку. Bootstrap — проект весьма популярный, о чём, например, говорит то, что он занимает (по состоянию на начало марта 2018-го года) второе место по количеству звёзд на GitHub.


Если вы хотите освоить Bootstrap, в частности, его самую свежую, четвёртую версию, значит, этот материал подготовлен специально для вас. Здесь, на небольшом сквозном примере, который реально освоить за полчаса, будут продемонстрированы основы Bootstrap, разобравшись с которыми вы вполне сможете сделать что-то своё, использовав этот фреймворк.
Читать дальше →

Как не стать Python-разработчиком

Reading time2 min
Views106K
Как выглядит трек обучения программированию на Python с нуля? С чего стоит начать? На чем сделать акцент? Как не потерять интерес?

Полгода я искал ответы на эти вопросы, тщательно исследуя предметную область. Я обнаружил много полезных советов. Особенно в заметке Василия Большакова и на Хекслете. Но мне не хватало структуры. Знания нарастали со всех сторон и превращались в кучу. Чтобы структурировать процесс обучения и оценить его масштаб, я собрал план.
Читать дальше →

Наш опыт создания редактора блок-схем для веб приложения

Reading time3 min
Views19K

К любой компании, которая занимается инструментами для разработчиков, рано или поздно приходит делегация клиентов. Со словами «программистов нет, задачи простые, нужен визуальный редактор». Автоматикой телефонных и видеозвонков мы занимаемся уже много лет, кому и зачем звонит робот хорошо себе представляем, VueJS любим, голова не болит. Почему бы не сделать? Под катом — закулисье и техническая сторона того, что маркетинг красиво назвал «Smartcalls».
Читать дальше →

Препарирование файлов .XLSX: редактирование файла средствами PL/SQL

Reading time9 min
Views12K
Часть 1. Введение, стили
Часть 2. Строки, разметка
Часть 3. Редактирование через PL/SQL

Доброго дня. Третья часть разговора про формат XLSX подоспела. Я не случайно начал со внутреннего устройства файла. Не понимая где что находится и как выглядит, сложно понять, для чего я сделал то-то и то-то. К тому же, теперь я могу сделать несколько замечаний:

Первое. Если я не упомянул какой-то элемент, который нужен именно вам, — создайте пустой файл XLSX, сделайте нужный элемент и сохраните. Теперь вы знаете, где искать код, определяющий этот элемент.

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

Чем заняться айтишнику в армии или как я на VBA игры писал

Reading time3 min
Views184K
Прошло уже больше двух месяцев с момента моей демобилизации. Я уже освоился на свободе, пришло время рассказать интересную историю со службы. Служил я в разведке!.. По распределению попал в центр радиоперехвата. Работенка не пыльная, сидишь ночами в наушниках и слушаешь врага. Но речь пойдет не об этом.

У каждого оператора поста радиоперехвата (таковыми мы числились) был в распоряжении компьютер с подключенными к нему радио-приемными устройствами. На компьютере стоял спецсофт + Excel. Все остальное было заблочено. После N-ного дежурства я стал скучать… Зачесались руки.
Читать дальше →

Information

Rating
Does not participate
Location
Кировоград, Кировоградская обл., Украина
Date of birth
Registered
Activity