Search
Write a publication
Pull to refresh
2
0
Сергей Викторыч @SpyDeX

ПО (разработка, разработка и ещё раз разработка)

Send message

Веб пора спасать?

Reading time3 min
Views33K

Последние пару лет у меня не проходит ощущение, что веб стремительно уступает место чему-то, что мне не нравится. Чему-то чем он быть не должен. Ощущение вполне субъективное, но на прошлой неделе я натолкнулся на статью Андре Стальца (André Staltz) под заголовком "Веб начал умирать в 2014. И вот как", которая подтверждает мои ощущения фактами. И вот что я думаю о причинах.

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

ep.io — хостинг для python web-приложений

Reading time3 min
Views32K
Сразу хочу сказать что не имею никакого отношения к компании, которая создала этот сервис.

Вступление


До того, как я опробовал хостинг от ep.io, я несколько раз встречал упоминание о нем в интернете, в основном на буржуйских сайтах. Отзывы были только положительные, гики радовались и хвалили сервис. В итоге я все-таки решил его попробовать и недолгая переписка с поддержкой сервиса дала свои результаты — мне выдали инвайт.

Для чего?


Как написано в документации хостинг предназначен для Django, Pylons, Pyramid, Flask, Trac или любых других WSGI-совместимых приложений. Я пока успел попробовать побаловаться с небольшими приложениями на фреймворке bottle.
Читать дальше →

Проверка кармы пользователя сайта habrahabr.ru с помощью Python на Android. Часть 2 — GUI

Reading time4 min
Views6.9K
В первой части я рассказал как настроить Android смартфон для работы с SL4A (Scripting Layer for Android), показал как вызывать системные всплывающие окна, получать из них введенную пользователем информацию и выводить в них результат работы. В этой же части я расскажу о построении интерфейса к приложению с помощью WebViews. Если коротко, то WebViews это способ построить интерфейс приложения с помощью HTML, JavaScript и CSS. Если учесть, что в Android смартфонах полнофункциональный webkit, то построение интерфейса не такая уж и проблемная задача.
Читать дальше →

Построение графиков на Android: sl4a, python и flot

Reading time4 min
Views14K
Доброго времени суток, %username%!

Введение


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

Однажды я оказался в ситуации, что данные для построения графика уже есть, а компьютера под рукой нет. Но ведь с такой задачей может справиться и смартфон! Так я смог заставить себя начать применять знания, полученные из наполовину пройденного курса по Python от Google, и использовать sl4a, уже успевший покрыться виртуальной пылью. Итак, для работы понадобятся sl4a (кто еще не слышал такую аббревиатуру, прочитайте это, это и это) + flot (подойдет любая библиотека для построения графиков на js).
Читать дальше →

Простые сладкие приложения с Kivy

Reading time12 min
Views110K

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


Возможно, для вас будет новостью, но разрабатывать мобильные приложения с функционалом, который доступен Java разработчикам, под Android с помощью фреймворка Kivy не просто просто, а очень просто! Именно этого правила я придерживаюсь, создавая свои проекты с Python + Kivy — разработка должна быть максимально простой и быстрой. Как щелчок пальцами.


На новичков подаваемая информация не расчитана, я не буду на пальцах объяснять, что, откуда и куда. Думаю, те, кто читает данную статью, обладают достаточными для понимания материала, знаниями. К тому же, Kivy, как я уже только что написал, очень простой фреймворк и вся документация с примерами использования находится в исходниках!

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

Пишем список дел на Python 3 для Android через QPython3 и SL4A

Reading time7 min
Views43K


Движок QPython (и QPython 3) для Android – вещь по-прежнему плохо изученная, и особенно что касается его встроенной библиотеки Scripting Layer For Android (SL4A), она же androidhelper. Эту библиотеку написали несколько сотрудников Google по принципу 20% свободного времени, снабдили ее спартанской документацией, которую почти невозможно найти, и отправили в свободное плавание. Я искал информацию об SL4A по крупицам, но со временем нашел практически все, что мне нужно.

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

Интервью с Александрой Пестрецовой (Wavesplatform) о технологии блокчейн и токенизации бизнеса

Reading time9 min
Views5.6K
На конференции White Nights Moscow 2017 CEO Getloyal, Алексей Писаревский, пообщался с директором по маркетингу блокчейн-платформы Wavesplatform — Александрой Пестрецовой.

Wavesplatform — это криптовалютный проект, запущенный российским предпринимателем Александром Ивановым в 2016 году. Кампания по запуску блокчейн-платформы собрала 16 миллионов долларов, войдя в число крупнейших по привлеченным средствам через краудфандинг. Сейчас общая капитализация WAVES превышает 500 млн долл., и по этому показателю токен входит в ТОП-15 криптовалют в мире.



В интервью обсудили:

  • индустрию блокчейна и что за ней стоит;
  • тренд токенизации;
  • методы применения блокчейна в бизнесе;
  • принцип работы платформы Waves;
  • капитализацию токена Waves;
  • самые крутые проекты на блокчейне;
  • многое другое.

Читайте полную расшифровку интервью.

Проблемы и риски криптовалют

Reading time5 min
Views8.1K
Автор статьи — Алексей Маланов, эксперт отдела развития антивирусных технологий «Лаборатории Касперского»

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



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

Просто купите себе чёртовых роботов

Reading time11 min
Views31K
Пять рядов по двести станков в каждом, одновременно вгрызаясь резцами в заготовки из стали, выбрасывали готовые детали на непрерывную ленту конвейера, останавливались на время, необходимое для закрепления в зажимах новых заготовок, зажимали их и, опять вгрызаясь резцами в заготовки, выбрасывали готовые детали.

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

Еще не успели просохнуть чернила на их докторских дипломах, как он с Финнерти и Шефердом был направлен в механический цех для производства таких записей. Начальник цеха указал им своего лучшего работника — как же было его имя? — и, подшучивая над озадаченным токарем, трое способных молодых людей подключили записывающий аппарат к рычагам токарного станка. Гертц! — вот как звали этого токаря. Руди Гертц, человек старого уклада, которого вот-вот должны были отправить на пенсию. Сейчас Пол вспомнил и его имя и то почтение, с которым старик относился к талантливым молодым людям.

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

6 трендов ИТ-инфраструктуры: прогноз на 2018 год

Reading time5 min
Views30K
Четвертый квартал года — самое время подводить итоги и составлять планы на будущее. Год назад, в 2017-м, мы публиковали прогнозы на тему того, какие технологии будут развиваться в течение года. Многие предположения оправдались, и прошедшие месяцы действительно запомнились как время под знаком безопасности и виртуализации.

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

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

Идеи виджетов для удобства интернет-сёрфинга

Reading time6 min
Views4.7K
За 27 лет с момента, когда был создан первый веб-браузер, Всемирная Паутина успела преобразиться несколько раз. Менялись стандарты, появлялись и уходили в забытье целые классы сервисов. Менялись и пользователи. Вслед за учеными и военными, сеть заселили гики. К их огромному возмущению, шумной толпой ворвались школьники. С речёвками и музыкой выкатили цветастые повозки торговцы. Развесили мраморные таблички корпорации. За ними семенили домохозяйки и ковыляли бодрые пенсионеры. Тут то их всех и настиг цокот копыт политиков всех мастей. А в самих браузерах за это время появились вкладки. Очень удобная штука. Не знаю как бы вообще без них пользовался всем этим великолепием.

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

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

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

Тестирование фотохостингов на цифровой износ (21 шт)

Reading time6 min
Views16K
2017-10-30 16:43. Disclaimer: Данный анализ проведён исходя из модели поведения пользователя использующего специализированные сайты-фотохостинги. В случае универсальных ФАЙЛОхостингов и соцсетей у пользователя другая модель поведения и про это будут отдельные исследования.



В прошлый раз я описал явление и ввёл термин "цифровой износ", а на следующее, после публикации, утро обнаружил что в тот же день на mobile-review вышел обзор с упоминанием подобной темы. В обзоре рассказывалась история про человека который несколько лет загружал свои фотографии в Google Photo и в итоге лишился исходников.

«Это знак», — подумал я и решил провести анализ популярных фотохостингов на предмет цифрового износа фотографий.

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

Условия эксперимента: пользователь поехал на публичное мероприятие (в моём случае — всероссийский чемпионат «Лесоруб-2017»), по возвращении домой закинул фотографии в интернет (с помощью браузера) и потом пробабал исходники. Пробабал самым обычным образом — диск покрашился, случайно стёр папку, сознательно чистил диск будучи уверенным что у него в интернете всё сохранено и т.п. И потом, время спустя, пользователь понял что оригинала у него нет и пошёл скачивать то что у него «в интернете».

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

Посмотрим, что было в начале, что осталось в конце и насколько велик износ.

Поехали!
Читать дальше →

Некоторые особенности программирования временных событий в играх

Reading time9 min
Views15K

Дóжили. Недавно была обнаружена проблема синхронизации игрового процесса с реальным временем не где-нибудь, а в игре "Quake Champions". Название игры "Quake" раньше было синонимом чего-то крутого, высокотехнологичного и идеального. И в голову не могло придти, что через какую-то пару десятков лет и камня на камне не останется от былого превосходства, а в новой игре с именем "Quake" появятся грубые ошибки, приводящие к тому, что один из игроков может получить преимущество только потому, что у него лучше "железо". Дело в том, что скорость стрельбы в новом шутере зависит от fps, то есть, количество пуль, выпущенных игроками с разным значением fps за один и тот же промежуток времени будет разным, а значит один из них может получить преимущество.


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

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

Вашим пользователям не нужны пароли

Reading time4 min
Views56K

Rusty lock


Зачастую, одно из первых архитектурных решений, принятых в начале разработки вашего сайта — будет использование email + password для авторизации пользователя. Эта связка прочно засела в наши головы, и мы уже на задумываемся, зачем мы заставляем людей придумывать пароль. Мы привыкли так делать.


Но давайте подумаем, возможно, вашим пользователям не нужны пароли.


Одно из возможных решений, это использовать OAuth 2.0, но не у всех пользователей может быть аккаунт в социальной сети и желание его использовать на вашем ресурсе.


Но как-же тогда избавиться от пароля? На этот вопрос, я и попробую ответить в статье.

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

Обзор Neo Smart Pen 2 — умная ручка с умным блокнотом

Reading time3 min
Views25K
Neo Smart Pen 2 — один из представителей «славного семейства» умных пишущих аксессуаров, который отличается от ближайших конкурентов отсутствием «базы», принимающей сигнал. Базу заменяет специальный умный блокнот со своей разметкой, благодаря которому и происходит синхронизация со смартфоном.


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

AA-Tree или простое бинарное дерево

Reading time6 min
Views19K
Тема бинарных деревьев уже обсуждалась на хабре (здесь и здесь).

Про AA-дерево было сказано, что «из-за дополнительного ограничения операции реализуются проще чем у красно-черного дерева (за счет уменьшения количества разбираемых случаев)».

Мне, однако, кажется, что AA-дерево заслуживает отдельной статьи.

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

Модули вместо микросервисов

Reading time6 min
Views30K

Термин "модуль" (module) взят из статьи Modules vs. microservices. Так же для описания чего-то среднего между микросервисами и монолитами иногда используют термины "микролит" (microlith) или "моносервис" (monoservice). Но, не смотря на то, что термин "модуль" и так уже нагружен общеизвестным смыслом, на мой взгляд он подходит лучше других вариантов. Update: В комментарии lega использовал термин "встроенный микросервис" — он лучше описывает суть подхода, чем "модуль".


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


Я пишу микросервисы с 2009 года, но применять модули вместо микросервисов в реальных проектах пока не пробовал — всё описанное далее это моё предположение о том, каким должен быть вышеупомянутый баланс, и оно нуждается как в теоретической критике так и в проверке практикой.

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

Классы матриц и векторов в Delphi

Reading time11 min
Views13K
В этой статье рассматривается проектирование типов для работы с объектами линейной алгебры: векторами, матрицами, кватернионами. Показано классическое применение механизма перегрузки стандартных операций, использование приёма «Copy On Write» и аннотаций.
Читать дальше →

Расширение мира в Scratch

Reading time4 min
Views11K

В среде программирования Scratch область действий ограничена сценой. Сцена дает возможность смотреть на мир в рамках по х от -240 до 240. А по у от -180 до 180. Но что делать, когда этого пространства недостаточно? Как снять это ограничение? 



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

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity