WEB DEV IN my head!
90 subscribers
62 photos
8 videos
2 files
69 links
Записки по веб разработке и около IY.
Download Telegram
Постоянно слышу мнение, что PHP устарел и вобще не айс. Но мне нравится этот язык и куда он развивается. Сейчас, это полностью объектно-ориентированный язык, поддерживающий написание строго типизированного и качественного кода, который вобрал в себя лучшие практики.
https://teletype.in/@henryh/o-php
Media is too big
VIEW IN TELEGRAM
8-летняя девочка программирует своего чат бота при помощи нейросетей. И это впечатляет! Даже если видео преукрашено, возможности поражают. Такие вещи очень облегчают создание простых вещей, для которых ранее нужно было напрягать взрослых дядек)
Полезный пакет, надо будет попробовать:
Проверка переменных окружения во всех файлах .env

В мире, полном хаоса и неопределённости, существует пакет — Laravel Env Keys Checker, который, проверяет наличие ключей во всех .env файлах. Кто бы мог подумать, что в этой бездне бессмыслицы существует что-то, что может хоть как-то облегчить твои страдания.

https://github.com/msamgan/laravel-env-keys-checker

Представь: ты отчаянно пытаешься добавить новое значение в свой локальный .env файл. И тут возникает вопрос: а есть ли оно в .env.example? Или другой разработчик, словно глупец, обновил .env.example.

Функции этого пакета, возможно, не столь уж и значительны, но вот они:

- Проверяет наличие всех ключей во всех .env файлах, чтобы ты не чувствовал себя полным неудачником.

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

- Синхронизирует ключи по строкам во всех .env файлах, как будто это хоть как-то поможет.
| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
| Don't Push To Production On Friday |
|_________________|
\ (•◡•) /
\ /
——
| |
|_ |_
This media is not supported in your browser
VIEW IN TELEGRAM
Как забить на синдром самозванца
This media is not supported in your browser
VIEW IN TELEGRAM
Когда тестировщик проводит проверку того, что создал разработчик
Forwarded from CardReview
Очень интересное и короткое выступление Кирилла Меньшова. Цитирую близко к оригиналу:

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

В результате этого исторического момента наши банки снова окажутся впереди планеты всей просто потому что всем остальным это не надо, а мы вынуждены импортозамещаясь строить новый ИТландшафт на самых современных доступных технология: микросервисы, постгре....
Добавлены новые функции mb_trim(), mb_ltrim(), mb_rtrim(), mb_ucfirst(), mb_lcfirst(), bcceil(), bcdivmod(), bcfloor() и bcround(), pcntl_getcpu(), pcntl_getcpuaffinity(), pcntl_getqos_class(), pcntl_setns(), pcntl_waitid(), http_get_last_response_headers(), http_clear_last_response_headers(), fpow()

Операции exit и die теперь можно вызывать в форме полноценных функций, которые допускается передавать в качестве аргумента в другие функции. Ранее возможности функций exit() и die() были сильно ограничены, так как они представляли собой обвязки над ключевыми словами exit и die.

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

Объявлено устаревшим поведение, при котором для параметров функций с присвоенным по умолчанию значением null автоматически разрешалось присвоение значений null. Для того, чтобы подобные параметры могли принимать значения null теперь требуется явное указание префикса "?". Например, вместо "function save(Book $book = null) {}" следует указывать "function save(?Book $book = null) {}".

Объявлены устаревшими константы E_STRICT, MYSQLI_REFRESH_*, функции mysqli_ping(), mysqli_kill(), mysqli_refresh(), методы mysqli::ping(), mysqli::kill(), mysqli::refresh(), возможность использования "_" в качестве имени класса, некоторые свойства DOMDocument и DOMEntity. Запрещено переопределение констант класса GMP, для которого теперь выставлено ключевое слово "final".


Источник: https://www.opennet.ru/opennews/art.shtml?num=62269
Доброе утро, мой дорогой программист/QA/devops/etc!
Тебе повезло и ты в моей команде!
А если ты работаешь у меня, то попал ты сюда одним из этих путей:
1) ты уже ранее работал со мной и показал себя не мудаком, поэтому я просто взял тебя без собеса.

2) я нашёл тебя через огромное комьюнити разрабов, девопсов тестеров и даже манагеров, сарафанное радио и 3 рукопожатия, а тот кто тебя рекомендовал, скорее всего адекват. Поэтому я провёл не сильно занудное интервью, и скорее оно касалось софтов и фита команде.

3) в оставшихся 10% случаев получилось так, что я самостоятельно нашел тебя на хх, LI и прочих площадках/дали сорсеры. Мы с командой действительно внимательно прочли твоё резюме, списались с тобой в телеге, договорились о встрече, поговорили по душам про твои реализованные проекты, ты показал что умеешь и чему хотел бы научиться, обсудили как мы пьем пиво по пятницам, поняли что фит есть и без лишней бюрократии взяли. Потому что ты подошел по софтам и 50%+ хардов, а остальные с удовольстием добьешь)

Утопия? Отнюдь! Это тот самый адвекатный подбор и наём.

Тесты, тупые вопросы про солид, алгоритмы, тупорылый систем дизайн, 10 этапов хуй пойми чего растянутое на месяц, воронки, просмотр всех, гороскопы, карты таро, цыгане, гадание на гавне и кони - всё это нахуй.

Но..
Кажется чего-то не хватает???
Неужели HRов и дефективных менеджеров? )))

Всё нормально!
Они в Неве - баланс соблюден!
Ах да, посчитаем, сколько денег мы сэкономили компании?
Веб-сервер Angie: на PHP-приложении echo “Hello World” показывает результат в 2 раза производительнее, чем nginx!

Если у вас есть высоконагруженный Hello World в production - возьмите на заметку 😉
Forwarded from I’m CTO, bitch
Вот уже полгода как у нас новый формат собеседований.

Приходит программист на собеседование. Спрашиваем: «Программировать умеешь?»

Если уверенно говорит, что умеет, сажаем его за комп: «Вот там кофе с печеньками, вот тут код, вот тут задачи в жире, бери любую и программируй. Пользуйся чем хочешь. Будут вопросы — пиши в телегу или приходи в курилку»

Никаких собеседований с лидом не проводим, резюме не смотрим, тупые вопросы друг другу не задаём.

Вечером кандидат показывает, что он сделал — если нам нравится, делаем офер. С командой он уже знакомится в процессе. Те, кто реально что-то умеют, в тот же вечер подписывают с нами трудовой договор. Большинство не выдерживают такого груза ответственности и уходят в первые 15 минут, а мы не тратим время команды на теоретиков вайтишников.

#найм
Forwarded from Пых (Валентин Удальцов)
Как стать программистом

Мне часто в последнее время задают этот вопрос. Вот мой алгоритм:

1. Задай простой вопрос: "Зачем мне это?"
Это основополагающий пункт. Приветствуются ответы вида "очень интересно", "хочу автоматизировать", "хочу написать игру", "хочу сделать сайт". Не советую тебе программировать, если ты подумал про деньги. В любом ремесле нужно искреннее желание, чтобы преодолеть первые несколько тысяч часов. Да и на работу будет труднее устроиться: джуну с горящими глазами я давал шанс, даже когда искал мидла, а пустобрёха-золотоискателя разворачивал даже если он отвечал на все вопросы.

2. Начинай кодить
Прямо после чтения этого поста. Абсолютно не важно, Windows у тебя или MacOS, два монитора или ни одного. Даже если ты читаешь этот пост в 3:07 с телефона, переходи на страницу курса "Введение в программирование" и приступай. Тебе не потребуются ни деньги, ни редактор. Нужно просто нажать кнопку "Начать". Это не реклама, Хекслет — одна из немногих школ, где есть честные бесплатные курсы для начинающих, которые можно пройти прямо в браузере. Идеально для тебя.

3. Продолжай кодить
Если ты не закончил курс из второго пункта, значит, тебе это не надо. Не программировать нормально. Так же нормально, как не управлять самолётом или не играть на трамбоне. Я бы даже сказал, что не программировать нормальнее, чем программировать (спроси мою жену). Но если ты прошёл вводный курс на одном дыхании, можешь взять ещё один, ориентационный, например, "Основы PHP", раз уж ты оказался на канале Пых. Подчёркиваю — тебе для этого не надо бросать учёбу или работу. У тебя и так куча времени, чтобы кодить: проезд, перемены, обеды, вечера, ночи, выходные. И самое главное! Тебе не нужно тратить ни копейки до самого трудоустройства. Я твёрдо уверен, что лучший старт в программировании — самостоятельный.

4. Продолжай кодить
Скорее всего, к этому моменту ты уже придумаешь идею для пет-проекта. Если нет, попробуй автоматизировать любой бытовой процесс, заменив парой скриптов приложение на телефоне. Это может быть список дел, вишлист, учёт финансов, календарь дней рождения, личная страничка в интернете. На этом этапе необходимо взять любую задачу и начать её решать самому, чтобы встретить первые сложности. Все ответы ты найдёшь в интернете: гугли, смотри видео, спрашивай в профильных чатах для джунов и, самое главное, — бесконечно пробуй и переделывай, пока не получится. Делай перерывы — часто ответ приходит в туалете (я серьёзно) или на прогулке.

5. Продолжай кодить
В течение месяца у тебя сформируется свой особенный мирок, в котором ты, к несчастью для близких, будешь пропадать всё чаще и чаще. В нём зародится желание написать тот самый идеальный код. Каждый день ты будешь постигать всё новые способы выразить намерение в программе и многократно переписывать одну и ту же функцию. Ты на верном пути: думай, гугли, рефактори, отлаживай, читай чужой код, проси обратную связь и так по кругу. Этот цикл со временем замедлится, но не прекратится никогда.

6. Не переставая кодить, выходи на рынок труда
Если ты учишься и необходимости в работе нет, лучше доучись или перейди на IT факультет. Я сам по образованию не программист, но рад, что не бросил универ — там меня научили думать. Если ты работаешь, не увольняйся, пока не возьмут, так как поиски могут занять месяцы. Не ври на собеседованиях: претендуй на джуна и реалистичную зарплату, но не соглашайся на что попало. Лучше выбрать проект по душе с достойной командой и низкой стартовой зарплатой, чем условную порностудию с высокомерными людьми и большим окладом. Неудачное собеседование — источник новых знаний, проработав задачи, иди на следующее.

7. Устроился — молодец, продолжай кодить!
Потому что это только начало. Тебе предстоит снова всё переосмыслить, а ещё научиться командной работе: ревью, тесты, легаси, оценка сроков и ответственность. Первый год не бойся переработок и инициативы. Чем больше ты дашь команде, тем больше она вернёт тебе в ответ, не наоборот. Они в тебя поверили — докажи, что не зря.

Удачи! Но будет абсолютно нормально, если ты станешь кем-то ещё.