Search
Write a publication
Pull to refresh
52
0
Андрей Кравчук @prefrontalCortex

Software Engineer

Send message

Не оставляйте проблемы на самоопределение

Reading time7 min
Views2.3K
Я использую один важный принцип – происхождение которого я расскажу позже – который срабатывает более чем везде где я был. Собственно: в любое время, в любой организации(или процесс, или системе) в которой я находился, всегда было небольшое количество узких мест – это люди, команды, системы, или что-либо еще, что ограничивало результаты всей организации. По факту, обычно, только один.
Читать дальше →

Chocolatey — apt-get для Windows

Reading time6 min
Views119K
Chocolatey — менеджер пакетов в среде Windows по аналогии с apt-get в Linux Мире.



Начал использовать по причине разработки на Node.js под Nodester. Мне хотелось бы регулярно обновлять ноду, git, dropbox, да и тот же skype, при этом, не заморачиваясь со скачиванием msi инсталяторов и установками, а просто обновить одной командой:

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

Как умирают софтварные компании

Reading time3 min
Views34K

Условия, которые питают креативных программистов, убивают менеджеров и маркетологов — и наоборот. Программирование — Великая Игра. Оно поглощает игрока полностью, включая и душу и тело. Если ты попался — то ты попался, и ничего уже больше не имеет значения. Когда ты в следующий раз вылезешь из своей берлоги, вполне могут обнаружиться лишние десять киллограммов, борода до колен и такое количество пустых коробок из-под пиццы вокруг, что уже, наверное, наступила весна? Но для тебя это всё не важно. Потому, что твоя программа работает, а код быстр и элегантен. Ты победил.
Читать дальше →

9facts: разбор полетов

Reading time9 min
Views3.3K
image

В середине марта мы, фактически, закрыли наш стартап 9facts.com, о котором я писал на Хабрахабре в декабре. И вот к маю я таки созрел на написание этого поста.

Начну с самого важного:
Читать дальше →

RESTful API для сервера – делаем правильно (Часть 1)

Reading time13 min
Views334K
В 2007-м Стив Джобс представил iPhone, который произвел революцию в высокотехнологичной индустрии и изменил наш подход к работе и ведению бизнеса. Сейчас 2012-й и все больше и больше сайтов предлагают нативные iOS и Android клиенты для своих сервисов. Между тем не все стартапы обладают финансами для разработки приложений в дополнение к основному продукту. Для увеличения популярности своего продукта эти компании предлагают открытые API, которыми могут воспользоваться сторонние разработчики. Пожалуй Twitter был первым в этой сфере и теперь число компаний, последовавших этой стратегии, растет стремительно. Это действительно отличный способ создать привлекательную экосистему вокруг своего продукта.

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

Google Knowledge Graph

Reading time1 min
Views8.6K
Внезапно Google объявил о запуске проекта, который готовился в недрах Evil Empire уже два года.
Придумав броский слоган things not strings (вещи — не строчки), нам хотят представить нечто вроде автоматической энциклопедии.
Читать дальше →

Пишем модуль для авторизации в VK API

Reading time5 min
Views94K
На днях возникла необходимость сохранить все фотографии из своего фотоальбома ВКонтакте на жесткий диск. Естественно, вариант, с сохранением фотографий по одной, меня не устроил. Тут вспомнилось, что у ВКонтакте есть API. Пять минут чтения мануалов, и все нужные функции найдены. Единственная проблема – не существует нормального способа, для получения доступа к API. В документации сказано следующее:
Процесс авторизации приложения состоит из 3-х шагов:
  1. Открытие окна браузера для аутентификации пользователя на сайте ВКонтакте.
  2. Разрешение пользователем доступа к своим данным.
  3. Передача в приложение ключа access_token для доступа к API.


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

Азбука NoSQL-инъекций

Reading time13 min
Views65K
Бывают SQL-инъекции! А возможны ли NoSQL-инъекции? Да! Redis, MongoDB, memcached — все эти программные продукты относятся к классу нереляционных СУБД, противоположному популярным MySQL, Oracle Database и MSSQL. Так как интерес к перечисленным базам данных в последнее время значительно возрос, хакеры всех мастей просто не могли пройти мимо них.


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

Разнообразие Android-устройств

Reading time1 min
Views7.8K


Разработчики из OpenSignalMaps визуализировали статистику по скачиваниям своего приложения для мониторинга сетевого трафика. За полгода его скачали на 681900 Android-устройств из 195 стран мира.

Картина получилась красивая: зарегистрировано 3997 моделей различных Android-девайсов. Самое популярный — GT-i9100 (Galaxy SII), 61389 пользователей.
Читать дальше →

Об организации рабочего стола, работ и документов

Reading time7 min
Views55K
Давайте обсудим вопрос организации иконок на рабочем столе. Хочется сказать: «покажи мне свой десктоп, и я скажу, как ты работаешь». Вынесу вверх главную мысль: Рабочий стол предлагается использовать для организации текущей работы над документами. Что на столе — то в сознании, в фокусе. Поэтому важно иметь структуру этого фокуса и важно вовремя убирать из фокуса лишнее.
Часто можно наблюдать следующие стратегии поведения при использовании рабочего стола:
  • заполнить стол значками до предела, периодически «удалять неиспользуемые»
  • оставить на столе корзину и красивую картинку, удалять со стола всё, регулярно чистить корзину
  • расположить на столе часто используемые ярлыки и некоторые рабочие документы
UPD: Пока в комментах побеждает вариант неиспользуемого стола.
Всё это — варианты нормы, единственный недостаток — рабочий стол не помогает в организации работ. Это примерно как обвинить кота, что он не приносит тапочки. Но ведь мог бы и приносить!!! Достаточно правильно расчертить дорожки.
How to Design and Create a Clean, Organized Desktop
Сначала я подумал, что я гений и заработаю миллионы на этой идее, но потом решил вбить в поисковик «Organizing desktop wallpaper». Нафантазированная яхта и девушки-поклонницы исчезли, но стало ясно, что, во-первых, желание вполне адекватное, а во-вторых уже есть готовые варианты, чтобы взять и использовать. Т.е. хотя бы тапочки. Картинка выше взята из статьи How to Design and Create a Clean, Organized Desktop.
Ниже будет список найденных статей и вариантов, а также я расскажу о своей идее и тех задачах, которые она должна решать:
Читать дальше →

Мастера оффшорных дел

Reading time6 min
Views4.8K
Мало писать хороший софт. Это умеют многие, и собственно за это вам и платят деньги. Но хотите вы этого или нет, работа в IT требует не только соответствующих технических навыков, но еще и умения работать с людьми, и в первую очередь с заказчиком. Для оффшорной команды, когда команду от заказчика отделяют тысячи километров, это правило становится еще важнее.

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

Бесконечный скролл, как сомнительное улучшение интерфейса

Reading time2 min
Views25K
В данном мини-обзоре плюсов и минусов хотелось бы еще раз поднять холивар понять для чего же всё-таки многие веб-сервисы используют т.н «бесконечный скролл» вместо привычной и понятной организации перехода по страницам.
Читать дальше →

Не нужно обижать «матрас»

Reading time7 min
Views7.4K
image
Желаю доброго дня уважаемому Хабра-сообществу. Данная заметка навеяна постом о правильной настройке телевизора. Я не лелею больших надежд на то, что внезапно начнется «неделя настройки телевизоров на Хабре», но поделиться некоторыми мыслями захотелось.

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

Окунуться в магию цветных полосочек

davfs2 и encfs на box.com

Reading time6 min
Views17K
Здравствуй хабраменш,

Хочу поделиться с тобой сокровенными знаниями, а также пополнить запасы своих. Так вот, все началось с того, что проект syncany.org умер не родившись, ну или по крайней мере, судя по активности, разродится еще не скоро. Так как сил ждать больше не было, то решил я воспользоваться уже существующими и работающими методами для организации удаленного облачного файлохранилища (в дальнейшем УФХ) с открытым клиентом, а также с шифрацией на стороне клиента. Все что написано дальше имеет отношение к юниксоподобным операционным системам, поэтому пользователям ОС Виндовс дальнейшее изложение можно пропустить.
Читать дальше →

Бестиповое лямбда-исчисление, комбинаторы, Unlambda и числа Фибоначчи

Reading time11 min
Views6K
Далее пойдет рассказ о самом, на мой взгляд, хардкорном способе программирования.
Предмет поста непростой, путь будет долгим, а в качестве печеньки в конце я расскажу, как считать числа Фибоначчи на языке Unlambda.
Читать дальше →

Как заработать на десктопном приложении?

Reading time4 min
Views10K
Сегодня у многих компаний как крупных, так и не очень, возникает желание получить доход и испробовать различные направления. Ориентация на один узкий сегмент рынка — это ошибочная стратегия в условия бурного и высоконкурентого развития современных технологий по всем направлениям и тематическим нишам.

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

Создание 1k/4k intro для Linux, часть 2

Reading time23 min
Views8.4K
Не прошло и полгода! Как вы можете, поднапрягшись, вспомнить, в прошлый раз мы остановились на унынии и обещании нырнуть в ассемблер.
Ну что же, пацан сказал — пацан сделал. Из этого аляповатого нагромождения букв вы узнаете, как можно инициализировать OpenGL-контекст в GNU/Linux в какие-то 450 байт, высвободив ещё больше места для разворачивания таланта.

Под катом вы узнаете, как в один килобайт нарисовать что-нибудь такое:


Заинтересованные пристёгиваются и вдавливают педаль в пол, а глаз — в экран.
Читать дальше →

Трудности перевода в коде

Reading time2 min
Views7.2K
Периодически всем, кто трудится на поле разработки программного обеспечения, приходится читать чужой код: код коллеги, код незнакомого разработчика или код популярной библиотеки. Помимо прочих плюсов и минусов невольно наталкиваешься на «трудности перевода». И хорошо если речь о родном языке, ведь когда такие «сложности» возникли у индуса или китайца, то результат порой вообще вызывает спазм мозга.

Например в популярной CMS UMI мы можем найти такое замечательное наименование свойства объекта: izobrazhenie. Заметьте — не «image» и даже не «picture», а вот так незамысловато.
Рассмотрим проблему внимательно

Arduino в снековом автомате

Reading time7 min
Views26K
Этот пост – продолжение истории о начинке торговых автоматов простой и доступной электроникой на базе Arduino. И действительно – возможности платформы просто безграничны! И так, второй автомат – снековый автомат по продаже чипсов/воды/шоколадок/etc.

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

Information

Rating
10,557-th
Location
Подгорица, Подгорица, Черногория
Works in
Date of birth
Registered
Activity

Specialization

Software Developer, Fullstack Developer
Senior
From 5,000 €
Lisp
Clojure
Unix
Linux
Docker