Как стать автором
Обновить
-17
0

Пользователь

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

Получил доступ к Dalle-2. Вы не поверите, что может нарисовать машина… Дизайнеры больше не нужны

Время на прочтение4 мин
Количество просмотров149K
Текст генерации: furry monster with green eyes looking at us, the word «habrahabr» in the background, digital art, blue background, 3d

Привет, чемпион!

Недавно мне посчастливилось стать обладателем доступа к API Dalle-2. Если ты ещё не слышал про Dalle, то это такая CLIP-архитектура, обученная на огромном корпусе пар текст-изображение. Иначе говоря — она умеет генерировать очень качественные изображения из текста. Отличить результаты генерации от рисунков человека иногда просто невозможно! Это одновременно впечатляет и в то же время — немного шокирует.

По сравнению с предыдущей версией — DALL-E 2 умеет генерировать изображения в более высоком разрешении (1024×1024 пикселей, что в 16 раз превышает разрешение в предыдущей версии модели) да ещё и намного быстрее. Более того, DALL-E 2 позволяет редактировать уже существующие изображения.

Нет больше терпения ждать, давайте же опробуем её!
Читать дальше →
Всего голосов 234: ↑227 и ↓7+220
Комментарии817

Дефицита нет, платить не нужно

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

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

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

Я берусь доказать, что основной тезис ошибочен. В РФ нет дефицита кадров. 

Читать далее
Всего голосов 322: ↑289 и ↓33+256
Комментарии472

Яндекс.Практикум: самый подробный отзыв

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

Хочу поделиться личным опытом (об/м)учения в Яндекс.Практикуме на курсе "Веб-разработчик", и почему, вернувшись на год назад в прошлое, я бы никогда не стал там учиться даже за бесплатно.

Для начала расскажу о причинах, по которым я решил войти в IT (спойлер: и в итоге всё-таки вполз), и почему я выбрал именно Яндекс.Практикум.

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

1) прибыльную (на комбинате я получал 24 тысячи в месяц);

2) перспективную (в IT действует меритократия, а в строительной сфере без связей, которых у меня нет, далеко на уедешь и высоко не взлетишь);

3) интересную и интеллектуальную. 

У меня есть старший брат – веб-разработчик с 10-летним стажем, за плечами которого опыт разработки в Яндексе, TopTal и нынешняя работа senior-программистом в Amazon. Я специально так подробно рассказываю о своём брате, т. к. далее эта информация понадобится для понимания контекста.

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

Почему я выбрал именно веб? Потому что по личному опыту брата и его друзей-айтишников порог входа в веб ниже, чем в других IT-профессиях. И мне, как визуалу, важно видеть результаты своего труда (чертежи, запроектированные и построенные здания). И как раз фронтенд-разработка предоставляет эту возможность.

Читать далее
Всего голосов 225: ↑209 и ↓16+193
Комментарии473

Как заменить себя скриптом. Часть 1. Режимы коротких замыканий в электросети с применением OpenCL

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


Длительная однообразная работа неизбежно вызывает приступы автоматизации. На этот раз предпримем попытку автоматизировать настройку устройств защиты электросетей напряжением 6 — 35 кВ.

Самозародившаяся задача требует расчёта коротких замыканий, а поскольку расчётов таких предвидится немало, выполнять их будем с помощью OpenCL, для должной утилизации имеющихся вычислительных мощностей.
Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии17

Реализация Smart Pointers в Delphi, и еще немного

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

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

Для начала приведу пример двух процедур: первая классическая, вторая использует новые типы. Дальше рассмотрим как это реализовано.

Читать далее
Всего голосов 22: ↑22 и ↓0+22
Комментарии34

Подробное руководство по инверсии зависимостей. Часть 1

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

Инверсия зависимостей - один из принципов SOLID, который лежит в основе построения гексагональной архитектуры приложения. Существует множество статей, которые раскрывают суть принципа и объясняют как его применять. И, возможно, читатель уже знаком с ними. Но в рамках данной статьи будет продемонстрирован подробный разбор "тактических" приемов для успешного использования инверсии зависимостей и, возможно, в этом смысле даже искушенный читатель сможет найти для себя что-то новое. Примеры представлены на языке программирования Java с соответствующим окружением, но при этом для чтения достаточно понимания похожих языков программирования.

Читать далее
Всего голосов 11: ↑9 и ↓2+7
Комментарии134

Книга «Классические задачи Computer Science на языке Java»

Время на прочтение10 мин
Количество просмотров8.4K
image Привет, Хаброжители! Cтолкнулись с «неразрешимой» проблемой при разработке программного обеспечения? Скорее всего, кто-то уже справился с этой задачей, и вы можете не ломать голову. Дэвид Копец собрал наиболее полезные готовые решения, принципы и алгоритмы. «Классические задачи Computer Science на языке Java» — это мастер-класс по программированию, содержащий 55 практических примеров, затрагивающих самые актуальные темы: базовые алгоритмы, ограничения, искусственный интеллект и многое другое.

В этой книге:

— Рекурсия, мемоизация и битовые манипуляции.
— Поисковые, графовые и генетические алгоритмы.
— Проблемы ограничений.
— Кластеризация методом k-среднего, нейронные сети и состязательный поиск.
Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии7

Преобразование dxf в svg

Время на прочтение6 мин
Количество просмотров4.4K
Речь в статье пойдёт о программе на С/С++, написанной под Ubuntu, редактор — CodeBlocks. dxf — открытый формат, спецификация которого написана компанией Autodesk. Предполагаемое назначение — отображение dxf чертежей в веб проектах. Да, можно экспортировать из кое-каких редакторов, например, Librecad под Ubuntu или Acme CAD Converter под Windows, но это не во всех случаях может подходить, например, если нужна кастомизация.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии6

Почему твоя мама всё ещё не прогает?

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

Случай с бомжом

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

Обычно вместо денег я даю попрошайкам-мужчинам телефон отдела кадров одной курьерской компании, которая постоянно нуждается в сотрудниках. Но у него не было ног… Тогда я подумал: «Чувак, у тебя полным полно времени. Работа за компом — лучшее, что может случиться в твоей жизни. Купон со скидкой на курс по PHP — вот, что должны были положить тебе на койку туда, где раньше были ноги, когда ты очнулся после ампутации».

Я решил предложить ему изучить программирование. В его положении он должен был быть чертовски мотивирован. Но получится ли у него?

Читать далее
Всего голосов 304: ↑276 и ↓28+248
Комментарии468

Опыт хранения IP-адресов в PostgreSQL

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

Не раз наша команда сталкивались с задачей, связанной с хранением и использованием IP-адресов в базе данных. Предположим, что есть типичная задача: необходимо парсить огромное количество диапазонов адресов (~300k) с известного ресурса, а далее определять страну по IP-адресу клиента. Кажется, ничего особенного. Это довольно просто решается любым ниже описанным способом при малых нагрузках. Но если у нас тысячи пользователей или наш сервис является прокси перед всеми остальными? В этом случае не хочется быть бутылочным горлышком и приходится бороться за каждую долю секунды.

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии10

Заменят ли роботы программистов?

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

С каждым годом выходит всё больше инструментов, которые помогают автоматизировать часть рутинной работы программиста, — генераторы тестов, автодополнение кода, генераторы шаблонного кода. Мы воспринимаем как само собой разумеющееся, что условная IntelliJ IDEA предлагает нам после введения буквы метод, который мы и хотели.


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



Исследование этой проблемы провёл Тагир Валеев lany из JetBrains в докладе на Joker 2020. И результаты вышли весьма неоднозначными. Подробности — под катом, повествование далее будет от лица спикера.

Всего голосов 59: ↑56 и ↓3+53
Комментарии68

Особенности портирования сложного модульного ПО написанного на Delphi под ОС Linux

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

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

Меня зовут Тимофеев Константин, мне 40 лет и я являюсь ведущим программистом компании 3В Сервис в подразделении, занимающемся системами автоматизации динамических расчётов (САДР).

Данная статья посвящена разбору подводных камней при портировании разрабатываемого нами программного комплекса на операционные системы семейства Linux.

Читать далее
Всего голосов 94: ↑92 и ↓2+90
Комментарии165

Собеседование Backend-Java-разработчика: вопросы и где искать ответы. Часть 1

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

Когда-то я проходил серию собеседований на Backend-Java-разработчика и записывал вопросы себе на будущее, чтобы потом можно было пробежаться и освежить память. Подумалось, что, вероятно, данный сборник будет полезен не только мне, поэтому сдул с него пыль, набросал ответов и делюсь с сообществом. На оригинальность и исключительность не претендую: подобные статьи уже были и на Хабре, и много где ещё — в конце (во второй части) приведу список ссылок, чтобы шпаргалка была максимально полной.


Точно установить сложность всех вопросов не берусь — на разном уровне их потребуется раскрыть с различной степенью подробности. Я написал ответы где-то на плюс-минус middle, щедро приправив ссылками для дальнейших изысканий. На самые популярные вопросы сразу перенаправляю в источники с готовыми ответами. Заодно посмотрим по ссылкам в статье, насколько Хабр может помочь в подготовке к собесам.


Текста получилось много, поэтому пришлось разбить на две части. В первой поговорим про Java и Spring, а обо всём остальном — во второй. Вторая часть тут

Погнали
Всего голосов 17: ↑15 и ↓2+13
Комментарии7

Собеседование Backend-Java-разработчика: вопросы и где искать ответы. Часть 2

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

Публикую продолжение сборника вопросов-ответов с собеседований на Backend-Java-разработчика. В первой части мы прошлись по Java и Spring. А в этой поговрим о Hibernate, базах данных, паттернах и практиках разработки, об одной популярной библиотеке, поддержке и сопровождении наших приложений, а также посмотрим на альтернативные шпаргалки и подведём итоги.

Потопали
Всего голосов 21: ↑18 и ↓3+15
Комментарии14

Остановитесь!!! Вам не нужны микросервисы

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

Идет 2020 год. Если вам нужно пояснение, что такое микросервисы — лучше потратьте свое драгоценное время на что-то другое. Но если вы впечатлены историями успеха о микросервисах и хотите нырнуть в "панацею" с головой — продолжайте читать. Прошу прощения, будет немного длинновато (не очень, прим. переводчика).

Читать дальше →
Всего голосов 97: ↑92 и ↓5+87
Комментарии249

Понятнее о S.O.L.I.D

Время на прочтение8 мин
Количество просмотров60K
Большинство разработчиков с разговорами о принципах архитектурного дизайна, да и принципах чистой архитектуры вообще, обычно сталкивается разве что на очередном собеседовании. А зря. Мне приходилось работать с командами, которые ничего не слышали о S.O.L.I.D, и команды эти пролетали по срокам разработки на многие месяцы. Другие же команды, которые следовали принципам дизайна и тратили очень много времени на буквоедство, соблюдение принципов чистой архитектуры, код-ревью и написание тестов, в результате значительно экономили время Заказчика, писали лёгкий, чистый, удобочитаемый код, и, самое главное, получали от этого кайф.

Сегодня мы поговорим о том, как следовать принципам S.O.L.I.D и получать от этого удовольствие.



Что такое S.O.L.I.D? Погуглите — и получите 5 принципов, которые в 90% случаев описываются очень скупо. Скупость эта потом выливается в непонимание и долгие споры. Я же предлагаю вернуться к одному из признанных источников и хотя бы на время закрыть этот вопрос.

Источником принципов S.O.L.I.D принято считать книгу Роберта Мартина «Чистая архитектура». Если у Вас есть время прочесть книгу, лучше отложите эту статью и почитайте книгу. Если времени у Вас нет, а завтра собес — велком.
Читать дальше →
Всего голосов 26: ↑18 и ↓8+10
Комментарии37

DI из ада

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

Все мы любим Spring. Или не любим. Но по крайней мере знаем. Если вы Java-программист, то вероятно используете этот фреймворк каждый день в своей работе. Spring — это огромная платформа, которая предоставляет большой функционал. Тем не менее во главе угла стоят две вещи — это DI (Dependency Injection) и IoC (Inversion of Control). Концепции, которые были призваны, чтобы сделать наш код более читаемым и поддерживаемым. Но к несчастью, все оказалось не так радужно. Именно это мы сегодня и обсудим.


Читать дальше →
Всего голосов 18: ↑13 и ↓5+8
Комментарии42

Тёмная сторона работы в Яндекс.Маркете

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

Я уволился из Яндекс.Маркета, отработав там почти 15 месяцев. Сегодня я хочу поделиться своим взглядом на работу в Яндекс.Маркете и рассказать о причинах ухода.


Disclaimer: эта статья бесполезна для тех, кто работает или работал в Маркете; она предназначена в первую очередь для тех, кто лишь планирует туда пойти. А ещё Яндекс.Маркет – это не Яндекс, но очень близко. Поэтому всё, о чём я буду говорить, в первую очередь относится к Маркету, но значительная часть из этого точно так же может быть применена к большому Яндексу.


Я ни в коем случае не претендую на объективность, это моё личное мнение.


Я никого не отговариваю от трудоустройства в Яндекс. Наоборот, это отличный вызов для любого разработчика и, если вы в состоянии попасть в Компанию, то вам однозначно стоит попробовать.


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


Читать дальше →
Всего голосов 528: ↑497 и ↓31+466
Комментарии806

Учебник по JavaFX: начало работы

Время на прочтение4 мин
Количество просмотров96K
Привет, Хабр! Представляю вашему вниманию перевод статьи «JavaFX Tutorial: Getting started» автора Vojtech Ruzicka.

Как настроить и начать работать с JavaFX, с помощью Maven, Gradle или JavaFX SDK.

Все посты в серии JavaFX:

  1. Учебник по JavaFX: начало работы
  2. Учебник по JavaFX: Привет, мир!
  3. Учебник по JavaFX: FXML и SceneBuilder
  4. Учебник по JavaFX: основные макеты
  5. Учебник по JavaFX: расширенные макеты
  6. Учебник по JavaFX: CSS стилизация
  7. JavaFX Weaver: интеграция JavaFX и Spring Boot приложения
Читать дальше →
Всего голосов 12: ↑9 и ↓3+6
Комментарии26

Spring MVC: создание веб-сайтов и RESTful сервисов

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

Вы можете использовать эту статью, чтобы понять, как использовать Spring MVC для создания веб-сайтов или RESTful сервисов. А также получить обзор часто задаваемых вопросов, охватывающих наиболее распространенные задачи Spring MVC.


Примечание: Статья ~ 7500 слов, вероятно, не стоит читать ее на мобильном устройстве. Добавьте ее в закладки и вернитесь позже.


Содержание


Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии4

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность