Search
Write a publication
Pull to refresh
41
1.8
Иван @janson

Разработчик. PHP, JS, TypeScript.

Send message

10 игр для изучения JavaScript

Reading time3 min
Views42K

Мы рассматривали 10 удивительных игр для изучения CSS. А в этой статье мы сделаем то же самое для JavaScript. Изучать язык, играя в игры, очень весело, а для некоторых людей это отличный способ наглядного восприятия языка.

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

Читать далее

Как айтишник гигантские арбузы в средней полосе выращивал. Часть 1

Level of difficultyEasy
Reading time8 min
Views27K

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

Своеобразная “инструкцию для начинающих” получилась довольно объемной. Мы  разделили ее на две части: в первой автор разбирает теоретические основы, а во второй переходит к практике.

Осторожно, много фото!

Читать далее

Ностальгические игры: Fallout 2 (часть 1)

Level of difficultyEasy
Reading time8 min
Views21K

В 1997 году в свет вышла Fallout – игра, ставшая эталоном жанра. Она покорила умы и сердца миллионов геймеров по всему миру, которые не спали ночами, говоря себе «Ну еще один квест и точно на боковую!». Без крупной пиар кампании и поддержки от издателя (он не верил в успех проекта) продажи были скромны. Но это не помешало выпустить продолжение, в котором разработчики взяли всё лучшее от прародителя, доработали, расширили и сдобрили щепоткой юмора (в первой части его было существенно меньше). Обе игры со временем обрели культовый статус и стали примером того, как надо делать глубокие, интересные проекты с проработанной вселенной, увлекательным действом и миром, в котором почти каждый поступок имеет последствия.

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

Что ж, прежде чем перейти к обзору, я просто не могу не процитировать ставшую уже культовой фразу, сказанную устами Рона Перлмана: «War. War never changes...»

Читать далее

Как учёных притягивает дно и какие у них вопросики к моллюскам

Level of difficultyEasy
Reading time5 min
Views3.2K

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

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

Читать далее

Как мы принимаем решения, которые нам вредят

Level of difficultyEasy
Reading time7 min
Views8.4K

Помните Буратино, перед которым было две дороги — в школу или в кукольный театр? Он решил повернуть к развлечениям, и вскоре начались его несчастья. Закончилось всё хорошо, но это сказка, а в реальной жизни последствия неправильного решения могут быть более плачевными. Почему так происходит и можно ли этого избежать?

Читать далее

Как «эффективный менеджмент» создаёт катастрофы: изучаем причины техногенных аварий. Часть 1

Level of difficultyEasy
Reading time17 min
Views78K

Когда в бизнес приходят «эффективные менеджеры», стоит ждать беды. С программами урезания расходов, подкручиваниями KPI и прочими странными решениями бизнес может в краткой перспективе получить даже какую‑то выгоду для себя, но довольно быстро сталкивается с проблемами: сложно продать или просто угробить курицу, несущую золотые яйца, и ожидать, что золотые яйца продолжат появляться.

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

Конечно, крушение ИТ‑компании, логистического оператора или юридической консалтинговой фирмы не будут так же эффектны или так же опасны, но вряд ли от этого собственники и адекватные руководители захотят наступления своих критических рисков и краха всего бизнеса.

Погрузиться в бездны катастроф

Что будет дальше

Reading time15 min
Views100K


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

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

Когда живёшь в Иванове, ты не чуствуешь пульс индустрии, страны и мира так, как должен чувствовать. Город, в котором я родился, вырос, построил жизнь и карьеру, их которого я учил всех жить, хоть и находится довольно близко к дефолтному — всё ещё редкое захолустье. Размеренный, спокойный, отдаленный. В городе Иваново легко делать вид, что ты не бежишь ни над какой пропастью, легко не смотреть вниз. Даже если ты известный человек, с огромным количеством друзей и знакомых по всему миру, даже если ты ведешь один из самых популярных индустриальных подкастов, и даже если вся твоя работа подразумевает глубочайшее погружение во всё значимое, что происходит в мире, в регионе, и в твоей индустрии.

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

Читать далее

Дайте крудошлепа

Level of difficultyMedium
Reading time7 min
Views117K

Я устроился в небольшую компанию, которая сделал круд‑приложуху на 20 таблиц типа «заметки» и активно ее продавала госорганам за невменяемый бабос.

У нас был 3(три) Т‑Р-И статуса юзера. Anonym → Logined → Phone_Confirmed. Молодой талант до меня увидел в этом граф, и написал класс на 200+ строк, реализующий алгоритм Флойда‑Уоршелла, прикрутил стейт‑машину и не найдя интересных задач, c блеском прошел собес в Яндекс и свалил.

Меня наняли сеньором, и я каюсь ничерта не понял, алгоритм прекрасно работал на первой ступени, на второй давал сбои, тоскливо погуглил этот алгоритм, стер все к черту и написал: if(status==Logined & phone!=null){status=Phone_Confirmed}.

Один коллега посмотрел на меня с немой благодарностью, а начальник офигел и сказал, что код нерасширяем и захардкожен, а тот алгоритм мог пройти за время логN через тысячу вершин и по истечению испытательного урока меня уволили нах, так как мой технический уровень не соответствовал их высоким требованиям, впрочем выдали три зарплаты и я благодарен этим людям. Мой код оставили, тот так и не смогли починить.

Это было вступление.

Уважаемый Яндекс, Сбер и прочая! Я умею быстро решать задачи и кратно увеличивать выхлоп простыми решениями. Я самый умный программист, среди всех ваших работников! Я — НадНадсеньор! Сейчас докажу.

Потому что, только я могу решить задачку, которую вы уже 10 лет решить не можете, когда прилетает пуш‑уведомление или смс и в твоем всплывающем окне написано:

«Ваш шестизначный пароль доступа в наше приложение: 123...»

Не согласен! ...

Как я написал удобную оболочку над электронным дневником

Level of difficultyEasy
Reading time4 min
Views18K

Статья о том, как я в 15 лет облегчил работу с электронным дневником, представленным Кировской области в 2022 году.

Что получилось сделать и как это было реализовано.

Читать далее

Вычислительная сложность некоторых игр и головоломок (часть 1)

Reading time11 min
Views8.6K

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

Дальше-больше..

Ностальгические игры: Final Fantasy 6

Level of difficultyEasy
Reading time9 min
Views5.7K

Сегодня рынок видеоигр наводнён разными крупными ААА проектами, которые пытаются впечатлить вас невероятной технологичностью и «потрясающим» сюжетом. Я же хочу предложить вам окунуться в ламповую атмосферу игр девяностых с их милой двухмерной графикой, красивыми мелодиями и каким то особенным очарованием.

В наши дни сыграть в шестую часть серии можно на огромном количестве устройств благодаря как множеству официальных ремастеров, так и различным эмуляторам. Последнее крупное переиздание вышло несколько лет назад под названием Final Fantasy VI Pixel Remaster и получило хорошие отзывы, а значит нет более подходящего времени, чтобы познакомиться с серией или же вернуться в родную гавань!

Читать далее

Как я сделал SPA в два раза быстрее

Level of difficultyMedium
Reading time10 min
Views24K

Существует огромное множество статей про оптимизацию загрузки веб-сайтов, но часто они обходятся лишь общими советами или абстрактными простыми примерами. В этой статье я хочу поделиться своим опытом комплексной оптимизации реального проекта с конкретными примерами, в данном случае SPA, написанном на Vue 3 с использованием Vuetify для части UI компонентов и Firebase для авторизации.

Читать далее

The Saboteur! (ZX Spectrum, 1985). История создания

Reading time4 min
Views14K

Год выпуска: 1985
Платформа: ZX Spectrum
Автор: Clive Townsend
Издатель: Durell Software

Я впервые познакомился с этой игрой, когда мне было 9 лет. Дома на несколько дней поселился ZX Spectrum с катушечным магнитофоном и черно-белым телевизором. На бобинах были West Bank, Bomb Jack и The Saboteur! Играть никто толком не умел, а инструкции нам, понятно, доступны не были. Поэтому пройти «Саботёра» мы смогли только через несколько лет, когда загружали его уже с дискет.

Saboteur был творением одного человека, хотя в середине 80-х разработкой уже занимались целые команды, и стал хитом практически сразу после выпуска. Игра получила отличные отзывы в журналах, включая популярный Crash (1984-1992), и автору приходили восторженные письма фанатов.
Читать дальше →

Овладейте всем потенциалом анимирования с Vue

Level of difficultyMedium
Reading time7 min
Views11K

Vue позволяет разработчикам писать более гибкий и переиспользуемый код за счёт наличия дополнительных возможностей для организации компонентов. И одной из областей применения этих возможностей являются анимации. В текущей статье мы разберём использование Composition API для создания анимаций в Vue с помощью CSS и JS библиотеки GSAP (GreenSock Animation Platform).

Примечание пер.: статья содержит крупные GIF-анимации.
Читать дальше →

Одной К155ЛА3 недостаточно

Level of difficultyMedium
Reading time8 min
Views18K

Из предыдущей части публикации мы узнали, что на одной микросхеме К155ЛА3 можно реализовать достаточно много устройств. Причём у неискушённого читателя мог возникнуть вопрос, зачем же потребовалась разработка других микросхем серии 74, если функциональность любой из них можно реализовать на логических элементах типа 2И-НЕ?

В этой части мы рассмотрим схемотехнические решения на элементах 2И-НЕ более сложных устройств, а также дадим ответ на вопрос неискушённого читателя по результатам анализа работы этих решений.
Не всё так просто

Достаточно одной К155ЛА3

Level of difficultyMedium
Reading time6 min
Views66K

Продолжая тему легендарных микросхем, нельзя обойти вниманием замечательнейшую микросхему 7400, также известную на постсоветском пространстве, как К155ЛА3.

Давным-давно, когда деревья были большими, а я ещё учился в старших классах, на меня снизошло откровение от старших товарищей, что практически любое цифровое устройство можно собрать только на микросхемах К155ЛА3. Утверждение может показаться спорным, но ничто не мешает нам его проверить.

И поможет нам в этой проверке другое откровение: «Инверсия конъюнкции есть дизъюнкция инверсий». Заодно и разберёмся, что есть «конъюнкция», что есть «дизъюнкция», и причём здесь «инверсия».
И это совсем несложно

Что выбрать начинающему HTML5-разработчику: сравниваем российские игровые площадки

Level of difficultyEasy
Reading time10 min
Views8.6K

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

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

Узнать всё про игры

Фразы для собеседования: о проекте, работодателе и своих навыках

Level of difficultyEasy
Reading time4 min
Views2.8K

Составление резюме на английском — достаточно трудоемкий процесс, и здесь на помощь соискателю приходят онлайн конструкторы резюме. В февральской  статье на ресурсе tweaklibrary были предложены 9 лучших онлайн приложений («9 Best Resume Maker Apps For Android & iPhone») по мнению автора твика.

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

Читать далее

Дебажим коммуникацию: протоколы общения человеков

Reading time17 min
Views4.2K

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

Поговорим о тех вещах, которые многие и так умеют делать, но не осознают и не управляют этим осознанно. Поможет нам в этом Артур Орлов из компании ATI.SU. Он начинал карьеру с fullstack разработчика в 2004 году. Потом работал тимлидом, agile коучем и ICF-коучем. В настоящий момент он коуч по корпоративной культуре — помогает командам и компании выращивать здоровую культуру. Для этого нужно выработать алгоритм эффективной коммуникации, наладить процессы коммуникации и вообще определиться, что с ними делать. Найти какие могут быть потери, определить функции и составить протокол общения. Всё это, даже неподготовленному человеку, позволит увидеть в обычной коммуникации немного больше.

Читать далее

Как рассказать о новом функционале и провести демо на английском языке

Level of difficultyEasy
Reading time4 min
Views3.4K

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

Предлагаю рассмотреть аутентичные материалы. Меня заинтересовало короткое видео с Томасом Эзаном, Андроид инженером-разработчиком в компании Гугл.  В недавней презентации каналу Android Developers он демонстрирует возможности нового программного пакета TensorFlow Lite и применение интерпретатора API в библиотеке машинного обучения. Разберем это видео с точки зрения структуры, грамматики и интересной лексики.

Читать далее

Information

Rating
2,727-th
Location
Бишкек, Кыргызстан, Кыргызстан
Date of birth
Registered
Activity

Specialization

Backend Developer, Fullstack Developer
Senior
PHP
OOP
Git
Database
Docker