Pull to refresh
0
0
Indeego @Indeego

User

Send message

Cоветы начинающему фрилансеру: как продавать услуги на развитые рынки через открытые площадки

Reading time16 min
Views64K
Я занимаюсь разработкой программного обеспечения в роли ведущего программиста-проектировщика с конца 90х годов. Фриланс никогда не был основным источником моего дохода. Но в 2010 году я начал всерьез заниматься фрилансом как побочным видом деятельности, приносящим существенный доход (за несколько месяцев я вышел на уровень продаж порядка $5k в месяц с фрилансерских контрактов с практически нулевыми расходами на исполнение контрактов, за исключением моего времени). Позднее я переехал в Северную Америку, но фриланс продолжает оставаться для меня важным побочным бизнесом. Кроме того, в своей работе я постоянно общаюсь с фрилансерами, в т.ч. профессиональными full-time фрилансерами из Северной Америки.

В этой статье я хотел бы поделиться своим опытом работы на площадках вроде elance.com с коллегами из экс-СССР и дать конкретные рекомендации по входу на рынок, позиционированию услуг, конкуренции с демпингом из Южной Азии, а также дать ликбез по общей профессиональной подготовке.
Много текста с конкретными примерами
Total votes 32: ↑31 and ↓1+30
Comments24

Парсинг формул в 50 строк на Python

Reading time4 min
Views43K
Вдохновение — задача с собеседования Яндекса и статья «Парсинг формул в 40 строк».

Моей целью было посмотреть, как будет выглядеть «pythonic» решение этой задачи. Хотелось, чтобы решение было простым, код читаемым и разделённым. В итоге ещё получился и пример применения цепочки генераторов (generators pipeline).
Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments9

Разрешите представиться – проект FLProg

Reading time7 min
Views36K


Добрый день.

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

Среды программирования плат ардуино можно разделить на следующие типы:
  1. Прокачанные «Блокноты»
  2. Текстовые среды разработки
  3. Графические среды, визуализирующие структуру кода.
  4. Графические среды, отображающие код в виде графики.
  5. Визуальные среды программирования, не использующие кода.

Осторожно трафик!
Total votes 13: ↑13 and ↓0+13
Comments10

Создание приложения ToDo с помощью Realm и Swift

Reading time17 min
Views64K
С развитием смартфонов в последние годы было разработано много инструментов, чтобы упростить жизнь разработчикам, обеспечив их максимальной производительностью и качеством. Занимать лидирующие позиций в App Store сегодня не простое задание. А научить ваше приложение масштабироваться еще сложнее. Когда приложением пользуются миллионы пользователей, вы должны следить за приложением и при необходимости выполнять все операции моментально. Поэтому одной из проблем, с которой сталкиваются многие разработчики, является Database. Она действительно вызывает сильную головную боль для каждого из нас, и я думаю, что сегодня у вас есть только два варианта: SQLite и Core Data. Я был большим поклонником Core Data и его способностью работать с записями и сохраняющимися данными, но я понял, что впустую трачу много времени, работая с ним при разработке приложений. Недавно, я столкнулся с Realm, новой лучшей заменой SQLite и Core Data.

Realm and Swift
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments18

Cага о пакетном конвертировании pdf в text

Reading time7 min
Views21K
В прошлом году была заказана, как казалось на первый взгляд, простая работа: создать систему пакетной обработки файлов — содержащих 12-ти колоночную таблицу, данные из которой экспортировать в БД. Все бы ничего — да вот файлы оказались документами в pdf, а заказчик утверждал что другого формата для обработки предоставить никак не может.

image
Образец того самого pdf-а — в файле сохранена структура, но подчищены все данные.

Чтож, несмотря на предупреждения знающих людей, а предупреждали они ой как не зря — я за работу взялся и пережил вот такое приключение:

Читать дальше →
Total votes 73: ↑70 and ↓3+67
Comments23

Анализ резюме с HeadHunter. Кто сколько зарабатывает и в каких отраслях работает

Reading time11 min
Views99K
Недавно, на хакатоне от Petamelon нам в руки попал датасет с ~6 000 000 резюме с НН. Там, естественно, не было никаких персональных данных и контактов, но было много других интересных вещей: ожидаемая зарплата, возраст, пол, примерный адрес, образование и индустрии, в которых человек ищет работу. Было решено попробовать использовать эти данные в нашем проекте про выбор школ. Идея заключалась в том, чтобы определить в каких индустриях работают выпускники школ и сколько примерно зарабатывают. Но я, конечно, не удержался и построил кучу других бесполезных, но прикольных таблиц и графиков.

Распределение резюме по возрасту имеет интересную форму и как будто разделено на две части: до окончания института и после:


В Москве с возрастом ожидаемая зарплата выходит на плато в ~50 000 рублей:

Читать дальше →
Total votes 119: ↑106 and ↓13+93
Comments66

Риски и проблемы хеширования паролей

Reading time11 min
Views38K
Безопасность всегда была неоднозначной темой, провоцирующей многочисленные горячие споры. И всё благодаря обилию самых разных точек зрения и «идеальных решений», которые устраивают одних и совершенно не подходят другим. Я считаю, что взлом системы безопасности приложения всего лишь вопрос времени. Из-за быстрого роста вычислительных мощностей и увеличения сложности безопасные сегодня приложения перестанут завтра быть таковыми.

Прим. перев.: для более полной картины здесь вас также будет ждать перевод Hashing Passwords with the PHP 5.5 Password Hashing API, на которую автор ссылается в статье.
Читать дальше →
Total votes 37: ↑34 and ↓3+31
Comments42

400 потрясающих бесплатных сервисов

Reading time16 min
Views721K

Рад представить дополнение оригинального списка из 300 потрясающих бесплатных сервисов. Автор оригинальной статьи Ali Mese добавил ещё +100 новых сервисов, которые помогут найти все — от источников вдохновения и редакторов фотографий до создания опросов и бесплатных иконок.

И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные веб-сайты

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly: Конструктор веб-сайтов.
  • Layers: Создание сайтов на WordPress (new).
  • Bootstrap Zero: Самая большая коллекция бесплатных шаблонов Bootstrap (new).
  • Landing Harbor:  Продвижение мобильного приложения c помощью бесплатного лендинга (new).
Читать дальше →
Total votes 108: ↑89 and ↓19+70
Comments38

API Яндекс.Карт: Адрес внутри/за МКАД, расстояние от МКАД

Reading time4 min
Views41K
Понадобилось для очередного проекта сделать расчет доставки. Схема такая: если адрес внутри МКАД, то цена фиксированная, если за МКАД, то цена складывается из фиксированной и стоимости за каждый километр удаления от МКАД.

Поиск готовых решений практически не дал результатов, кроме одной публикации в клубе API Яндекс.Карт. В принципе, идея лежит на поверхности: определяем принадлежность адреса к области внутри МКАД, если адрес за МКАД, то прокладываем до него маршрут и считаем расстояние. В публикации товарищи решают проблему «в лоб», они в ручную сравнивают координаты границ МКАД и адреса. Я решил сделать более универсально и использовать только API Яндекс.Карт.

Читать дальше →
Total votes 41: ↑35 and ↓6+29
Comments28

Настройка IPv6 в ОС Linux Debian v7.XX, Ubuntu v14.XX, CentOS v6.XX и FreeBSD v10.XX

Reading time7 min
Views36K
Изложенный ниже материал не претендует на эксклюзивность. Однако мне пришлось собирать его по крупицам из разных источников, что-то проверяя экспериментально. После этого родилась идея систематизировать полученные знания и опыт, изложив все в одной заметке.
Читать дальше →
Total votes 20: ↑14 and ↓6+8
Comments14

Повышаем отказоустойчивость системы на nodejs

Reading time5 min
Views38K
Отказоустойчивость системы на nodejs
3 года назад я поверил в будущее nodejs и начал кампанию по имплементации этого языка в самые “проблемные” сервисы нашего проекта. У нас все получалось — нагрузка падала, стабильность повышалась. Но все же были грабли, о которых захотелось рассказать.

Это не исчерпывающее руководство к действию, просто я делюсь своим опытом, если вы профи в nodejs можете дописать в коментах свои рекомендации, на которые я с удовольствием сошлюсь в статье.
Читать дальше →
Total votes 43: ↑36 and ↓7+29
Comments53

Node.js в бою (создание кластера)

Reading time9 min
Views71K
Когда вы используете приложения на node.js в продакшене, вам приходится задумываться о стабильности, производительности, безопасности и удобстве поддержки. Данная статья описывает мои мысли о лучших практиках использования node.js в бою.

К окончанию данного руководства вы получите систему из 3 серверов: балансировщик (lb) и 2 сервера приложений (app1 и app2). Балансировщик будет следить за доступностью серверов и распределять между ними траффик. Серверы приложений будут использовать комбинацию systemd и кластеризации node.js для балансировки траффика между несколькими процессами ноды на сервере. Вы сможете выкатывать код с помощью одной команды со своей машины, и при этом не будет перерывов в обслуживании или необработанных запросов.
Все это можно представить в виде схемы:


Читать дальше →
Total votes 37: ↑35 and ↓2+33
Comments17

Заставляем сервис php-fpm 5.6, запущенный через systemd, читать глобальные переменные окружения

Reading time6 min
Views14K
Это короткий how-to для реализации конфигурации php-сервиса, зависимого от окружения, в котором он запущен. Я буду рад, если кто-то подскажет более изящное решение или поправит в мелочах.

Основная идея


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

Проблема

В этой статье слишком много раз повторяется «переменные окружения».
Из коробки php-fpm игнорирует глобальные переменные окружения (getenv function), в то время как php cli их может получать.
Читать дальше →
Total votes 17: ↑12 and ↓5+7
Comments2

Arduino Mega Server и часы реального времени

Reading time10 min
Views47K
image

В этой статье вы узнаете как Arduino Mega Server работает со временем и как можно создавать проекты на Ардуино, которые имеют привязку к реальному времени, вне зависимости от того, установлен ли в них «железный» RTC-модуль или нет. Все вопросы работы с реальным временем на Ардуино будут подробно разобраны и после прочтения этой статьи вы станете настоящим «мастером часовых дел».
Читать дальше →
Total votes 13: ↑11 and ↓2+9
Comments1

Торги в реальном времени (RTB): Исчерпывающее руководство для получения прибыли

Reading time7 min
Views14K


Торги в реальном времени (Real Time Bidding) также известны под аббревиатурой RTB. Вы, должно быть, не раз слышали этот термин, работая в сфере маркетинга (если, конечно, живете не в какой-нибудь пещере).

Что же такое RTB


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

Все это выглядит очень здорово, однако, если посмотреть со стороны рекламодателя, то подобная система ставит каждого участника в равные условия.
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments0

Главные отличия SEO продвижения в поисковых системах Google и Yandex

Reading time3 min
Views32K
Обратили внимание, что доля поискового трафика Яндекса на Кабанчике значительно меньше, нежели доля Google. Т.е. значительно меньше, чем среднее соотношение трафика Yandex/Google по рынку.

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

image

Общие отличия Google от Yandex


  • Возраст сайта больше важен для Yandex.
  • Продвигаться по НЧ намного легче в Яндексе. Для этого достаточно писать качественный уникальный контент. В Google без ссылок на страницу продвигать НЧ тяжко. Для СЧ и НЧ Яндексу нужны трастовые доноры.
  • Скорость индексации сайта в Яндекса в разы медленнее, нежели у Google: 8-10 дней против 1-2.
  • Частое обновления контента влияет на траст в Google. Яндекс любит старые уникальные тексты.
  • По ВЧ запросам в ТОПе Яндекса можно видеть в основном главные страницы сайтов. В Google — чаще внутренние страницы.
  • На одной странице поиска Google может находится 5 ссылок с одного сайта. в Яндексе — только одна страница.
  • На Яндекс легче влиять с помощью поведенческих факторов, нежели на Google.
  • Google далеко не всегда обращает внимание на запрет к индексации в robots.txt.
  • Скорость загрузки страниц более важна для Google. Он не пускает в ТОП медленные сайты. Для Яндекса скорость загрузки сайта не так важна.
  • Яндекс больше любит поддомены для региональных запросов. Т.е. для продвижения в другом городе лучше использовать домен gorod.site.com/…
  • Для Яндекса имеет большое значение нахождение сайта в Яндекс.Каталоге.

Внутренняя оптимизация


  • Яндекс больше не любит переоптимизацию текстов. Google к этому относится попроще.
  • Яндекс лучше понимает морфологию, поэтому ценит хорошее качество текстов. Простой рерайт для Яндекса не подходит.
  • Google любит большие тексты, Яндекс — лаконичные и хорошо структурированные.
Читать дальше →
Total votes 17: ↑15 and ↓2+13
Comments9

Шаблоны проектирования XSD

Reading time9 min
Views41K


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

Сегодня хочу поговорить о том, какие есть шаблоны проектирования XSD, о преимуществах и недостатках каждого, и почему мы для своих задач выбрали «Райский сад».
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments4

Производительное юнит-тестирование веб-приложений на примере yii2 и codeception

Reading time13 min
Views22K
Задача данной статьи — показать самый производительный путь написания тестов в контексте разработки веб-приложений.
Здесь и дальше под термином тесты будут подразумеваться юнит-тесты.

Разработка веб-приложений сопровождается постоянным использованием в коде базы данных. Если код работы с базой данных и код работы с результатом взаимодействия с базой данных не разделен, нам потребуется база данных в подавляющем большинстве тестов проекта. Также, если код использует методы фреймворка, нам для тестов потребуется подключить фреймворк. Пока тестов мало, всё отлично. Когда тестов становится больше, замечается проблема: скорость выполнения тестов немного напрягает. Когда время выполнения всех юнит-тестов становится больше чем минута, становится невозможным постоянно запускать все тесты. Разработчик начинает запускать только часть тестов, пытаясь уменьшить негативное влияние длительного времени работы тестов, но проблема снижения эффективности тестирования со временем будет только возрастать.

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

Наша цель будет разобраться, каким образом необходимо писать тесты и код для обеспечения максимальной скорости выполнения тестов.
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments3

Big Data от А до Я. Часть 2: Hadoop

Reading time9 min
Views230K
Привет, Хабр! В предыдущей статье мы рассмотрели парадигму параллельных вычислений MapReduce. В этой статье мы перейдём от теории к практике и рассмотрим Hadoop – мощный инструментарий для работы с большими данными от Apache foundation.

В статье описано, какие инструменты и средства включает в себя Hadoop, каким образом установить Hadoop у себя, приведены инструкции и примеры разработки MapReduce-программ под Hadoop.


Читать дальше →
Total votes 44: ↑38 and ↓6+32
Comments8

Information

Rating
Does not participate
Registered
Activity