Pull to refresh
0
0
Павел Уланов @M0r71m3r

Scala вечный джун

Send message

Что я не знал про образование

Reading time14 min
Views106K


Я тут полез изучать опыт школьных учителей в педагогике, — и совершенно внезапно обнаружил кучу важных для управления проектами принципов. В смысле, что я опять хочу познакомить вас со странным человеком и рассказать про его опыт. Итак, знакомьтесь, обычная учительница в астраханской гимназии, Ольга Анисимова, которая порвала мне все шаблоны того, что происходит в обычной школе.

Она не учит детей методам решения задачи, она учит их сначала найти саму задачу, потом прикинуть спектр вариантов подхода, а уже потом — как конкретно получить ответ.

Она относится к детям как ко взрослым во многих аспектах.

Она позволяет себе ошибаться, позволяет детям исправлять свои ошибки и аргументировано спорить с ней. Более того, она иногда специально допускает ошибки, чтобы дети не расслаблялись.

Она разрешает готовить шпаргалки и списывать. Разрешает детям «выпихивать» на ответ того, кто выучил тему. Использует понятную детям игрофикацию для мотивации.

В общем, всё настолько пропитано здравым смыслом, что просто не может и не должно происходить в школе. В чёртовой школе!
Читать дальше →
Total votes 166: ↑163 and ↓3+208
Comments482

Как приручить эмоции, чтобы прийти к успеху

Reading time10 min
Views14K

Привет! Я - Ольга Красильникова. Последние 2,5 года работаю в компании Bercut. Сначала отвечала за направление обучения и развития, сейчас – за психологическое благополучие команды.

За время своей работы как психолог и коуч я провела более 200 сессий с TOP-менеджерами, тимлидами, старшими и ведущими аналитиками, разработчиками и тестировщиками. На встречах мы учились распознавать эмоции и их послания, искать решение, отталкиваясь от информации, которую несет эмоция, менять мышление и поведение. Это помогало улучшать отношения в командах, выполнять KPIs, продвигаться по карьерной лестнице. Ранее я написала статью “Relax, take IT easy: как вернуть спокойствие в работу”. А сегодня мы:

- выясним, где ошибаемся, когда пробуем управлять эмоциями на работе;

- разберем, как сделать эмоции путеводной звездой в достижении целей;

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

Читать далее
Total votes 18: ↑16 and ↓2+17
Comments4

На меня трудится 1 000 работников, хотя они думают, что работают на себя

Level of difficultyEasy
Reading time11 min
Views120K

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

Читать далее
Total votes 215: ↑183 and ↓32+192
Comments296

Что еще за Defold и с чем его едят?

Reading time7 min
Views30K
image

Это небольшой разбор игрового движка Defold на практическом примере(под Andoid), а также немного субъективной критики и похвалы, ну вообщем обзор. Кому интересно узнать об этом двигателе больше, есть одно интервью, почитайте. Информации о Defold в сети мало, так что это будет вклад в очень небольшую копилку.
Читать дальше →
Total votes 10: ↑7 and ↓3+4
Comments0

Что я думаю о Lua после релиза проекта на 60,000 строчек кода?

Level of difficultyEasy
Reading time15 min
Views19K

Интервью-ретроспектива с ведущим программистом видео-игры Craftomation 101 о использовании Lua как основного языка в проекте на 60,000 строчек кода.

Читать далее
Total votes 22: ↑22 and ↓0+25
Comments10

Пробы на роль Архитектора. Акт I: вступление

Level of difficultyMedium
Reading time7 min
Views14K

Я тут наткнулся на старую почту с приглашением на собеседование. С пожелтевшими гифками в подписи и просроченным сургучом сертификатов. Дело давнее, пандемийное, так что, думаю, можно рассказывать. Я один не смотрю на сроки NDA, когда подписываю? На всякий случай стоит обезличить и переделать. Тем более, что бонуса за продвижения бренда нет, а наказание всегда найдётся. Так что у нас тут анонимный клуб найма лиц похожих на архитекторов.

Читать далее
Total votes 51: ↑50 and ↓1+59
Comments5

Основы библиотеки Circe или простой JSON-парсер на Scala

Level of difficultyEasy
Reading time8 min
Views1.8K

Всем привет!

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

Читать далее
Total votes 4: ↑3 and ↓1+2
Comments1

Application Hosting. Обзор бесплатных и доступных хостингов приложений

Level of difficultyEasy
Reading time3 min
Views2K

Можно выделить следующие виды хостингов и облаков для развертывания приложений:

- VPS

- Serverless

- GitOps движки приложений

В этой статье мы не будем рассматривать VPS-хостинги, так как на эту тему уже есть множество подробных материалов и есть специализированные инструменты CI/СD.

Рассмотрим движки приложений и serverless.

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments5

Редактор кода Helix — лучше чем NeoVim?

Level of difficultyEasy
Reading time8 min
Views13K

Откиньтесь на спинку кресла, пододвиньте монитор поудобнее, сейчас будет краткий магически метафоризированный рассказ о редакторах кода. А потом, о новом явлении, или даже тектоническом сдвиге, в этом древнем мире. О редакторе Helix, глазами старого Vim-овода.

Читать далее
Total votes 21: ↑20 and ↓1+24
Comments46

FP на Scala: Invariant Functor

Reading time7 min
Views12K
В статье рассматривается
  • Как такая абстракция теории категорий как инвариантный функтор (Invariant Functor), который иногда называют экпоненциальным функтором (Exponential Functor), выражается на Scala.
  • Два правила (Identity Law, Composition Law), которым доложен следовать каждый инвариантный функтор.
  • Приведен пример инвариантного функтора с состоянием (Value Holder)
  • Приведен пример инвариантного функтора-отношения между элементами множества (полугруппа)

Публикация является продолжением FP на Scala: Что такое функтор? в которой были рассмотрены следующие вопросы
  • Какая имеется связь между теорией категорий, Haskell и Scala.
  • Что такое ковариантный функтор.
  • Что такое контравариантный функтор.

Содержание

Читать дальше →
Total votes 17: ↑17 and ↓0+17
Comments0

Когда целый день программировал на Zig: впечатления Rust-энтузиаста

Reading time7 min
Views15K
image

Я — большой фанат Rust, так как в этом языке предоставляется отличное инструментальное оснащение, и, когда я пишу на этом языке, я могу быть вполне уверен, что этот код будет работать надёжно. Но иногда Rust ненавистен. Чтобы написать код на Rust, требуется немало времени, а некоторые вещи реализовать достаточно сложно (да, async, это я о тебе).

В прошлом году мне не раз доводилось слышать о новом низкоуровневом языке программирования, он называется Zig. И вот, наконец, я нашёл время, чтобы опробовать его на практике. В этой статье я хочу рассказать, что мне понравилось и не понравилось Zig (который я рассматривал с точки зрения Rust-программиста и тех высоких стандартов, к которым я привык в Rust).
Читать дальше →
Total votes 24: ↑21 and ↓3+27
Comments27

Памяти Кевина Митника — хакера, ломавшего ФБР, АНБ и Кремниевую долину. Часть 1: бурная юность тёмного гения

Level of difficultyEasy
Reading time9 min
Views45K

16 июля 2023 года в возрасте 59 лет наш мир покинул Кевин Митник — один из самых знаменитых и архетипичных хакеров в истории. В середине 90-х он считался самым разыскиваемым хакером в мире, и было за что: Митник лихо взламывал сети корпораций и правительства США, обходил большинство систем безопасности, прослушивал агентов ФБР, добывал тонны конфиденциальной информации и данных о банковских картах, включая счета топов Кремниевой долины, — вот только денег, как считается, он никогда не воровал. Ну а закрыв проблемы с американским законом, Кевин Митник превратился в одного из лучших специалистов по кибербезопасности. Вспомним о человеке, на основе которого во многом и сформировался классический образ хакера 90-х годов.
Читать дальше →
Total votes 60: ↑56 and ↓4+74
Comments34

SOLIDно знать…

Level of difficultyEasy
Reading time7 min
Views6.3K

SOLID. Принципы и Паттерны. Паттерны и Принципы.
Что может быть ближе друг другу чем эти субстанции ?! Эта статья проведет параллель между ними, она не собирается объяснить суть каждой, вместе или отдельно, а желает показать как одна другой помогает.
То есть, статья в некотором роде перекрестный бой между паттернами и SOLID принципами.

Читать далее
Total votes 15: ↑8 and ↓7+5
Comments21

Константность в C++

Level of difficultyMedium
Reading time31 min
Views15K


Продолжаем серию «C++, копаем вглубь». Цель этой серии — рассказать максимально подробно о разных особенностях языка, возможно довольно специальных. Это седьмая статья из серии, список предыдущих статей приведен в конце в разделе 10. Серия ориентирована на программистов, имеющих определенный опыт работы на C++. Данная статья посвящена концепции константности в C++.


Переменные являются основой любого языка программирования. Если значение переменной нельзя изменить после инициализации, то такие переменные называются неизменяемыми (immutable) переменными или константными переменными или просто константами. Константные переменные в том или ином виде поддерживаются во всех языках программирования и играют в них важную роль. Такие переменные помогают компилятору оптимизировать код, улучшают читаемость и надежность кода, позволяют выявлять бОльшее количество ошибок на стадии компиляции. Константы помогают решать проблемы, связанные с многопоточным доступом к переменным. Использование константных переменных влияет на проектные решения в объектно-ориентированном программировании, а функциональное программирование изначально исходит из неизменяемости используемых переменных.


В C++ концепции константности уделяется значительное место. Для переменных используется два вида константности, имеются ссылки и указатели на константу, константные функции-члены, константные итераторы. Попробуем разобраться во всех этих понятиях.

Читать дальше →
Total votes 16: ↑16 and ↓0+16
Comments24

Я программист, и я тупой

Reading time2 min
Views78K
Я пишу код за деньги уже пятнадцать лет. Пробовал себя и в других ролях – управление продуктом, аналитика, тестирование, – но как-то не пошло. И с течением лет пришел к осознанию, что я не очень умный. К сожалению.

Никаких особых медицинских диагнозов мне не ставили, но мои умственные способности крайне ограниченны. Даже те задачи на Leetcode, которые попроще, вызывают у меня затруднения. Когда я читаю о самом обычном алгоритме консенсуса, у меня кипит мозг. У меня плохо получается отслеживать сложные зависимости в кодовой базе. Я не способен освоить модные языки вроде Rust (пытался, но по правде сказать, для меня это чересчур). Я терпеть не могу микросервисы и современный фронтенд: там слишком много движущихся частей, и уследить за всеми я не в состоянии.

Как же я выхожу из положения?
Читать дальше →
Total votes 297: ↑283 and ↓14+324
Comments334

Театр образования

Level of difficultyEasy
Reading time6 min
Views3.8K

А не пора ли нам ещё раз обсудить, что раньше было лучше, а нынче всё не так, всё не то и вообще молодёжь какая-то не та?

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

А может лучше сразу в комментарии?
Total votes 28: ↑26 and ↓2+30
Comments31

Обобщённые типы. Часть 1/3. Полиморфные типы высокого рода

Level of difficultyMedium
Reading time37 min
Views6.3K

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

Читать первую часть обзора
Total votes 16: ↑16 and ↓0+18
Comments5

Обобщённые типы. Часть 2/3. Классы типов и контейнеры

Level of difficultyMedium
Reading time38 min
Views2.4K

Это вторая часть обзора обобщённых типов, в которой мы расскажем о классах типов и типах-контейнерах.

Читать вторую часть обзора
Total votes 6: ↑6 and ↓0+7
Comments0

Обобщённые типы. Часть 3/3. Применение контейнерных типов

Level of difficultyHard
Reading time46 min
Views3K

В последней третьей части обзора продемонстрировано, как на основе обобщённых типов-контейнеров реализуются различные ФП-техники “чистого” построения “эффективных” программ. В заключении будет отмечена роль теории категорий в обосновании важности абстракций, построенных над обобщёнными типами.

Читать третью часть обзора
Total votes 6: ↑6 and ↓0+7
Comments3
1
23 ...

Information

Rating
Does not participate
Location
Тольятти, Самарская обл., Россия
Date of birth
Registered
Activity

Specialization

Backend Developer
Middle
Git
Java
Scala
SQL
Linux
OOP
Database
REST
Hibernate
JDBC