Несколько раз от коллег звучал вопрос о том, что не понятно, зачем вообще нужны mixin'ы (примеси) в языке Dart. Я решил посмотреть, что есть на просторах Интернета по этому вопросу. К великому огорчению в статьях, которые удалось найти в основном говорится о том, как использовать примеси, но не дается разъяснений зачем они нужны, в каких случаях их использование более предпочтительно, чем обычное наследование или реализация интерфейсов. Эта статья является попыткой восполнить этот пробел.
Системотехник
Функциональный Powershell с классами — не оксюморон, я гарантирую это
Привет, Хабр! Представляю вашему вниманию перевод статьи "Functional PowerShell with Classes.
I promise it’s not an oxymoron" автора Christopher Kuech.
Объектно-ориентированная и функциональная парадигмы программирования могут казаться не в ладах друг с другом, но обе в равной мере поддерживаются в Powershell. Практически все программные языки, функциональные и нет, имеют средства расширенного связывания имён и значений; Классы, подобно struct-ам и record-ам, это всего лишь один подход. Если мы ограничим использование Классов связыванием имён и значений и станем избегать таких "тяжёлых" объектно-ориентированных программных концепций, как наследование, полиморфизм, или изменяемость (mutability), мы сможем использовать их преимущества, не усложняя наш код. Далее, добавляя неизменяемые (immutable) методы преобразования типов, мы можем обогатить Классами наш функциональный код.
Магия кастов
Касты одна из самых мощных фич в Powershell. Когда вы подвергаете значение касту, вы полагаетесь на добавляемую средой в ваше приложение возможность неявных инициализации и валидации. Например, простой каст строки в [xml] прогонит её через код парсера и сгенерирует полное дерево xml. Мы можем в своём коде использовать Классы с той же целью.
Как с нуля написать приложение? С чего начать новичку? Flutter / Программирование
1. Выбрать тему приложения
Не нужно долгих мук выбора, просто начните делать то, что вам пригодилось бы. Лучше что-то простое. Нужно понимать, что мы пока не стремимся быть Биллом Гейтсом. Это наше первое приложение, наш первый шаг.
Я уже как лет 7-8 болею спортом, потому идеей моего первого приложения было — база тренировок для поддержания себя в тонусе, с упражнениями для спины, рук, попы, ну и в целом, чтобы не скучно было.
2. На каком языке писать?
Я перепробовала несколько разных языков и разных SDK, мой выбор пал на Flutter и, собственно, язык на котором он обслуживается — dart, потому что:
- Dart — легкий в изучении язык. Вам не составит труда ознакомиться с ним, в интернете полно информации и уроков. Скорость выполнения операций на нем сравнима с Objective-C, Swift, Kotlin, Java, а с последним у них очень много общего.
- Flutter может компилировать и под Android, и под iOS. (Еще может в Fuchsia, но нам оно пока вряд ли нужно).
- Удобство в работе с виджетами, гибкость и простота в использовании.
Виджеты бывают двух типов: StatefulWidget и StatelessWidget.
Грубо говоря, те, которым можно задать состояние и те, кому нет.
Как программисту переехать в Нидерланды

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

Книжная абстиненция
Вы читаете книги по саморазвитию, бизнесу или повышению эффективности? Нет? Прекрасно. И не начинайте.
Всё-таки читаете? Не делайте того, что в этих книгах предлагается. Пожалуйста. Иначе станете наркоманом. Как я.
Крыша поехала: как понять, что пора к психотерапевту, и как его найти
Многие в комментариях делились своими внутренними переживаниями и задавались вопросом, к кому им стоит обратиться. Я подробно изучила тему и написала для вас небольшой справочный материал о поиске психотерапевта. Надеюсь, это будет полезно.

Как я начал уметь в маркетинг

Всем привет! Я хотел бы рассказать о своем прошлом – замечательном проекте Withme, но «без купюр».
В публикациях здесь я уже пытался рассказать о всех событиях в хронологическом порядке, однако многие факты были “немного” спрятаны под смешными «факапами», безудержным весельем от наших бессонных ночей и призовыми местами на хакатонах.
Сейчас, смотря на всю эту ситуацию со стороны, я понимаю, что могу рассказать о странн(ш)ых вещах, которые встретились мне во время работы над моим первым проектом в жизни. Я считаю, что своим небольшим рассказом я могу помочь молодым энтузиастам, начинающим свой путь разработчикам мобильных приложений в России или только мечтающим об этом. Излагать буду в формате небольшой истории (даже с «частями-главами»), с попыткой сохранить хронологию. Ну, поехали.
Сколько стоит App построить
Проект по разработке приложения стоит столько, сколько он стоит. И в эпоху глобализации и Интернета, вы не можете получить кастомное ПО по стоимости значительно ниже, чем оно стоит по рынку.

Простой пример для наглядности. У меня бывшая одноклассница выращивает курей на домашней ферме. Ей это очень нравится и она в этом спец. И вот я у нее интересуюсь:
— Н., а чего так курятина подорожала в последнее время?
— Так корма подорожали, вот и курятина подорожала. А поставщики кормов мотивируют это подорожанием топлива и электроэнергии.
Это всем знакомо, и это все понимают, да. Но когда речь заходит о софтверной продукции, то понималка у многих людей почему-то отказывает. Вот их мотивация:
— Ну, тебе же это на 5 минут работы! Тут же все очень просто!
Ну, так и делайте сами, если это настолько просто.
Почему карма на Хабре — это хорошо?
Начнем с того, что Хабр это (около)технический ресурс, позиционирующий себя как «вежливый». Оскорбления и безграмотность здесь не приветствуются, и это указано в правилах сайта. Как следствие, под запретом находится политика — из неё очень легко перейти на личности, в невежливой форме.
Основа основ Хабра — это посты. Под многими встречаются ценные комментарии, иногда даже ценнее поста. Время «активной» жизни большинства постов — два-три дня. Затем обсуждение затихает, и пост открывают либо из закладок, либо по выдаче гугла.
У авторов должна быть мотивация писать посты. Вариантов несколько.
- Деньги. Это редакция, возможно, потоковые переводчики.
- Проф-заказ. В основном, статьи в корпоративных блогах.
- Личность. Хочется поделиться чем-то важным (или интересным), структурировать собственные знания, показать себя перед условным будущим работодателем.
Джинн
Незнакомец
— Погоди, ты всерьез считаешь, что генетика ничего не дает?
— Нет, конечно. Ну сам по суди. Ты помнишь наш класс двадцать лет назад. Кому-то легче давалась история, кому-то физика. Кто-то побеждал на олимпиадах, кто-то нет. По твоей логике призеры все поголовно должны иметь более крутую генетическую платформу, хотя это не так.
— Однако практически все победители с классом С как минимум, если мне не изменяет память
— Это мы вряд ли проверим. К тому же В-шек у нас не было, насколько я помню. А D-шки были в основном не из самых благополучных семей, так что тут генетика имеет опосредованное значение.
— Да, ты прав. Проверить сложно. Однако разве ты не замечал, что простые работяги с вон того завода за окном говорят так, словно воспроизводят цепь маркова: взял N слов, по ним просто по памяти вывел M слов. Например, после фразы "союз советских" они продолжат автоматом "социалистических республик", так как это наиболее вероятное продолжение.
— Неудачный пример, если честно.
— Да, согласен, надо повспоминать еще…
— К тому же твои слова отдают некой ноткой фашизма. Ты взял и огульно обозвал целую группу людей "недоразвитыми". Хотя я частично с тобой согласен, я сам замечал подобное раньше.
— Вот-вот!
— Скорее речь некоторых людей похожа на ответы Джона Сёрла из эксперимента с китайской комнатой.
— Это тот, который не знает иероглифов, однако отвечает по заданному алгоритму? Ну по сути он выдает не осознавая ни вопроса, ни даже своего ответа.
— Да-да, тот самый. Однако я и за собой иногда замечаю подобное. Потому и считаю, что генетика не так важна. Скорее уж человека определяет характер, чем некая генетическая платформа
Тестовые задания на собеседовании разработчика — есть ли в них смысл?
Google закручивает гайки
Кроме этого, их магазин приложений Google Play Store (“Маркет”, короче говоря) уже так же перенасыщен приложениями, и старыми и новыми на любые темы. Найти что-то нужное все сложнее и сложнее, вновь созданное приложение если просто опубликовать там, и не заниматься рекламой и раскруткой – практически не найдет своих пользователей.
И Google также все активнее “чистит” свой Маркет.
Книга «Kotlin. Программирование для профессионалов»

Неважно, опытный вы разработчик, который хочет выйти за рамки Java, или изучаете первый язык программирования. Джош и Дэвид проведут вас от основных принципов к расширенному использованию Kotlin, чтобы вы могли создавать надежные и эффективные приложения.
Как я ушел из IT в психологию

ППКС. Источник: t.me/smallpharm/559
Disclaimer: я ни в коем случае не претендую на универсальность представленных в этом посте решений, никого не призываю повторять описанный здесь путь — уж очень он специфический, я просто делюсь своей личной историей, вспоминая о том, что когда-то давно я искал подобный материал, а его не было. Возможно, для кого-то он будет актуален и сейчас.
И да, под катом опять очень много букв.
Дзен изолированных компонентов в Android-архитектуре

Несколько лет назад мы в Badoo начали использовать MVI-подход к Android-разработке. Он был призван упростить сложную кодовую базу и избежать проблемы некорректных состояний: в простых сценариях это легко, но чем сложнее система, тем сложнее поддерживать её в корректном виде и тем проще пропустить баг.
В Badoo все приложения асинхронны — не только из-за обширного функционала, доступного пользователю через UI, но и из-за возможности односторонней отправки данных сервером. При использовании старого подхода в нашем чат-модуле нам попалось несколько странных трудновоспроизводимых багов, на устранение которых пришлось потратить довольно много времени.
Наш коллега Zsolt Kocsi (Medium, Twitter) из лондонского офиса рассказал, каким образом с помощью MVI мы строим независимые компоненты, которые легко переиспользовать, какие преимущества мы получаем и с какими недостатками нам пришлось столкнуться при использовании этого подхода.
Что мне не нравится в Windows 10
Сразу отвечу на вопрос «а почему бы не продолжать использовать Windows 7, если что-то не нравится в 10?»
Моя работа связана с технической поддержкой, в том числе и компьютеров с десятками. Потому выгодней жить на актуальной версии ОС, а не отмазываться от заданий под соусом «я этой вашей десяткой не пользуюсь». На семёрке я жил, я её помню-знаю, с тех времён там ничего не изменилось. А вот десятка постоянно меняется, чуть задержишься с обновлениями — и настройки какие-то переползут в другое место, логика поведения изменится и т.п. Потому, чтобы не отстать от жизни, в повседневном использовании у меня именно Windows 10.

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

Как относятся к сотрудникам и организуют рабочий процесс в крупных IT-компаниях
Я бывший студент МИФИ, в этом году закончил бакалавриат ПМИ. На третьем курсе активно искал возможности стажировки/работы, в общем, практического опыта, о чём и пойдёт речь. Неопытность, жулики, взаимовыручка.
Комфортный офис — помогает работать или мешает и отвлекает? Ответят Sidenis, Alternativa Games и FunBox

Есть люди, которые в гневе закрывают вакансию при виде фразы «у нас есть печеньки». Есть люди, которые отказываются от новой дико интересной работы с высокой зарплатой, потому что в офисе не будет бесплатных обедов. Есть люди, которые увольняются, потому что устали сидеть в опенспейсе.
Это превращается в обыденность, когда ИТ-компании вкладывают миллионы и миллионы, чтобы создать комфортные условия труда. Комфорт входит в привычку, когда рабочий день сотрудников состоит из чемпионата по кикеру утром, обеда в офисной столовой, чтения книги в релакс-руме и вечерних настолок с коллегами.
Мы обсудили эти вопросы с сотрудниками компаний Sidenis, Alternativa Games и FunBox, которые получили самую высокую оценку по критерию «комфортные условия» в нашем рейтинге лучших работодателей в ИТ. Они описали свои офисы, сравнили их с самыми ужасными воспоминаниями и порассуждали о роли комфорта в рабочих буднях.
Информация
- В рейтинге
- 3 817-й
- Откуда
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Дата рождения
- Зарегистрирован
- Активность