Осознав необходимость выхода из тени или же просто смены формы деятельности из наемного работника в самозанятого гражданина приходим к тому, что надо бы зарегистрироваться в качестве частного предпринимателя (ЧП, ИП, СПД ФОП). О том, как зарегистрироваться, какую форму налогообложения выбрать IT-шнику, сколько и куда платить читаем под катом. В конце так же приложен бонус «Как получить деньги под открытие от Центра занятости» (на оплату налогов на первое время), какие виды деятельности выбрать согласно КВЭДа, а так же несколько примеров типичных документов. Актуально только для Украины.
Хохлов Дмитрий @F0rc0sigan
Пользователь
Почему веб-приложения на мобильных платформах работают медленно
34 мин
66KПеревод
От переводчика
Это перевод статьи Drew Crawford «Why mobile web apps are slow», опубликованной 09 июля 2013. Статья очень интересная, но большая — ошибки возможны — прошу простить и присылать замечания в личку.
Поскольку затронута острая тема, прошу заметить, что переводчик не обязательно разделяет мнение автора статьи!
При переводе текст слегка видоизменялся, поскольку прямой перевод не всегда понятно передает смысл. Для перевода термина «native code» был использован англицизм «нативный код», который понятнее и короче, чем «родной для платформы код». Термин «word processing» переводится как «верстка текста», хотя это немного сужает первоначальный смысл. Термин managed код («управляемый код») не был переведен, так как удачного перевод (на взгляд переводчика) не существует. Под «терминированием» приложения подразумевается его принудительное завершение операционной системой.
Повествование в статье ведется от первого лица: автора статьи.
+144
Легализация дохода фрилансера в Украине. Часть 1: государственная регистрация бизнеса
9 мин
101KТуториал
Рано или поздно любой фрилансер задумывается о том, чтобы перестать прятать свои доходы от государства. Преимущества очевидны: идет официальный стаж работы, в банке охотнее выдают кредиты, для получения туристической визы заграницу не нужно искать обходные пути, спишь, в конце концов, спокойнее. Самый простой способ выйти из тени в Украине — стать предпринимателем или, как это официально называется, физическим лицом — предпринимателем.
Я работаю предпринимателем — фрилансером с 2007 года и успел накопить значительный опыт получения денег из-за рубежа как через онлайн-биржи вроде oDesk и Elance, так и работая с заказчиками напрямую. В свое время я был инициатором некоторых изменений на oDesk, помогающих упростить легальное получение денег на свой предпринимательский счет. Сегодня я руковожу разработкой в нашем украинском стартапе Taxer.ua, от чего опыта во взаимодействии с государством накопилось еще больше.
Рассказать хочется максимально подробно, раскрыв как можно больше деталей, поэтому я планирую разбить этот туториал на несколько частей:
Я работаю предпринимателем — фрилансером с 2007 года и успел накопить значительный опыт получения денег из-за рубежа как через онлайн-биржи вроде oDesk и Elance, так и работая с заказчиками напрямую. В свое время я был инициатором некоторых изменений на oDesk, помогающих упростить легальное получение денег на свой предпринимательский счет. Сегодня я руковожу разработкой в нашем украинском стартапе Taxer.ua, от чего опыта во взаимодействии с государством накопилось еще больше.
Рассказать хочется максимально подробно, раскрыв как можно больше деталей, поэтому я планирую разбить этот туториал на несколько частей:
- Государственная регистрация предпринимателя: выбор системы налогообложения, подача заявления.
- Составление ВЭД договора, получение денег от клиентов: биржи oDesk, Elance и напрямую.
- Ведение ВЭД бухгалтерии: акты, счета, книга доходов и курсовая разница.
- Уплата налогов и отправка отчетности в контролирующие органы: сдавать ли валютную декларацию.
+71
CSS Sticky Footer / Прилипающий футер
4 мин
77KПеревод
Как использовать прилипающий футер
Введение
В Гугле можно найти много реализаций прилипающего футера. Я перепробовал большинство из них, и обычно где-нибудь они да подводили. В основном из-за того, что предложенные методы были слишком старыми, и не срабатывали в новых браузерах. Но, поскольку страницы, предлагающие решения, довольно старые, на них давно ссылается много других сайтов, из-за чего они до сих пор находятся довольно высоко в поисковой выдаче Гугла. Вебмастеры находят их самыми первыми в своих поисках, и потом долго чешут репу, не видя ничего нового.
Решения Райана Фэйта хорошо известно и работает, но требует лишний пустой <div>. Приверженцы чистого HTML-кода могут найти это богохульство несемантичным. В нашем решении лишнего <div> нет.
+41
Страсть к программированию. Глава 8. Будь специалистом
4 мин
41KПродолжаем переводить книгу Чеда Фоулера «Страсть к программированию» совместными усилиями. Готов координировать работу с остальными переводчиками.
— Каким образом Вы можете добиться падения JVM используя только возможности Java?
В ответ — тишина.
— Вы меня слышите?
— Извините, я не понял Вас. Повторите, пожалуйста, вопрос.
В голосе прозвучало отчаяние. Я знал из своего опыта, что повторение вопроса не поможет. Тем не менее я повторил вопрос, медленно и громко.
— Каким образом Вы можете добиться падения JVM используя только возможности Java?
— Эм… Извините, я никогда не сталкивался с подобной задачей.
— Я уверен, что не сталкивались. Как насчёт такого вопроса: как бы Вы написали программу, которая бы никогда не приводила к сбоям JVM?
Глава 8. Будь специалистом
— Каким образом Вы можете добиться падения JVM используя только возможности Java?
В ответ — тишина.
— Вы меня слышите?
— Извините, я не понял Вас. Повторите, пожалуйста, вопрос.
В голосе прозвучало отчаяние. Я знал из своего опыта, что повторение вопроса не поможет. Тем не менее я повторил вопрос, медленно и громко.
— Каким образом Вы можете добиться падения JVM используя только возможности Java?
— Эм… Извините, я никогда не сталкивался с подобной задачей.
— Я уверен, что не сталкивались. Как насчёт такого вопроса: как бы Вы написали программу, которая бы никогда не приводила к сбоям JVM?
+30
Общество телефонных зомби
3 мин
137KПеревод
Многие знают, что я хакер. При этом многих удивляет, когда я говорю, что терпеть не могу технологии. Да, когда я произношу это, я слегка преувеличиваю. На самом деле, меня просто стало раздражать, каким образом технологии вторгаются в нашу жизнь.
Если вы гуляли по любым людным улицам, уверен, вы поймете, о чем я. За последние 3-4 года значительно возросло число людей, уткнувшихся в свои смартфоны во время прогулок и совершенно отстраненных от окружающего мира. Если человеку нужно убить время (или он страдает прокрастинацией), он погружается в пролистывание бесконечных фидов фейсбука, твиттера или тумблера. Черт, я видел, как люди делали это во время просмотра ТВ-шоу, которого они ждали целую неделю.
Не поймите меня неправильно, технологии — это великая сила, которая помогла нам достичь удивительных высот (мы отправили людей на е***ую луну). Но это не мешает мне думать, что наши недавние изобретения скорее снизили качество нашей жизни, чем улучшили. Мы превратились в общество телефонных зомби, склонивших головы над светящимися экранами в бесконечном поглощении бесконечных объемов бесполезной информации.
Если вы гуляли по любым людным улицам, уверен, вы поймете, о чем я. За последние 3-4 года значительно возросло число людей, уткнувшихся в свои смартфоны во время прогулок и совершенно отстраненных от окружающего мира. Если человеку нужно убить время (или он страдает прокрастинацией), он погружается в пролистывание бесконечных фидов фейсбука, твиттера или тумблера. Черт, я видел, как люди делали это во время просмотра ТВ-шоу, которого они ждали целую неделю.
Не поймите меня неправильно, технологии — это великая сила, которая помогла нам достичь удивительных высот (мы отправили людей на е***ую луну). Но это не мешает мне думать, что наши недавние изобретения скорее снизили качество нашей жизни, чем улучшили. Мы превратились в общество телефонных зомби, склонивших головы над светящимися экранами в бесконечном поглощении бесконечных объемов бесполезной информации.
+158
«Смс не надо» — сервис позволяющий отписаться от назойливых смс-рассылок
3 мин
37KЗдравствуй!
Тема борьбы с нежелательной смс-рекламой на Хабре поднималась уже не раз[1]. Хочу внести свой небольшой вклад в дело борьбы с многоголовой гидрой спама.
Я, как и наверное многие, частенько получаю смс сообщения с «ненавящевой» рекламой такси, кредитов, фитнес-центров и прочих радостей жизни. И вот сегодня наткнулся на сервис smsnenado.ru[2], предлагающий отписаться от смс-рассылок.
%username%, я к данному сервису не имею никакого отношения, предупреждаю сразу
Когда увидел репост новости о данном проекте — отнесся скептически, но любопытство пересилило, и я пошел в разведку.
+83
Как две недели?!
2 мин
105KКак это вам надо две недели на эту задачу? Что, правда? Вот на эту элементарную формочку с тремя полями и двумя кнопками? Две недели? Да вы надо мной издеваетесь, наверное! Давайте разбираться.
Что? Нужна ли валидация данных при вводе? Ну, конечно, нужна! И вообще, вот это поле лучше разбить на два, так понятнее. А вот в это добавить маску. А вот это — заменить на выпадающий список. Где брать варианты для этого списка? В базе на сервере, конечно. Как это их там нет? А, ну да, это же в другом проекте они у нас были… Ну, значит надо добавить. Взять там и добавить сюда. Сейчас я дам вам контакт разработчика того проекта — обсудите с ним. Он, правда, у нас уже не работает, но я думаю, вполне можно спросить что и как — он расскажет, скорее всего.
Мы всё обсудили? Нет? Что ещё?
Что? Нужна ли валидация данных при вводе? Ну, конечно, нужна! И вообще, вот это поле лучше разбить на два, так понятнее. А вот в это добавить маску. А вот это — заменить на выпадающий список. Где брать варианты для этого списка? В базе на сервере, конечно. Как это их там нет? А, ну да, это же в другом проекте они у нас были… Ну, значит надо добавить. Взять там и добавить сюда. Сейчас я дам вам контакт разработчика того проекта — обсудите с ним. Он, правда, у нас уже не работает, но я думаю, вполне можно спросить что и как — он расскажет, скорее всего.
Мы всё обсудили? Нет? Что ещё?
+242
Новый практический обучающий курс по Windows Phone 8
2 мин
21K Всегда приятно делиться хорошей новостью. И сегодняшнее утро я как раз и хочу начать именно с хорошей новости.
Доступен новый практический обучающий курс по Windows Phone 8 на русском языке. Для нетерпеливых — сразу ссылка на заглавную страницу курса: aka.ms/wp8labs.
Данный курс предполагает, что вы уже знакомы с разработкой под Windows Phone. Если это не так, можно начать с курса по Windows Phone 7.5 msdn.microsoft.com/ru-ru/ff380145 или книги.
Доступен новый практический обучающий курс по Windows Phone 8 на русском языке. Для нетерпеливых — сразу ссылка на заглавную страницу курса: aka.ms/wp8labs.
Данный курс предполагает, что вы уже знакомы с разработкой под Windows Phone. Если это не так, можно начать с курса по Windows Phone 7.5 msdn.microsoft.com/ru-ru/ff380145 или книги.
+18
Кроссбраузерная кастомизация системного скроллбара
8 мин
146KПроблема размещения непрерывного контента произвольного объёма в экран, или окно, фиксированных размеров, существует несколько десятков лет. Примерно столько же существует и лучшее решение этой проблемы: элемент графического интерфейса — скроллбар.
Под катом можно узнать, как в ближайшее время будет работать скролл в 2ГИС Онлайн.
+105
Для чего нужны шаблоны проектирования
5 мин
100KВсе чаще и чаще я слышу от разработчиков и читаю в статьях, что шаблоны проектирования (они же дизайн-паттерны) никому не нужны. Мол, они появились во времена «цветения» UML, RUP, CASE систем и прочих чересчур «сложных» инструментов, подходов и практик. А сейчас самое важное — это код рабочий написать, да побыстрее. На умные толстые книжки ни у кого нет времени, разве что для прохождения собеседования. Тех, кто хочет обсудить данную тему, прошу под кат.
+56
Оправдание стоимости разработки сайта и защита от демпинга
7 мин
65KПривет, хабр. Сегодня я хочу поговорить о проблеме, с которой сталкивается абсолютное большинство молодых студий и агентств (и не только молодых, на самом деле) – про оправдание стоимости разработки интернет-проекта перед заказчиком и защиту от демпинга со стороны конкурентов. Надеюсь, эта информация найдет свое практическое применение и поможет вам создавать проекты по достойной цене.
Говоря о стоимости создания сайта, начать необходимо с определения его внутренней себестоимости в самой компании. До сих пор многие студии работают по фиксированным тарифам (сайт-визитка – XXX рублей, интернет-магазин – YYY и т.п.). Но, так или иначе, все агентства продают время своих сотрудников, и определение себестоимости должно отталкиваться именно от этого фактора.
Заказчик покупает время производящих сотрудников (дизайнеров, разработчиков, специалистов по вносу контента и пр.). Он не готов платить за время PR-менеджера, бухгалтера, уборщицы. Поэтому расчетная смета на проект отталкивается, как правило, именно от стоимости часов «производящих ресурсов».
Посмотрим, какую долю эти ресурсы занимают в общем пуле трат компании. Для небольшой веб-студии (специализирующейся на разработке, а не на рекламе – там закупочные бюджеты и немного другое распределение) из 15 человек распределение статей расходов, как правило, выглядит так:
Расчет себестоимости
Говоря о стоимости создания сайта, начать необходимо с определения его внутренней себестоимости в самой компании. До сих пор многие студии работают по фиксированным тарифам (сайт-визитка – XXX рублей, интернет-магазин – YYY и т.п.). Но, так или иначе, все агентства продают время своих сотрудников, и определение себестоимости должно отталкиваться именно от этого фактора.
Заказчик покупает время производящих сотрудников (дизайнеров, разработчиков, специалистов по вносу контента и пр.). Он не готов платить за время PR-менеджера, бухгалтера, уборщицы. Поэтому расчетная смета на проект отталкивается, как правило, именно от стоимости часов «производящих ресурсов».
Посмотрим, какую долю эти ресурсы занимают в общем пуле трат компании. Для небольшой веб-студии (специализирующейся на разработке, а не на рекламе – там закупочные бюджеты и немного другое распределение) из 15 человек распределение статей расходов, как правило, выглядит так:
- ФОТ сотрудников – 50%
- — Производящие ресурсы (30%)
- — Менеджеры, обслуживающий и административный персонал (20%)
- Условно-постоянные расходы – аренда офиса, канцелярка, расходники, еда, техника и пр. – 15%
- Налоги – 20%
- Маркетинг и реклама – 15%
+85
Кеширование в ASP.NET MVC
6 мин
48KВ прошлом посте я рассказывал о различных стратегиях кеширования. Там была голая теория, которая и так всем известна, а кому неизвестна, тому без примеров ничего не понятно.
В этом посте я хочу показать пример кеширования в приложении ASP.NET MVC и какие архитектурные изменения придется внести, чтобы поддерживать кеширование.
В этом посте я хочу показать пример кеширования в приложении ASP.NET MVC и какие архитектурные изменения придется внести, чтобы поддерживать кеширование.
+13
CANVAS шаг за шагом: Основы
6 мин
532KТуториал
CANVAS шаг за шагом:
Если верить англо-русскому словарю, то можно узнать что canvas переводится как холст, а если верить википедии, то можно узнать что тег canvas, это элемент HTML 5, который предназначен для создания растрового изображения при помощи JavaScript. Тому как создать это растровое изображение и будет посвящен мой небольшой текст. Прежде чем начинать пробовать свои силы в этом не легком деле рекомендуется уже иметь базовые знания о том что такое HTML и с чем едят JavaScript.
Если верить англо-русскому словарю, то можно узнать что canvas переводится как холст, а если верить википедии, то можно узнать что тег canvas, это элемент HTML 5, который предназначен для создания растрового изображения при помощи JavaScript. Тому как создать это растровое изображение и будет посвящен мой небольшой текст. Прежде чем начинать пробовать свои силы в этом не легком деле рекомендуется уже иметь базовые знания о том что такое HTML и с чем едят JavaScript.
+80
Как устроен jQuery: изучаем исходники
6 мин
58KjQuery однозначно стал стандартом в индустрии веб-дева. Есть много отличных js-фреймворков, которые заслуживают внимания, но jQuery поразил всех своей лёгкостью, изящностью, магией. Люди пишут с использованием jQuery, люди пишут плагины для jQuery, люди даже пишут статьи про jQuery, но мало кто знает (особенно из новичков), КАК устроен jQuery.
В этой статье проведем небольшой экскурс во внутренности этого фреймворка и разберем, что внутри.
Статья рассчитана на базовые знания Javascript. Задумайтесь и, если вы знаете, как написать клон jQuery, то, скорее всего, вы тут не найдёте ничего нового. Остальным — добро пожаловать под кат
+188
Технология быстрого создания фонов для 2D-игр на базе 3D-заготовок (48 часов разработки)
15 мин
150KВместо предисловия
Данная технология в свое время являлась чьим-то ноу-хау, но сейчас по прошествии нескольких лет решительно невозможно разобраться, кто является ее автором. Не смотря на то, что к ее использованию я пришел самостоятельно — не возьму на себя наглость утверждать, что именно я являюсь ее автором. Точно такими же авторами окажутся еще десятки, если не сотни людей, так как хорошие мысли, как правило, приходят во множество голов одновременно.
Перед тем как начать я хотел бы сделать акцент на двух положениях:
Первое. Мы исходим из того что читатель знаком с такими пакетами как 3D Studio MAX (либо любым другим пакетом трехмерного моделирования) и Photoshop (или любым его аналогом). В данном конкретном случае я собираюсь использовать терминологию этих двух пакетов. Однако, не смотря на это те же самые принципы можно использовать, пользуясь любым другим софтом.
Второе. В своей работе я всегда исхожу из одной простой истины: простота – залог успеха. И если первое положение предельно ясно, то второе я хотел бы раскрыть несколько шире. Начав, как это ни печально, именно с теории.
Я весьма относительный технарь и многие вещи, доступные другим технарям для меня — темный лес. Не смотря на это я считаю, что мастеру достаточно иметь один-два любимых инструмента, чтобы делать шедевры, а посредственности в свою очередь не хватит и чемодана этих инструментов, ибо за внешним лоском, эффектами и хитринками не будет, не души, не профессионализма.
Хочу также отметить, что я не причисляю себя к мастерам, которые делают шедевры. Данное примечание я делаю для тех злых людей, которые говорят (или скажут после публикации), что я заносчив, что меня занесло под небеса, и тех кто вместо того чтобы работать предпочитает злословить словно ябедник Кийр из моей любимой книги Оскара Лутса «Весна».
С преамбулами покончено перейдем к сути.
Я утверждаю и не беспочвенно, что хороший фон можно и нужно создавать не за неделю, не за пять дней и даже не за три. Чтобы сделать хорошую картинку для казуальной игры, без разницы i-spy это, match-3 или аркада, достаточно 48 часов. Разумеется, при условии того, что человек занимается работой, а не просиживанием штанов.
+283
Разработка игры под Windows Phone
9 мин
37KВ этой статье я хочу рассказать о своем опыте написания игры под платформу Windows Phone. Несмотря на кажущуюся простоту, путь от идеи до принятия игры в Windows Phone Store занял практически год и был полон неожиданных подводных камней — как с технической, так и с организационной сторон. Статья рассчитана на начинающих разработчиков, которые имеют представление о .NET / C#, но не пробовали делать полноценных игр.
+45
Простой путь создания сложных ASP.NET MVC контролов
6 мин
23KНаверняка все создавали свои asp.net mvc контролы (речь, конечно, про asp.net mvc кодеров). Вам должен быть знаком метод создания контролов, используя TagBuilder? Пробовали писать реально сложные контролы (например с большим количеством javascript-та или разметки, которая зависит от опций)? Тогда наверняка вам знаком адЪ экранирования кавычек, конкатенации строк (или вызова .Format() функции) и т.п. «неудобства». Я предлагаю взглянуть на достаточно простую методику, которая позволит избежать подобных вещей и в тоже время сосредоточиться на функциональной стороне контролов, а не на программировании шелухи.
+12
RESTFul Api контроллеры в .NET MVC 4
5 мин
99KТуториал
Приветствую.
Летом вышел релиз новой версии фреймворка, но поработать с ним получилось только недавно. В новой версии было добавлено много полезных штук, об одной из них, а именно ApiController, я хотел бы сегодня рассказать.
Благодаря им стало возможно делать RESTFull Api без лишних усилий. На небольшом примере заодно разберем работу с OData.
Летом вышел релиз новой версии фреймворка, но поработать с ним получилось только недавно. В новой версии было добавлено много полезных штук, об одной из них, а именно ApiController, я хотел бы сегодня рассказать.
Благодаря им стало возможно делать RESTFull Api без лишних усилий. На небольшом примере заодно разберем работу с OData.
+15
Версионность API в .NET MVC 4
6 мин
9.9KТуториал
Доброго времени суток.
С появлением ASP.NET Web API появился удобный и мощный инструмент для создания API для вашего сайта. Но, как известно, с течением времени, ваш API может меняться, дополняться или может быть вовсе переделан с нуля. Для совместимости со старыми клиентами необходимо реализовать версионность.
К сожалению, на данный момент Microsoft не предоставила удобного и простого способа для реализации версионности. В интернете можно найти некоторую информацию на эту тему, но, как правило, большинство найденных мной решений сводятся к добавлению параметра для версии в каждый запрос и его обработке. Мне же хотелось получить более гибкий метод для разделения на версии, который не будет засорять методы контроллера и избавит от множества блоков if else. И самым главным критерием для меня была возможность иметь контроллеры с одинаковыми именами для одних и тех же методов API, но разделенных на версии с помощью пространств имен.
В тоже время, в ASP.NET MVC Web API есть достаточно мощный механизм в виде интерфейса IHttpControllerSelector, с помощью которого можно реализовать версионность, оставив код чистым и понятным.
Давайте посмотрим, что из этого вышло.
С появлением ASP.NET Web API появился удобный и мощный инструмент для создания API для вашего сайта. Но, как известно, с течением времени, ваш API может меняться, дополняться или может быть вовсе переделан с нуля. Для совместимости со старыми клиентами необходимо реализовать версионность.
К сожалению, на данный момент Microsoft не предоставила удобного и простого способа для реализации версионности. В интернете можно найти некоторую информацию на эту тему, но, как правило, большинство найденных мной решений сводятся к добавлению параметра для версии в каждый запрос и его обработке. Мне же хотелось получить более гибкий метод для разделения на версии, который не будет засорять методы контроллера и избавит от множества блоков if else. И самым главным критерием для меня была возможность иметь контроллеры с одинаковыми именами для одних и тех же методов API, но разделенных на версии с помощью пространств имен.
В тоже время, в ASP.NET MVC Web API есть достаточно мощный механизм в виде интерфейса IHttpControllerSelector, с помощью которого можно реализовать версионность, оставив код чистым и понятным.
Давайте посмотрим, что из этого вышло.
+13
Информация
- В рейтинге
- Не участвует
- Откуда
- Киев, Киевская обл., Украина
- Дата рождения
- Зарегистрирован
- Активность