Открыть список
Как стать автором
Обновить
29.7
Карма
0.1
Рейтинг

Разработчик переднего конца

  • Публикации
  • Комментарии

Что недоговаривают Тинькофф Инвестиции. Вытаскиваем все данные по портфелю через API в большую таблицу Excel

PythonAPIФинансы в IT
Из песочницы

Разбираемся, как на самом деле считаются суммы и проценты в клиентском приложении.

Собираем все данные по портфелю и по всем операциям через Tinkoff API.

Строим огромную Excel таблицу со всеми данными.

Узнаём, сколько комиссий и налогов с нас уже содрали и что нам останется при выводе.

Пытаемся понять, что нам с этим делать.

Read more
Всего голосов 150: ↑147 и ↓3 +144
Просмотры96.7K
Комментарии 93

Продвинутые дженерики в TypeScript. Доклад Яндекса

Блог компании ЯндексJavaScriptПромышленное программированиеTypeScript
Дженерики, или параметризованные типы, позволяют писать более гибкие функции и интерфейсы. Чтобы зайти дальше, чем параметризация одним типом, нужно понять лишь несколько общих принципов составления дженериков — и TypeScript раскроется перед вами, как шкатулка с секретом. AlexandrNikolaichev объяснил, как не бояться вкладывать дженерики друг в друга и использовать автоматический вывод типов в ваших проектах.

— Всем привет, меня зовут Александр Николаичев. Я работаю в Yandex.Cloud фронтенд-разработчиком, занимаюсь внутренней инфраструктурой Яндекса. Сегодня расскажу об очень полезной вещи, без которой сложно представить современное приложение, особенно большого масштаба.
Читать дальше →
Всего голосов 9: ↑7 и ↓2 +5
Просмотры4.1K
Комментарии 1

Теория категорий для программистов: предисловие

ПрограммированиеHaskellФункциональное программирование
Перевод
Вот уже некоторое время я обдумываю идею написать книгу о теории категорий для программистов. Не компьютерных теоретиков, программистов — скорее инженеров, чем ученых. Я знаю, что это звучит безумно, и я сам достаточно напуган. Я знаю, что есть огромная разница между наукой и техникой, потому, что я работал по обе стороны баррикад. Но у меня всегда был очень сильный порыв объяснить вещи. Я восхищаюсь Ричардрм Фейнманом, который был мастером простых объяснений. Я знаю, я не Фейнман, но я буду стараться изо всех сил. Я начинаю с публикации этого предисловия, которое должно мотивировать читателя изучить теорию категорий, и надеюсь на начало дискуссии и обратную связь.

Я постараюсь в нескольких параграфах убедить вас, что эта книга написана для вас, и развеять все ваши сомнения в необходимости изучения этой, одной из самых абстрактных областей математики, в свое драгоценное свободное время.
Читать дальше →
Всего голосов 55: ↑51 и ↓4 +47
Просмотры100.5K
Комментарии 25

Как найти удаленную работу в зарубежной компании. 10 шагов

Блог компании gms & g-mateКарьера в IT-индустрииЛайфхаки для гиковУдалённая работа


Каждый год Оксфордский словарь английского языка выбирает «Слово года». Но в 2020-м что-то пошло не так. Издательство Оксфордского университета описало 2020-й как «год, который лишил нас дара речи», и сказало, что к нему невозможно подобрать правильное слово.


Но на наш взгляд, такое слово всё-таки есть. С прошлого марта в мире резко возросло использование слова «удаленно». Большинство предприятий отошли от традиционной модели офисной работы и стали пытаться организовать труд сотрудников из дома. Для разработчиков из СНГ это прекрасная возможность начать работу в лучших мировых компаниях. Зарплаты за рубежом выше, а возможностей сейчас стало больше, чем когда-либо прежде.


Мы постоянно исследуем рынок. Публикуем сотни вакансий ежедневно. И сейчас 40% выручки получаем от иностранных компаний, которые в основном нанимают программистов для удаленной работы.


Вот несколько наблюдений о том, как разработчику найти удаленную работу в 2021 году. И большой список ресурсов, которые могут помочь вам получить хорошую должность.

Читать дальше →
Всего голосов 32: ↑30 и ↓2 +28
Просмотры18.4K
Комментарии 16

Как извлечь пользу из статической типизации

ПрограммированиеJavaСовершенный кодПроектирование и рефакторинг

Эта статья о том, как извлечь максимум пользы из статической системы типов при дизайне вашего кода. Статья пытается быть language agnostic (получается не всегда), примеры на Java и взяты из жизни.

Читать далее
Всего голосов 47: ↑47 и ↓0 +47
Просмотры8.1K
Комментарии 68

Как и зачем хранить домашние каталоги пользователей в Git-репозиториях

Блог компании МаклаудOpen sourceGitРезервное копированиеХранение данных
Перевод

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

У меня несколько устройств: лэптоп на работе, стационарный комп дома, Raspberry Pi, портативный компьютер Pocket CHIP, а также Chromebook с несколькими версиями Linux на борту. Давно хотел, чтобы на таких разных устройствах я мог выполнять примерно одинаковые действия для настройки окружений. Поначалу я просто не знал, как этого добиться. Например, команды Bash alias я чаще использовал на работе, а многие вспомогательные скрипты хорошо работали в моём домашнем окружении.

С годами грань между моими рабочими и домашними устройствами начала стираться. Задач стало больше, увеличился и объём разнородных неупорядоченных данных в домашних каталогах, с которыми надо было как-то разбираться.
Читать дальше →
Всего голосов 37: ↑32 и ↓5 +27
Просмотры13.8K
Комментарии 20

Свой мессенджер Matrix-synapse в связке с Jitsi-meet. Часть 3

Настройка LinuxИнформационная безопасностьСистемное администрированиеIT-инфраструктура*nix
Перевод
Tutorial

Всем Приветь. Как вы уже обратили внимание, порядок публикации нарушен. Изначально планировалось выпустить эту статью в качестве 3 части цикла, однако она стала второй. Это объясняется тем, что поднять один новый сервер для Matrix дешевле, чем несколько для высоконагруженного сервиса Jitsi-meet. Без паники - все будет. А пока займемся Matrix.

Ну давай гляну, что ты там понаписал...
Всего голосов 1: ↑1 и ↓0 +1
Просмотры2.6K
Комментарии 2

Flutter: слоёный пирог с интересной начинкой. Графика

Блог компании Лига СтавокDartFlutter

Write once, run anywhere

Предлагаю заглянуть под капот, и погрузиться в детали реализации движка Flutter, чтобы понять, как он решает вопрос кроссплатформы с точки зрения отрисовки UI

Читать далее
Всего голосов 15: ↑15 и ↓0 +15
Просмотры5K
Комментарии 0

От внедрения зависимостей к отказу от зависимостей

Блог компании JUG Ru GroupРазработка веб-сайтов.NETC#Функциональное программирование

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



Марк Симан — автор популярной книги Dependency Injection in .NET, автор бесчисленных блог-постов. На DotNext 2017 Moscow Марк рассмотрел применение dependency injection в классическом объектно-ориентированном дизайне и объяснил, почему его необязательно (даже нежелательно) использовать в функциональном программировании. Следом за этим он наглядно показал, как использование приемов функционального программирования устраняет необходимость в использовании моков и стабов в модульном тестировании и позволяет полностью выбросить мусор из прямого перечисления зависимостей.


Под катом — перевод доклада и видео. Далее повествование будет от лица Марка.

Читать дальше →
Всего голосов 35: ↑35 и ↓0 +35
Просмотры11.3K
Комментарии 10

JavaScript prototype pollution: практика поиска и эксплуатации

Блог компании HuaweiИнформационная безопасностьJavaScript

Если вы следите за отчетами исследователей, которые участвуют в bug bounty программах, то наверняка знаете про категорию уязвимостей JavaScript prototype pollution. А если не следите и встречаете это словосочетание впервые, то предлагаю вам закрыть этот пробел, ведь эта уязвимость может привести к полной компрометации сервера и клиента. Наверняка хотя бы один продуктов вашей (или не вашей) компании работает на JavaScript: клиентская часть веб-приложения, десктоп (Electron), сервер (NodeJS) или мобильное приложение.


Эта статья поможет вам погрузиться в тему prototype pollution. В разделах Особенности JavaScript и Что такое prototype pollution? вы узнаете как работают объекты и прототипы JavaScript и как особенности их функционирования могут привести к уязвимостям. В разделах Prototype pollution на сервере и Prototype pollution на клиенте вы научитесь искать и эксплуатировать эту уязвимость на кейсах из реального мира. Наконец вы изучите способы защиты и почему самый распространенный способ защиты можно легко обойти.


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

Читать дальше →
Всего голосов 20: ↑19 и ↓1 +18
Просмотры5.6K
Комментарии 8

Подборка html/javascript/css инструментов и библиотек от SmashingMagazine

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

Множество удобных инструментов, найденных командой популярного онлайн журнала SmashingMagazine, приводится под катом
Читать дальше →
Всего голосов 125: ↑123 и ↓2 +121
Просмотры20.3K
Комментарии 19

Никогда такого не было и вот опять. Почему нужно использовать self-hosted VPN. Релиз Amnezia

Блог компании Amnezia VPNИнформационная безопасностьOpen sourceЗаконодательство в IT
Вот и пришло время для релиза VPN-клиента, родившегося благодаря хакатону DemHack, и выращенного при поддержке РосКомСвободы, PrivacyAccelerator и Теплицы социальных технологий.

Спустя полгода с того момента, как идея была впервые озвучена, мы презентуем готовый продукт — бесплатный опенсорсный клиент для self-hosted VPN, с помощью которого вы сможете установить VPN на свой сервер в несколько кликов.

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

image
Читать дальше →
Всего голосов 130: ↑128 и ↓2 +126
Просмотры46.8K
Комментарии 157

Интервью с Дэном Абрамовым: React 17, Suspense, Redux, холивары

Блог компании JUG Ru GroupJavaScriptПрограммированиеReactJSИнтервью


Главный миф о Дэне Абрамове — что он «создал React». Но хотя это и не так, сейчас он имеет самое прямое отношение к фреймворку, так что поговорить с ним про React очень интересно. Обычно Дэна не увидеть на российских конференциях, но нам помог онлайн-формат, и на HolyJS его подробно расспросили Наталия Теплухина (член core team Vue.js) и Наталия Короткова (занимается веб-проектами с 2010 года).


Тут получился не поверхностный разговор о погоде, а обсуждение технической конкретики для тех, кто вдается в детали. Но под конец были и более общие вопросы: когда появится новая документация React, переписанная с нуля? Что не так с Redux? Как Дэн воспринимает холивары о фреймворках? Что он может рассказать о релокации?


Так что, если не осилите все технические детали в первой половине интервью, переходите ко второй, там попроще. Под катом — и видеозапись разговора, и текстовая расшифровка.

Читать дальше →
Всего голосов 30: ↑27 и ↓3 +24
Просмотры14.5K
Комментарии 9

1 год с Flutter в продакшне

Разработка мобильных приложенийDartFlutter
Перевод

Это текстовая версия моей презентации на DartUp 2020 (на английском). В ней я делюсь проблемами, с которыми мы столкнулись, обсуждаю наш архитектурный подход, рассказываю о полезных библиотеках, ну и отвечаю на вопрос, удачной ли была эта идея – взять и всё переписать.

Читать далее
Всего голосов 25: ↑25 и ↓0 +25
Просмотры11.9K
Комментарии 43

Получаем бесплатные сервера в Oracle Cloud Free Tier

Системное администрированиеOracleОблачные сервисыЛайфхаки для гиков
Tutorial

Искал я как-то себе дешевый VPS сервер. Ну для отладки чего-нибудь, моделирования сетей... Да мало ли еще для чего может понадобится личный сервер? И вот в результатах поиска всплыло, что Oracle предоставляет возможность получить бесплатно и "пожизненно" до двух виртуальных машин (Oracle Cloud Infrastructure Compute). А также еще кое-какие вкусняшки. Зарегистрировался, получил - действительно выдают, действительно работает, и действительно бесплатно. Но хочется же подключить полученные машинки в свою сеть! И, желательно, штатными средствами. Вот из экспериментов и получились две статьи, может быть кому-то они сэкономят часа четыре рабочего времени.

Читать далее
Всего голосов 21: ↑21 и ↓0 +21
Просмотры30.3K
Комментарии 97

MFS — паттерн построения UI в iOS приложениях

Разработка под iOSObjective CДизайн мобильных приложений
Из песочницы

Логика развития мобильных приложений заключается в постепенном усложнении функциональной нагрузки на пользовательский интерфейс.

Что, в свою очередь, приводит к росту кодовой базы и затруднению ее обслуживания.
MFS - позволяет создавать современный дизайн приложений и при этом избежать такого явления как MassiveViewController.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры2.5K
Комментарии 7

Удивительно быстрые алгоритмы

Алгоритмы
Tutorial

Изучая программирование я встречаю примеры невозможных алгоритмов. Интуиция говорит, что такого не может быть, но компьютер опровергает её простым запуском кода. Как такую задачу, требующую минимум кубических затрат по времени, можно решить всего за квадрат? А вон ту я точно решу за линию. Что? Есть гораздо более эффективный и элегантный алгоритм, работающий за логарифм? Удивительно!


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


Интересно? Добро пожаловать под кат!

Читать дальше →
Всего голосов 25: ↑23 и ↓2 +21
Просмотры18.8K
Комментарии 28

Как написать «нанимающее» резюме для разработчика

Карьера в IT-индустрии
Из песочницы

Привратники

Ваше резюме будут читать 3 типа людей:

HR или рекрутер

Первый человек, который видит ваше резюме, и скорее всего не технарь. У него есть только один вопрос:

Надо ли показать резюме этого человека техническому специалисту?

Как он это определяет? Для этого ему надо понять, есть ли у этого кандидата нужные навыки. Но HR не является программистом, поэтому ваш разговор может закончиться так:

Простите, но вы нам не подходите. Нам нужен человек с опытом JavaScript, а я вижу что вы программировали только на Angular JS и jQuery.

Читать далее
Всего голосов 16: ↑13 и ↓3 +10
Просмотры9.3K
Комментарии 11

Как мы ржавели. История внедрения и обучения

ПрограммированиеСистемное программированиеRust

Все говорили – переходи на rust! Начинай пользоваться самым-самым языком, который самый любимый язык на stackoverflow и всё такое.

Я тяжело вздохнул и огляделся. Ну опять двадцать-пять. Ладно, давайте разбираться, как правильно покрывать всё ржавчиной.

Профессионально я программирую уже 17 лет. В далёкие-предалёкие времена я начал изучать программирование с x86 Assembly. Такой жестокий подход к изучению компьютера дал мне глубокое понимание того как работает процессор и что делают другие языки программирования. Учить новые языки для меня никогда не было проблемой. Я их просто учил. C, C++, шарпы, ГО, тысячи разных скриптов и фреймворков. Чего уж там, ещё один язык, можно и выучить.

Ага.

Только вот не с этой ржавой развалюхой. Я просидел две недели над официальным руководством, пялился в VSCode и не мог выдавить из себя больше чем fn main() {}. Ну какого же чёрта? Я просто закрыл глаза, открыл руководство на рандомной странице и начал его читать. И прикол в том, что я понял о чём там говориться. И тут до меня дошло… Руководство написано наизнанку. Начало и конец ничуть не лучше чем в Мементо Кристофера Нолана. Они как-то умудрились запутать в общем-то нормальное руководство. После этого всё пошло получше.

Ржавые шестерёнки заскрипели и начали крутиться. Программа пошла-поехала. Если хотите знать как я внедрил rust в продакшин, как я ему научился и что из этого вышло – добро пожаловать под кат. Реальные люди, коммиты, примеры и никаких todo-list и хеллоу-ворлдов.

Ржаветь так ржаветь.
Всего голосов 142: ↑138 и ↓4 +134
Просмотры21.4K
Комментарии 314
1

Информация

В рейтинге
2,311-й
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность