Как стать автором
Обновить
5
0.2

Бэкенд разработчик (.NET)

Отправить сообщение

Промисы на примере бургер-вечеринки

Время на прочтение4 мин
Количество просмотров39K


Это перевод статьи, которую Марико Косака написала в качестве альтернативного введения в промисы JavaScript. Наброски иллюстраций она делала в своём блокноте во время чтения разных статей, посвящённых промисам. Если хотите изучить более подробно, в конце вы найдёте список полезных ссылок.

Недавно Марико участвовала в обсуждении того, как можно с помощью JavaScript сделать фичу, которая давала бы доступ к внешним данным (должна была быть асинхронной). Она сказала: «Ну, давайте используем fetch()… так что в коде… эээ...», и пока силилась вспомнить fetch API, собеседник сказал: «Будет возвращаться промис». По словам Марико, её мозг впал в ступор, и она сказала: «Честно говоря, не знаю, что ты имеешь в виду…»

Ей приходилось много раз писать код, основанный на промисах, но для полной картины нужные пазлы в её голове почему-то не соединились. Она поняла, что на самом деле не «въезжает» в суть.
Читать дальше →

Государство хочет знать обо всех покупках в магазинах и кафе: разбор нового закона об онлайн-кассах

Время на прочтение9 мин
Количество просмотров52K


Фото: Timo Kuusela, Flickr

Начиная с 1 февраля российские компании и предприниматели больше не могут зарегистрировать в ФНС обычные кассы. Согласно требованиям новой редакции ФЗ-54 необходимо устанавливать онлайн-кассы, которые отправляют данные обо всех продажах в налоговую через интернет. Сегодня мы поговорим о том, что на самом деле меняется — с точки зрения бизнеса, покупателей и технологий.
Читать дальше →

ASP.NET Core: ваше первое приложение на Linux c использованием Visual Studio Code

Время на прочтение5 мин
Количество просмотров89K
Решил недавно написать небольшое ASP.Net MVC приложение после многолетнего перерыва и знающие люди на Хабре подсказали попробовать новый ASP.Net Core, тем более, что он работает в Линуксе из коробки без необходимости задействовать mono, и, судя по последним тестам, даже показывает неплохую производительность. За основу взял аналогичную статью для Mac, однако здесь в отличии от вдохновившей меня статьи хочу описать процесс пошагово в одном месте, для того, чтобы не пришлось лазить по перекрёстным ссылкам, пытаясь разобраться как установить непонятно для чего предназначенные приложения и пакеты. Такое подробное описание процесса возможно поможет многим избежать граблей, с которыми пришлось столкнуться мне. Несколько фраз и рисунков, в части одинаковой для любой платформы, с правками и корректировками взяты из статьи для Mac.

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

Серия видеоуроков по Git для новичков

Время на прочтение1 мин
Количество просмотров115K
Скорее всего, если вас привлекло название статьи, то вы начинаете свой путь знакомства с системой контроля версий Git. В данной статье я приведу 10+ видео о пошаговом вхождении в контроль версии используя Git. Данного курса будет вполне чем достаточно для работы с такими популярными сервисами как GitHub и Bitbucket.

Однажды мой знакомый, который только начинал свой путь в ИТ кинул мне данный мемчик что слева, с вопросом "А чем плохо то?", поэтому чтобы понимать данную шутку и уметь работать с самым популярным на сегодня VCS (Version Control System) рекомендую к ознакомлению серии видеоуроков, которую я привел ниже.
Читать дальше →

С помощью LAMP я создал SaaS-сервис приносящий $3700 в месяц. Моя история

Время на прочтение11 мин
Количество просмотров70K
В этой статье я хотел бы поделиться своим опытом создания SaaS-сервиса на базе LAMP стека, Postio и доведения сервиса до состояния, когда он стал приносить 3 700 долларов ежемесячно (до обрушения рубля было почти 7 000). Сразу надо сказать, что эта история не имеет ничего общего с инвесторами, с золотой лихорадкой Кремниевой долины и с какой-то сверхсовременной технологией. Просто незамысловатая история от независимого разработчика о создании прибыльного SaaS-сервиса, который может сделать любой. Этот веб-сервис был сделан для внутреннего рынка России, поэтому я перевёл всё на английский и в доллары для удобства (пожалуйста, обратите внимание, что это перевод моей статьи, которая изначально была написана для англоязычной аудитории). Но, с другой стороны, этот опыт является довольно универсальным и может быть применён везде. По сути, это инструкция по созданию проектов такого рода.

Три года назад я решил заняться SMM, и самым простым способом сделать это показалось запустить свою собственную группу в какой-нибудь нише и попытаться развить её. Facebook был уже, мягко говоря, довольно конкурентным на тот момент, поэтому я запустил свою тестовую группу на базе «ВКонтакте». Я выбрал очень популярную нишу, потому что всё, что я хотел, — это научиться, а не доминировать на рынке.

Наверное, я должен немного отвлечься и сказать, что VK.com имел и до сих пор имеет процветающую «экосистему» таких групп, которая приносит прибыль их владельцам. Это — своеобразный рынок, который Facebook прикрыл уже давно. И этот базар является прекрасной средой для обучения и экспериментов.

Интернет-магазин на «1С-Битрикс» и кассы: требования закона 54-ФЗ

Время на прочтение11 мин
Количество просмотров62K


С 1 февраля 2017 года вступили в силу поправки к закону 54-ФЗ о контрольно-кассовой технике.

Эти поправки вносят ряд изменений и новых требований по работе с кассами и кассовыми чеками. О том, как мы адаптировали CMS «1С-Битрикс» под новую редакцию закона, чтобы облегчить жизнь интернет-магазинам, читайте под катом.
Читать дальше →

Конкурентность: Асинхронность

Время на прочтение6 мин
Количество просмотров41K

Мы всё-таки смогли дойти до третьей части и добрались до самого интересного — организации асинхронных вычислений.


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


Теперь посмотрим, как можно управлять потоком исполнения (control flow) в случае обработки асинхронных задач.


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

Хитрости и трюки Netbeans на живых примерах

Время на прочтение4 мин
Количество просмотров57K

Очень часто я слышу фразы различных людей на тему того, что полноценные IDE — это не нужно, что Vim, Sublime Text и Atom позволяют всё делать, и так далее, и так далее. Только недавно у меня снова возникла беседа на эту тему, и я снова вспомнил о том, что хотел показать людям некоторые трюки современных IDE, которые сильно упрощают жизнь во время работы.


Я люблю эту качественную опенсорсную IDE Netbeans. У меня даже цветовая схема под неё есть своя собственная (не забудьте прочитать описание, если пожелаете её опробовать). На всех видеороликах как раз она и используется в работе, плюс тёмный интерфейс Darkula и свободный шрифт Hack.


Иногда я перехожу в PhpStorm, поработать там и сравнить возможности этих двух IDE. И время от времени прихожу к понимаю, что каждая из них по-своему хороша. PhpStorm имеет множество интересных интеллектуальных возможностей для быстрой разработки ООП кода. А на стороне Netbeans — бесплатность, а также мощный и не сильно перегруженный интерфейс. Это особенно чувствуется после возвращения на него с PhpStorm.


В этой статье я хотел бы показать некоторые прикольные трюки, которые присутствуют в Netbeans и прочих современных IDE, а некоторые из них — только в Netbeans. Очень часто они помогают мне сэкономить массу времени при работе над большими проектами.


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

Американцы были на Луне: критика лунной конспирологии

Время на прочтение25 мин
Количество просмотров117K
image

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

Российская публика с энтузиазмом воспринимает мантры о том, что полеты Аполлонов были сняты в Голливуде. Немалая часть американцев также уверовала в это, наслушавшись лжецов и честных фантазеров, которым интернет дал прежде невообразимые возможности для самовыражения в публичном поле. В этой статье миф о лунном заговоре подвергнут жесткой критике. За основу взят фильм , снятый несколько лет назад известным телеведущим Александром Гордоном. Его анализ вскроет не только безграмотность основных «разоблачений», но и механизм манипуляций сознанием через телевидение и интернет, которые формируют в обществе своего рода Веру в то, что люди не были и не могли быть на Луне. На протяжении статьи я буду цитировать фильм Гордона и комментировать его, имея целью опровергнуть домыслы, которые он распространил.

ТЗ высокой четкости

Время на прочтение6 мин
Количество просмотров58K
Я аналитик, который пишет непонятные ТЗ. Т.е. я пытаюсь писать очень понятные ТЗ. В целом, я слушаю клиентов, потом я слушаю разработчиков, потом голоса в своей голове. Зачем я говорю с ними? В общем, получается то, что получается. Ну вы поняли.



Написать идеальное ТЗ проще простого:

1. Договорился о минимальном этапе (на 2-4 недели).
2. Описал юзер-стори по шагам.
3. Составил список экранов будущей системы.
4. Прописал названия методов API и форматы данных.
5. Запросил тестовый контент и составил таблицы с тестовыми данными.
6. Сформулировал из всего этого цели и задачи.
7. Согласовал план работ и выставил задачи в таск-менеджер.

Но не тут-то было! Давайте я расскажу, как все происходит в реальной жизни, а также поделюсь своими лайфхаками, как я с этим справляюсь.
Читать дальше →

Ищем и скачиваем непопулярные и старые файлы в интернете

Время на прочтение14 мин
Количество просмотров213K
Преимущественно медиафайлы. На полном серьезе, без шуток.

Введение

Бывает, случается так, что вы хотите скачать альбом 2007 года исполнителя, который кроме вас известен 3.5 людям, какой-нибудь испанский ска-панк или малопопулярный спидкор европейского происхождения. Находите BitTorrent-раздачу, ставите на закачку, быстро скачиваете 14.7%, и… все. Проходит день, неделя, месяц, а процент скачанного не увеличивается. Вы ищете этот альбом в поисковике, натыкаетесь на форумы, показывающие ссылки только после регистрации и 5 написанных сообщений, регистрируетесь, флудите в мертвых темах, вам открываются ссылки на файлообменники вроде rapidshare и megaupload, которые уже сто лет как умерли.

Попытка скачать хотя бы один файл
Увы, частая ситуация в попытке хоть что-то скачать

Такое случается. В последнее время, к сожалению, случается чаще: правообладатели и правоохранительные органы всерьез взялись за файлообмен; в прошлом году закрылись или были закрыты KickassTorrents, BlackCat Games, what.cd, btdigg, torrentz.eu, EX.ua, fs.to, torrents.net.ua, и еще куча других сайтов. И если поиск свежих рипов фильмов, сериалов, музыки, мультиков все еще не представляет большой проблемы, несмотря на многократно участившееся удаления со стороны правообладателей контента из поисковых систем, торрент-трекеров и файлообменников, то поиск и скачивание оригинала (DVD или Blu-Ray) фильмов и сериалов или просто ТВ-рипов 7-летней давности на не-английском и не-русском языке — не такая уж простая задача.
Читать дальше →

DIY на все случаи жизни: робот-осьминог, дроид BB8 в полный рост и лазерный дробовик

Время на прочтение4 мин
Количество просмотров16K


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

Проверяем партнера по открытым источникам

Время на прочтение3 мин
Количество просмотров40K


В нашей стране никто не застрахован от «кидалова» партнером по договору: заказчики не платят фрилансерам, соучредители выходят из проекта, а поставщики отказываются от выполнения контрактов. Хорошие закупщики за то и ценятся, что имеют хорошие базы и связи в налоговой и могут неофициально проверить любого контрагента. К счастью, непрозрачный российский рынок в последние годы проясняется: появилось сразу несколько бесплатных государственных сервисов для проверки контрагента на честность. О них и пойдет речь в статье.
Читать дальше →

React.js: собираем с нуля изоморфное / универсальное приложение. Часть 1: собираем стек

Время на прочтение22 мин
Количество просмотров196K
image

Лицо моей жены, когда она вычитывала эту статью


Я решил написать цикл статей, который и сам был бы счастлив найти где-то полгода назад. Он будет интересен в первую очередь тем, кто хотел бы начать разрабатывать классные приложения на React.js, но не знает, как подступиться к зоопарку разных технологий и инструментов, которые необходимо знать для полноценной front-end разработки в наши дни.


Я хочу с нуля реализовать, пожалуй, наиболее востребованный сценарий: у нас есть серверная часть, которая предоставляет REST API. Часть его методов требует, чтобы пользователь веб-приложения был авторизован.

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

Новые практические курсы по JavaScript и ES6

Время на прочтение2 мин
Количество просмотров29K


Привет, Хабр!


Последние несколько месяцев мы в Хекслете работали над новыми курсами и обновлениями платформы. Сейчас на сайте доступно четыре "профессии", так мы называем последовательные программы обучения по разным направлениям, от новичка до джуниора. Одна из профессий окончена, а в остальных продолжают выходить новые курсы. Сегодня хочу рассказать про самое важное для нас сегодня направление — JavaScript, в частности профессию "Фронтэнд JS-программист".


Мы пошли не стандартным путем "hello world, сделаем форму, добавим анимацию, изучим ООП", а взяли за основу подход к изучению программирования в целом, а не конкретно языка JavaScript. Язык же используется как инструмент решения задач и применения изученных концепций и идей. При это мы изучаем свежий стандарт ES6 и с самого начала знакомим учащихся с правильным окружениям и техниками: модули, пакетный менеджер, отладка, модульное тестирование.


Вот как выглядит программа обучения:


  1. Жизнь программиста. Про профессию, виды компаний и виды разработки.
  2. Основы программирования. Фундамент: кодинг, ошибки, отладка, функции, побочные эффекты, типы данных. И, конечно, базовые штуки вроде чисел, строк, условий и т.д.
  3. JS: подготовка к работе. Установка и настройка окружения — node, npm, atom.
  4. JS: Составные данные. Как из простых типов данных составлять более сложные. Абстракция от чисел до объектов.
  5. Bash: Основы командной строки.
  6. JS: Последовательности. Пишем свой генератор HTML и изучаем filter, map, reduce.
  7. JS: Программирование, управляемое данными. Типы, сообщения, ООП и TDD.
Читать дальше →

В защиту посредственности

Время на прочтение8 мин
Количество просмотров53K


Вот есть такой парень. Всемирно известный миллиардер. Технический гений, изобретатель и предприниматель. Физически развитый, талантливый и симпатичный, с такой точёной челюстью, будто сам Зевс спустился с Олимпа и самостоятельно высек из камня эту скотину.

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

Его улыбка способна растопить комнату. В его обаянии можно купаться. Половина его друзей появлялась на обложке журнала Time под заголовком «Человек года». Другой половине на это наплевать, они могли бы купить этот журнал, если бы захотели. И если этот парень не путешествует по миру в своём реактивном самолёте и не создаёт новейшую технологическую инновацию для спасения планеты, он проводит время, помогая слабым, беспомощным и угнетённым.

Этот человек, как вы уже догадались, Брюс Уэйн. Также известный, как Бэтмен. И (спойлер) его не существует. Он выдуман.

Интересная грань человеческой натуры – нам необходимо придумывать персонажей, совершенных во всех смыслах и воплощающих всё, чего мы желаем сами. В средневековой Европе ходили истории о галантных рыцарях, убивающих драконов и спасающих принцесс. В Древнем Риме и Греции были мифы о героях, в одиночку выигрывавших войны и иногда сражавшихся против самих богов. В любой другой культуре полно таких выдуманных историй.

Что такое Virtual DOM?

Время на прочтение4 мин
Количество просмотров138K
За последний год я много слышал о Virtual DOM и React JS.
React работает действительно быстро и очень прост, но как он работает? Что такое Virtual DOM? Почему я должен беспокоиться об этом, и что случилось со старым добрым обычным DOM?

Что такое DOM


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

Как по маслу, или анимируем со скоростью 60 FPS на CSS 3

Время на прочтение5 мин
Количество просмотров61K

Изображения и текст принадлежат их авторам.


Анимация элементов в мобильных приложениях — это просто. Правильная анимация тоже может быть простой… если вы последуете представленным в статье советам.


Сегодня кто только не использует CSS 3 анимацию в своих проектах, тем не менее не только лишь все, но мало кто может делать это правильно. Даже описаны так называемые «лучшие практики», но люди продолжают делать всё по-своему. Скорее всего потому, что просто не понимают, почему всё устроено именно так, а не иначе.


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

Поиск подстроки и смежные вопросы

Время на прочтение13 мин
Количество просмотров124K
Здравствуйте, уважаемое сообщество! Недавно на Хабре проскакивала неплохая обзорная статья о разных алгоритмах поиска подстроки в строке. К сожалению, там отсутствовали подробные описания каких либо из упомянутых алгоритмов. Я решил восполнить данный пробел и описать хотя бы парочку тех, которые потенциально можно запомнить. Те, кто еще помнит курс алгоритмов из института, не найдут, видимо, ничего нового для себя.
Читать дальше →

Это маленькое чудо — алгоритм Кнута-Морриса-Пратта (КМП)

Время на прочтение9 мин
Количество просмотров189K
Алгоритм Кнута-Морриса-Пратта используется для поиска подстроки (образца) в строке. Кажется, что может быть проще: двигаемся по строке и сравниваем последовательно символы с образцом. Не совпало, перемещаем начало сравнения на один шаг и снова сравниваем. И так до тех пор, пока не найдем образец или не достигнем конца строки.
Читать дальше →

Информация

В рейтинге
2 485-й
Откуда
Стамбул, Стамбул, Турция
Дата рождения
Зарегистрирован
Активность

Специализация

Бэкенд разработчик
Ведущий
От 7 000 $
C#
.NET
Entity framework
MongoDB
Apache Kafka
DDD
Высоконагруженные системы
Проектирование архитектуры приложений
Elasticsearch