Niwe Code
227 subscribers
34 photos
3 videos
1 file
48 links
Канал создан для выброса моих важных мыслей касательно вещей в IT индустрии + некоторого обучения в данной сфере. В своей задаче я ставлю продвижение разных тем в юмористическом стиле.

Связаться: @HxQtl9
Download Telegram
#AI

Да, я тут сайд-проект пишу с помощью JetBrains AI. Знаете, это как общаться с умным другом, который иногда забывает, что у него есть мозг. Главное — писать явно и максимально точно то, что хочешь. А он, как будто на стероидах, генерирует по 100 строк кода, как будто у него есть личный ассистент с дипломом.

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

Иногда ИИ действительно выдает нелогичные вещи, но стоит просто сказать: "Эй, не делай так!" — и он, как послушный щенок, исправляется.

Почему не очень просить его написать код? Да потому что это всё равно что просить соседа, который не умеет готовить, сделать тебе ужин. Ты же не будешь удивляться, если он подаст тебе макароны с вареньем! Но, если честно, я прошу и меня это устраивает. Да, иногда приходится его поправлять, как маленького ребёнка, который только учится ходить. Но это часть процесса, и, в конце концов, у меня мало претензий к последней платной модели GPT-4. Она, похоже, действительно "ушла далеко" — как будто на курсы повышения квалификации для ИИ.

Так что, ребята, учитесь формулировать свои запросы! И помните: ИИ — это не волшебная палочка, а скорее ваш умный, но немного рассеянный друг, который иногда нуждается в подсказках.
🔥2👍1
#Programming

Все языки программирования — говно


Аксиома Эксобара, касающаяся языков программирования, долго не давала мне покоя, и, как объективный и беспристрастный IT-специалист, могу смело заявить: все языки программирования — говно.

Каждый из этих ваших "наборов инструкций и операторов" полон недостатков, и начнём мы, конечно, с JavaScript:

Как бы мы ни любили JS, нужно признать: этот язык — далеко не идеал. У него отсутствует четкая структура, а стандарты его столь же туманны, как утренний кофе после бессонной ночи. Прототипное ООП? Да это же настоящий музей костылей! Использование его для backend программирования — вообще анекдот. Но при всём этом, несмотря на несуразные корни и проблемы с ООП, JavaScript — это настоящий "швейцарский нож". Он проникает везде, и его универсальность — его главный козырь.

PHP

С PHP все немного иначе. Это словно друг из детства, который хоть и не самый умный, но всегда готов прийти на помощь. В нём есть всё, чтобы быстро собрать сайт "на коленке". Хотя давайте будем честными: чем глубже вы погружаетесь в проекты на PHP, тем больше встречаете кривого и непонятного кода от старых версий.

Python

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

Java

Java — это как старая машина, которая по-прежнему работает, но требует слишком много ресурсов. 3 миллиарда устройств? Да, возможно. Но все знают, что Java медленно движется на старом коде и зачастую является излишне тяжёлой. Её прожорливость и неповоротливость — это испытание для любого разработчика. Каждый раз, когда вы запускаете Android Studio, вам хочется выключить обогрев в комнате — так сильно она греет наше очко.

C#

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


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

Поэтому, не стоит излишне критиковать инструменты или языки. Возможно, уже через несколько лет вам самим придётся работать с тем, что сегодня кажется устаревшим или неудобным.
🔥2👍1
#News

Почему в чехарде с Discord виноват YouTube?

За последние недели развернулась нехилая Санта-Барбара по поводу блокировок. В СМИ уже как неделю вбрасываются сообщения, что Дискорд «ВОТ-ВОТ разблокируют». Его ж даже убрали с базы данных РКН, а сервис че-т все равно не запускается с российских айпишников.

Акт 1 Блокировку видишь? А она есть

Для начала вспомним эпопею с (не)блокировкой YouTube. Это было новое для нас явление. К обычным официальным блокировкам мы уже привыкли. Но в случае с Ютубом было все иначе. Официального предписания не было. Чиновники путались в мотивировке: то дело в оборудовании, то в злом Госдепе. А блокировка осуществлялась избирательным образом только на домашний интернет. Да и даже здесь итог отличался от провайдера к провайдеру.

А вот уже это запустило акт 2

Акт 2 Рыночек против деградации

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

Мол чего-то у одних замедляют Ютубы, а у других нет. Вы дискриминируете рынок. Это действие переносит нас в Акт 3

Акт 3 Понятные правила, понятные немногим

Когда я учился в школе, бывало такое, что учительница ставила двум работам разные оценки за одинаковые ошибки. Одному 5-, а другому 4. Хотя оба в одном месте пропустили запятую. И когда дискриминированный шел к учителю разбираться, учитель, разумеется свой просчет признать не мог. Это западло. Но не западло было уровнять результат обоим ученикам в меньшую сторону. Теперь у нас две работы с оценкой 4. И здесь я ожидал что-то подобное.

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

11 октября, через пару недель после обращения «учеников» , РКН разрабатывает проект приказа, по которому может замедлять вообще что захочет через внесудебное решение Генпрокуратуры. А т.к. последние обладают привилегией тайны, т.е. ничего никому не объяснять и информировать, то подобная фича распространяется и на РКН. РКН назвал это «управлением сетями». В общем, не блокировка без суда и следствия, а управление сетями. Записываем в словарик.

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

Ну… не совсем

Акт 4 Продолжение давно идущего тренда

Когда СМИ писали, что Дискорд вот-вот разблокируют, они основывали свое предположение на исчезновении из базы РКН домена. И в целом, предположили адекватно. Но кто ж знал, что РКН втихую изменит механизм работы этой базы данных. Теперь может быть такое, что указывать надо не домен, а конкретную страницу, где размещен запрещенный материал. Страницу. В дискорде. Конкретную.

Как узнать, что именно запрещено? Ну это в списках Роскомнадзора

А как посмотреть эти списки?

¯\_(ツ)_/¯

Вот и получается, что Дискорда в базе нет, но он заблокирован. Ютуба в базе нет, но он частично замедлен.

Мы сейчас с вами входим в новую реальность, когда проверить блокировку ресурса сможем только своим лбом. Если по ходу дела спотыкаемся, а сервис открывается с помощью средств починки, значит заблочил РКН. Почему? За что? Что именно?
Знать не положено

Коммуникация 11/10
#Education #Python

Если решил учить Python, браток, добро пожаловать в хату питонистов. Тут, знаешь ли, свои правила — на базу не по фене ботать не получится, придётся научиться шарить не только за циклы и функции, но и за то, как правильно двигать по жизни.

Первое, что тебе надо понять: заходишь в проект — заходи с умом. Если ты тут по красивую жизнь пришёл и думаешь, что Python'чик тебя на райские пет-проектики выведет — хаха, держи карман шире! Ты теперь на зоне, и тут такие штуки, как баги, костыли и дедлайны — как масти в картах, всегда с тобой.

Сокамерники могут быть разные — от джунов до сеньоров, но знай: дедуля твой SRP — это как устав. Ты чётко должен всем сказать: «Мужики, у меня одна обязанность, или я тут дебагом занимаюсь, или код пилю. В две работы вписываться не буду, с пониманием отнеситесь». А за «Open-Closed» лучше молчи, это вам не на воле — никто расширяться не хочет, максимум, что тебя ждёт — это лишний таск на шею.

В Python всё просто: задачку вкатили — решай. Только ты знаешь, что всегда будет два стула. На одном — «геморойная оптимизация кода», на другом — «залезть в чужие костыли и понять, кто тут батя». Вот и думай, на какой сесть.

Короче, Python — штука гибкая, но учись правильно раскидывать по камере свои задачи. Не тупи, асинхронку тут все уважают, потому что никто не хочет чтобы система висла, как лох-javaScript'езер. Тебе ж не охота стать «тем, кто завалил проект», да?

Так что грей стэк, уважай принципы, и твой питоновский путь будет ровным, без лишнего напряга.
1
#OOP #Paradigms

Один маслёнок яростно доказывал что ООП очень хорошо заходит для создания GUI. Ответ специально для него:


Ооо дружище, ООП харош для GUI? Это примерно такой же спид как и про то что ООП харош для всего когда программисты обожглись об ООП, но проблему GUI глубже фармашлёпства не исследовали, поэтому решили: "Ну ладно, ООП для моей предметной области говно"; но ведь кнопка это же объект, ты ведь понимаешь о чем я, уёбок?

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

А GUI так и остался той областью в которой ты нихуя не шаришь. Так вот, уёбок, не надо экстраполировать свою самоуверенность на все отрасли человеческой деятельности. Если ты охуенный спец по обработке сигналов, это еще не значит что ты охуенный спец по чистке туалетов или лепке CRUD'ов. И если ты в лепке CRUD'ов не видишь никаких закономерностей это не значит что их там нет и что любой виджет есть объект и не более того, закономерностей там больше чем дохуя.

Я вот с ходу могу сказать что GUI лучше моделировать стрелками чем объектами, а истинный спец по GUI тебе наверняка категорий 5 навернет охватывающих визуализаций, валидаций, интернациализаций и локализаций, layout'ы для людей с ограниченными возможностями и хуй че там еще может быть. Поэтому говори про то что знаешь, про GUI пусть спецы по GUI пишут, от них то мы и узнаем, столь ли там харош ООП или приходиться еще каким-нибудь xml в жепу поябываться.
🤡11
#ITLife

Деды в программировании:

Давайте поговорим о наших любимых "дедах" в программировании. Знаете, тех самых, кто считает что знание всех теоретических основ — это единственный путь к успеху.

Вот например ситуация: преподаватель спрашивает, что такое атрибуты в контексте БД. Один из студентов отвечает что это набор строк, и тут же получает угрозу: "Ты еще раз так ответишь — выгоню тебя!" А потом, когда речь заходит о домене, все молчат и начинается: "Вы не программисты, никому не нужны! итд итп"

Серьезно? Программист — это не тот кто может заучить все определения и термины, а тот, кто на практике создал что-то действительно стоящее, вроде нового Google или Windows. Да, база знаний важна, но ставить теорию в приоритет — это все равно что думать о быстродействии кода, когда ты еще не научился его писать.

И вот из-за таких "дедов" у нас есть целая армия людей, которые могут стараться, но из-за того что они не знают 858657 вариантов пузырьковой сортировки, их просто выгоняют с собеседований.

Так что давайте помнить: программирование — это не только про теорию, но и про практику. И если вы не знаете как сделать что-то на практике, то все ваши знания о терминах и определениях — это просто набор строк.

В общем, давайте учиться, экспериментировать и не забывать что в программировании главное — это результат, а не количество заученных терминов!!!
#meme

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

3 томика Кнута — о да, забудьте про это, если хотите не просто учиться, а выживать! Чтение Кнута в первые месяцы гарантирует, что вы навсегда запомните, что такое показатель сложности алгоритма… в других измерениях. 🌌

75 статей по устройству памяти — зачем тратить время на такие вещи? Лучше поищите статью о том как запомнить где вы оставили свой кофе! ☕️

5 уровней по системной инженерии и OSI — на этом этапе я бы уже посоветовал записаться на курсы по медитации. После нескольких часов «уровней» вы точно поймёте, как правильно успокаиваться когда начинаете забивать на все эти сложные схемы. 🧘‍♂️

SSD, наполовину заполненный реализациями алгоритмов и структур — да кто вообще пользуется SSD в 2024 году? Все знают, что лучше хранить всё в облаке, потому что «вдруг сгорит»! (шутка) ☁️🔥

Целое море разноцветных книг по чистоте кода:

Макконнелл, Мартин и Свейгард — если вы не знаете, что они написали, это просто шикарно. Зачем заботиться о чистоте, если код и так работает? Не забывайте: чистый код — это тот, который не трогали!

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

Шпаргалка по Linux'y — как же без этого? Но скажите, кто вообще помнит как устанавливать программы без графического интерфейса? Серьёзно, для чего нам это? 😂

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

И 12 сайтов самоучителей — ну а если по-правде, тогда можно было бы оставить только 1: Как не сломать свой компьютер за 5 шагов. Вполне достаточно! 💻💔

Вот так, с одной стороны, надёжная база для старта, а с другой — настоящие legacy! Не дайте себе заблудиться в этом книжном аду. Достаточно пары видеороликов на YouTube и хорошего практического опыта чтобы стать профи. Так что, если вы только начинаете, просто помните:

Не учите то, что вам не нужно — это будет уже не IT, а просто название вашей библиотеки! 📚💥
222
#Other

Представим, что языки программирования — это люди, а значит по моему единственному и правильному мнению они выглядят так:

Python: Популярный парень, который всегда готов прийти на помощь и сделать все быстро. Он умеет решать проблемы и любит экспериментировать. Однако, несмотря на его полезность, глупо шутит и порой ведет себя то как душа компании, то как клоун

C++: Высокий, умный молодой человек. Баскетболит. Выше всех на тусовке. Неплохо соображает, может удивить своей памятью. Никто не скажет, что провести с ним время будет безопасно, но все будет хорошо, если пользоваться защитой. Несмотря на его способности, его считают парнем со своими загонами, сложностями. И вкатуны обычно выбирают либо С#, либо С. Оставляя С++ для тех, кто любит разные "игры"

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

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

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

C#: Обаятельный и умный молодой человек, который может справиться практически с любой задачей. Хотя его отец вызывает сомнения, он остается любимчиком многих благодаря своим способностям

F#: Младший брат C#, но гораздо более замкнутый и увлеченный всякими странными теоретическими штуками. Постоянно ходит с блокнотом и пытается уговорить людей изучить функциональное программирование. Но всем почему-то кажется, что у него слишком сложные идеи для простого общения.

HTML: Прекрасная девушка, всегда стильно одетая и со вкусом. Она — основа всего, на что ты смотришь, но почему-то многие недооценивают её значимость. Её часто принимают за "простой" язык, но без неё вечеринка была бы совсем не такой яркой. Она не спорит с другими, просто молча продолжает делать своё дело.

CSS: Это лучшая подруга HTML. Она всегда в центре внимания благодаря своему чувству стиля и способностям делать всё красивым. Её работа может быть сложной, потому что она постоянно экспериментирует с новыми тенденциями. Иногда она может стать капризной, но все понимают, что без неё вечеринка была бы скучной и серой.

JavaScript: Красивый и загадочный персонаж, который привлекает внимание всех на вечеринке. Он обещает многое, но требует много усилий и внимания. С ним нелегко расставаться, и его еженедельные выходки могут стать головной болью

TypeScript: JavaScript в очках с прилизанными волосами, который решил поумнеть. Он выглядит более уверенным и уравновешенным, постоянно исправляет своего старшего брата на тусовке. Но иногда за это его раздражает вся компания, особенно когда выясняется, что он просто подражает другим умникам.

SQL и CQL: Два брата, которые известны каждому и находятся в центре внимания. Они общаются со всеми и всегда помогут

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

PHP: Парень, который всегда рядом, когда нужна быстрая помощь. Он может выглядеть менее стильно, как Python, но у него всегда найдется место, чтобы провести вечеринку

Swift: Она молода, красива и обожает роскошные вещи. Она не разговаривает с теми, у кого нет "яблочной" техники, но когда у тебя всё по её стандартам, она работает быстро и элегантно. Одевается со вкусом, но может немного напрягать своим высокомерным отношением к тем, кто использует "неправильные" устройства.

VBA: Бухгалтер на вечеринке, который, кажется, знает пару классных трюков с таблицами Excel. Всех удивляет, как он всё это делает, но никто не хочет стоять рядом с ним, боясь, что он начнёт объяснять, как автоматизировать отчетность.
2🔥1
#meme

🌟 Java Программист 🌟

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

"Это объектно-ориентированно!" — говорит он и вы понимаете, что это не просто слова, а его образ жизни. Он с гордостью утверждает, что "JVM — это лучшая виртуальная машина в мире", а "Garbage Collection — идеальный способ управления памятью".

Для него Java не просто язык, это язык будущего! "Все должны использовать Java!" — настаивает он, уверенный в своей правоте. В его мире нет места для других языков программирования.

Когда разговор заходит о реальных проектах он начинает рассказывать о своих университетских достижениях, подчеркивая, как это было сложно. "Это должно быть сделано по-энтерпрайзному!" — повторяет он, используя слова "архитектура", "паттерны" и "дизайн" в каждом предложении, даже когда это неуместно.

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

💻 Java — это не просто язык, это стиль жизни! 💻
1
#Linux #OS

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

Ubuntu: Это как тот парень, который всегда приходит на вечеринку с пиццей и пивом. Все его любят, но никто не понимает, почему он так часто обновляется. "Я просто хочу, чтобы у меня было всё самое новое!" — говорит он, пока его система зависает на 30% загрузки. Ubuntu — идеальный выбор для тех, кто хочет попробовать Linux, но не желает углубляться в философию и терминологию. "Просто нажми на кнопку, и всё будет работать!" — как будто это не обман.

Arch Linux: Это дистрибутив для тех, кто любит страдать. "Собери свою систему сам!" — кричат фанаты Arch, как будто это не просто способ заставить вас потратить выходные на установку драйверов. Arch — это как квест в видеоигре, где вместо драконов и сокровищ вы сражаетесь с зависимостями и конфигурационными файлами. "Собери свою систему сам!" — и ты понимаешь, что собрал только сломанный компьютер и кучу нервов.

Debian: Это как ваш дедушка, который всегда говорит: "В моё время всё было лучше!" Debian — это стабильность, но такая стабильность, что иногда кажется, что он просто забыл, что такое обновления. "Зачем обновляться, если всё и так работает?" — философия, которая может привести к тому, что вы будете использовать софт, актуальный ещё во времена динозавров.

Fedora: Это дистрибутив для тех, кто хочет быть на передовой технологий, но не хочет, чтобы это было слишком сложно. "Я использую Fedora, потому что люблю быть в тренде!" — говорит он, пока его система не решает, что обновление ядра — это отличная идея в самый неподходящий момент. Fedora — это как модный магазин, где все вещи выглядят круто, но на самом деле их никто не носит.

Mint: Это дистрибутив для тех, кто хочет, чтобы всё выглядело красиво и работало без проблем. "Я просто хочу, чтобы всё было как в Windows, но без вирусов!" — говорит он, пока его система не решает, что обновления — это не для него. Mint — это как уютный диван, на котором приятно сидеть, но который может неожиданно провалиться под вами.

В общем, дистрибутивы Linux — это как большая семья, где каждый член считает себя самым умным и самым красивым. И, как в любой семье, иногда хочется просто закрыть дверь и не слышать их споры о том, какой дистрибутив лучше. Но, в конце концов, главное — это то, что каждый находит свой путь в этом безумном мире технологий.
11
#Education #OpenSource

GIT для маслят: как не закоммитить стыд в репозиторий

Итак, маслята, вы решили вкатиться в программирование, и вам говорят: «Бро, запушь на гитхаб». А вы такие: «Гит-чо?» Не беда! Сейчас разберёмся, как пользоваться этой магией.

1. git init

Заводим свой первый проект на гит:
$ git init 


Это как если бы вы сказали: «Всё, теперь тут сохранёнка». С этого момента ваш код будет под гитовой защитой.

2. git add .

Вы написали пару строчек кода, и теперь хотите, чтобы гит посмотрел на это? Легко!

$ git add . 


С этой командой вы говорите: «Гит, глянь на всё, что я тут наваял». Точка в конце означает «добавь всё». Да, можно выбрать отдельные файлы, но маслята не ищут лёгких путей!

3. git commit -m "My first commit"

После того, как вы добавили всё, что захотели, нужно официально засвидетельствовать свой позор (или успех).

$ git commit -m "My first commit"


Эта команда — как галочка на ЕГЭ: вот теперь это навсегда. Коммитим. Обязательно оставляйте осмысленные комментарии, чтобы через месяц не сидеть с лицом Чарли Дэя, разбираясь, что вы там натворили.

4. git branch -M main

Теперь надо убедиться, что вы на правильной ветке. Называем её «main», потому что так теперь модно.

$ git branch -M main


Ветка — это как ваша параллельная вселенная. Делайте их столько, сколько хотите, но помните: сливать вселенные опасно!

5. git remote add origin

Создаёте репозиторий на GitHub (да-да, там жмёте всякие кнопочки), а потом связываете его с вашим локальным репозиторием:

$ git remote add origin https://github.com/maslenok/myrepo.git


Это как дать вашему проекту билет на самолёт и сказать: «Лети, мой код, и покажи миру, на что ты способен!».

6. git push -u origin main

Время распахнуть дверь в мир!

$ git push -u origin main


Это команда для героев: ваш код улетает в репозиторий и начинает своё существование на GitHub. Не забудьте проверить, что вы действительно хотите показать людям. Иначе начнутся те самые коммиты типа fix bugs, last fix, really last fix и WTF?!?!.

7. git pull

Но что делать, если код уже запушен и всё норм, а тут внезапно вылезли какие-то баги? Или коллега наваял шедевр за вас? Просто стяните последние изменения:

$ git pull


Это как Ctrl+Z для реальной жизни. Приняли изменения, посмотрели, порадовались, а потом аккуратно нафигачили что-то своё.

8. git clone

Хотите скачать проект, как мемас из интернета? Легко!

$ git clone https://github.com/maslenok/chelovek-kot.git


Теперь вы у себя на компе «клонировали» весь репозиторий с гитхаба. Можете начать колдовать.

9. git status

Не помните, что происходит в репозитории? Какой у вас статус? Коммиты сделаны или где-то косяк? Просто спросите:

$ git status


Эта команда — как магическое зеркало, покажет вам все незакоммиченные файлы и их статус.

10. git log

Хотите узнать всю историю своего позора?

$ git log


Посмотрите на свои старые коммиты и всплакните от того, каким вы были молодым и глупым.

11. git checkout -b "feature"

Захотели добавить что-то новое, но не хотите разрушить всё, что было? Создайте новую ветку и колдуйте там:

$ git checkout -b "feature"


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

Заключение

Гит — это как ваше магическое хранилище, где можно сохранять все свои успехи, провалы и шедевры. Главное — не забывайте делать коммиты с нормальными сообщениями, а то потом будете вспоминать, что такое final-final-absolutely-final-v2.

Так что, маслята, теперь вы знаете базу. Идите, творите и пушьте. И не забывайте: Ctrl+C, Ctrl+V — это тоже программирование.
#News #Linux

Скандал в мире Open Source: исключение российских разработчиков из ядра Linux

Недавние события вокруг разработчиков ядра Linux вызвали многочисленные споры и недоумение. Один из главных разработчиков ядра принял решение исключить 11 российских разработчиков, которые в некоторых случаях более 10 лет вносят свой вклад в проект.

Причина? «Потому что российские разработчики и Россия». 🎤💥

Многие из уволенных уже долгое время живут за пределами России, но это не помогло им остаться в проекте. Линус Торвальдс, основатель Linux, пояснил ситуацию, но отклонился от обсуждения деталей, ссылаясь на указания юристов.

Некоторые участники сообщества начали задаваться вопросами: что же произошло на самом деле? Какова истинная причина исключений? В конце концов, такая ситуация ставит под сомнение принципы, на которых строится open source более 25 лет.

Важно отметить, что Linux Foundation заявлял о нейтралитете open source в политике, но выводы, сделанные в этом случае, ставят это под сомнение. 🤔

На фоне этой ситуации, участники сообщества чувствуют напряжение и недоумение. Так ли просто развенчать все принципы открытости и сотрудничества, на которых была основана вся экосистема?
1
Niwe Code
#News #Linux Скандал в мире Open Source: исключение российских разработчиков из ядра Linux Недавние события вокруг разработчиков ядра Linux вызвали многочисленные споры и недоумение. Один из главных разработчиков ядра принял решение исключить 11 российских…
#News #Linux

В списке рассылки сообщества разработчиков Linux вышло официальное заявление разработчика «Байкал Электроникс» Сергея Сёмина по поводу исключения из списка мейнтейнеров Linux.

В своём письме Сергей сообщил, что после случившегося он потерял мотивацию для продолжения дальнейшего участия в разработке ядра, а попытки получить у вышестоящего мэйнтенера более подробную информацию о причине удаления не прояснили ситуацию - в ответе было лишь извинение, упоминание санкций, сожаление о невозможности что-либо сделать и совет обратиться к юристу своей компании. При этом Сергей уже более года участвует в разработке ядра только как волонтёр, а не как оплачиваемый работник. За время работы в сообществе Сергей отправил 518 патчей, прорецензировал 253 патча и принял участие в тестировании 80 патчей.

Данный инцидент показывает, что в любой человеческой деятельности есть доля (всё) политики.

Fuck The Linux Foundation!🐧
Please open Telegram to view this post
VIEW IN TELEGRAM
#meme

🔍 Внимание! Нужны герои для тайного C/C# проекта! 🔍

Друзья, у нас возникла неотложная необходимость в уникальных и сверхнадежных кадрах для нашего нелегального, но очень «вдохновляющего» C/C# проекта (не, это не шутка!). Если вы готовы погрузиться в мир программистских шифровок и таинственных алгоритмов, а также не боитесь немного пофантазировать, то мы ищем именно вас!

🎯 Требования к супергероям:

1. Китайский язык: Считаем это обязательным. Вам нужно знать минимум 2000 иероглифов. И не просто знать — говорить, читать и, возможно, писать послания новой-уникальной-будущей-культуре программирования. "Привет, как дела?" не считается, так что готовьтесь к глубоким дискуссиям о конфиденциальных аспектах кибербезопасности на псевдо китайско-японском! 🍜

2. Опыт работы: Нам нужен опытный волшебник программирования с 18-летним стажем. Если вы знаете, как юзать C так, что даже Бог будет в шоке и написание самого красочного кода является вашим хобби, вам к нам!

3. Знание QT и cURL: Если вы можете связать их в обычном (или даже в необычном) потоке и при этом не терять сознание, вы на правильном пути! Сложные отношения между библиотеками — это именно то, что нам нужно. 💻💔

4. Работа с интерпретаторами: Особенно приветствуется создание второго Python (да, не первого!). Умение провести магический ритуал с интерпретатором — это тот самый навык, который сделает вас нашим шефом. 🐍

5. Вскрытие лаунчера K-C: О, да, это настоящее искусство! Если вы нашли способ, как обойти неоднозначные проверки и получить доступ к закрытым функциям, именно вам нужен этот проект. 💡

6. Гадание на рандограмме: Достаточно иметь базовые знания о том, как работает рандом (не путайте с рандомом, который заказывает пиццу для проекта!). Гадать на рандограмме — это священная и ироничная часть вашей работы. 🎲🔮

🤖 Почему именно мы?

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

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

Помните, что трудности делают нас сильнее, а ваш смех — это самое главное в нашем проекте! 😉
🔥11
#Other #Unity

Unity - худший игровой движок тысячелетия


Не понимаю, кто вообще может считать это дерьмище достойной платформой для разработки. Возможно, только закрытый БДСМ-клуб, где каждый мечтает о пощёчинах багами и холодном пощёлкивании тормозов. Не верите? Сегодня я вам докажу, любителям Unity и горячей индюшатины, почему этот, обожествляемый 5Б разработчиками, движок — кусок того, что давно уже тянет геймдев на дно.

Начнем с Unity RoadMap — ежегодного спектакля, где представители Unity Tech с важным видом обещают хомякам фантастические фичи и клянутся, что «вот на этот раз точно всё сделают». Но, спойлер: каждая фича — это новый вид боли и отчаяния для тех, кто пытается сделать хоть что-то играбельное на этом движке. Выходит, что каждый патч и фикс — это просто обмен старыми багами на новые, причем баги весёлой гурьбой стремятся в редактор, заставляя разработчиков по-новому познать пределы своих нервов.

Фичи. О, эти сладкие мечты маркетологов с блестящими улыбками и влажными фантазиями на тему новых возможностей. На деле они приходят в редактор примерно в таком состоянии, как «уставший алкаш», который дополз до релиза на четвереньках и обмочил штаны. И пока эта фича допиливается пару лет, сообщество вынуждено самостоятельно создавать толковые инструменты, решающие проблемы гораздо лучше, чем это могло бы сделать UnityTech в своем лучшем виде. Вспомним, как на свет появился TextMesh-Pro, ведь долгое время Unity вообще не имела нормального инструмента для вывода текста. «Кто-то должен был это сделать!» — подумали UI-дизайнеры, пытаясь сдержать слезы.

Unity разваливается на ходу, но вся эта поездка уже напоминает не инновационный прогресс, а танец с граблями. Сколько там было патчей, чтобы, наконец, исправить проблему с переиндексацией Sprite Atlas'ов? А система контроля версий? Разработчики знают этот ужас, когда каждый раз при открытии проекта он заваливается пачками файлов, да еще с шутками про то что на Unity разрабатывают только люди с нетрадиционной сексуальной ориентацией.

Конечно, новые версии редактора с включенной отладкой — это отдельная песня. Помню, когда только добавили debug-mod, работать стало почти невозможно. С тех пор легче американскому айтишнику обналичить материнский капитал в России, чем нормально отладить проект в Rider’е.

Кроссплатформенность редактора оставляет привкус странного — что-то вроде 10-летнего чая. Unity пытается поддерживать Windows, MacOS и даже Linux, но любое обновление ОС ставит UnityTech на колени и заставляет просить помощи у Google, чтобы хотя бы не падать.

И самое главное — производительность. От версии к версии один и тот же код запускается все хуже, независимо от железа. Это как играть в старую игру на новом компьютере и ощущать тормоза так, будто тебе все еще 8 лет. И, конечно, сам редактор тоже не обделен тормозами, превращаясь в доисторического динозавра, неспособного работать стабильно даже на топовом железе.

Когда-то Unity был легким и быстрым решением, когда я писал свои первые игры на компе с 512 МБ ОЗУ. Сейчас даже мой мощный ПК подрагивает от страха при запуске редактора. Когда же это всё так изменилось?
Unity — это отличный движок, если у вас есть время, нервы и запасы терпения, чтобы справиться с багами, слабой производительностью и нестабильностью. Но если вы предпочитаете потратить эти ресурсы на разработку, а не на борьбу с инструментами, возможно, стоит присмотреться к другим вариантам.
👍1
#Linux

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

Ладно, вам наверное уже известно, что мои вкусы специфичны. Одно из моих хобби — раз в 2-3 месяца поставить очередной дистрибутив Desktop Linux, чтобы самолично насладиться изменениями и обновками. Каждый грёбаный раз я надеюсь на лучшее, но всякий раз убеждаюсь, что фраза "Linux можно полностью настроить под себя" на деле означает, что тебе придётся самому всё фиксить что не работает. Спустя пару таких экспериментов могу твёрдо заявить: проблемы никуда не делись, а дистрибутивы застопорились в глубокой стагнации.

Естественно, за свою честную и непредвзятую позицию я ловлю тонну хейта от линуксятников. Но как жертва кибербуллинга стоять в стороне я не собираюсь. И Продолжу до конца отстаивать свою позицию, что грёбаному Linux не место на персональном комплюхтере — твёрдо и чётко.

После того как мне сказали, что я рукожоп и просто не неоселятор Linux, эти люди предложили свои "вумные рекомендации". У каждого линуксятника есть набор фактов, которые делают спор бесполезным ("90% проблем с Linux сидит перед ПК" и так далее). Ну что ж, проверим.

"Бу-бу-бу, ты поставил дистрибутив 'A', а надо было поставить дистрибутив 'Б'. Вот тогда бы сразу всё заебись стало"...

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

Я ставил Manjaro с GNOME, и при свежей установке OS зависала намертво, как только нажимал любую команду. Даже разбираться не стал, просто снёс это. Если OS из коробки глючит на моём железе, нет смысла копаться дальше.

Следом в новой Ubuntu я наткнулся на свою любимую проблему со звуком. Переход на PipeWire ничего не решает. PulseAudio хоть и был куском говна, но, если посмотреть форумы линуксятников, можно увидеть, что даже с PipeWire звук не работает из коробки, а некоторые возвращают PulseAudio, ведь с legacy софтом звуковая совместимость отсутствует.

С графическими подсистемами та же история. Множество дистров переходит на Wayland, хотя там полно проблем с технологиями NVidia. Подсистема не позволяет переключаться между интегрированной и дискретной графикой на лету. Мой знакомый столкнулся с этой проблемой на Fedora. Решение элегантное — два bash-скрипта: один перезагружает систему на Xorg с драйвером для дискретной графики, другой на Wayland с драйвером для интегрированной графики. User experience охуительный, всем рекомендую, сразу мозги прочищает.

Веселья хватает и с мажорными обновлениями. Никогда не забуду, как на виртуалку поставил Arch, идеально настроил и отложил на недельку. А потом при следующем запуске обновил систему — и Grub загрузчик слетел.

Ой ладно, глобально все дистрибутивы приправлены багами самого ядра. Например, знаменитый баг #12309, когда менеджер памяти не справляется с вводом-выводом и зависает намертво. Отличная лотерея, ставящая жирную зелёную галочку напротив пунктов стабильности и надёжности Linux. По поводу технического состояния я, надеюсь, доходчиво разъяснил свою позицию. Есть ряд устоявшихся мифов о надёжности Desktop Linux, не имеющих к реальности никакого отношения.

Для непонятливых скажу: это практически не относится к stable-версиям Server Linux, где RunTime может длиться десятилетиями. Но, учитывая мой опыт общения с линуксятниками, могу с уверенностью заверить: 99% входящей информации они игнорируют, цепляясь за один простой аргумент:
"Ммм, ты назвал Linux OS, но это не так, Linux — всего лишь ядро OS. А то, что ты назвал OS, называется дистрибутивом. Выкуси, ламер!" Ой, блять...

Ну и, конечно, последний аргумент, не терпящий критики: OpenSource = бесплатно. Что я жду за бесплатно?
2🤡1
Niwe Code
#Linux — Алё — Ало…? — Не могу говорить, я тут опять настраиваю свой Desktop Linux с помощью команд в терминале. — Но ты же сам мне позвонил. — Вс... бр...тан... х...рош... я з...нят, давай, п...ка. Ладно, вам наверное уже известно, что мои вкусы специфичны.…
Вот тут и кроется проблема восприятия: открытый код — это не про коммунизм, не про круто, а про реалии, где большие деньги решают всё и стоит посмотреть на лица разработчиков, когда этих самых денег их лешают.
🔥2
#Other

Вот мне интересно, почему у некоторых людей так сильно «горит» от того, как я произношу «яваScript». Некоторые пытаются убедить меня, что это неправильно, ссылаясь на английское произношение. А давайте будем честными: каждый день мы используем англицизмы, не заморачиваясь с их оригинальным звучанием. Почему вы мучаете свой язык, произнося ʤ вместо «дж»? Вы знаете, как кириллицей записать ʤ? Если речь о транскрипции, то почему не говорите «па-ламент», а «парламент»? Почему не «дайрект», а «директор» или не «пру(о)тикл», а «протокол»?

Дело, похоже, не в звучании — дело в устоявшихся формах. JavaScript — это слово из тех далёких бархатных времён, когда сайты писались на чистом HTML, а wap был на пике популярности. Кстати, а как вы произносите HTML и wap? Большинство говорит «эйч-тэ-эм-эль» и «вап», хотя правильнее было бы «эйч-ти-эм-эл» и «уап».

Задолбали же! Я могу быть граммар- Nazi, но меня раздражает ваше неуместное англоязычное калькирование. Русский язык адаптирует слова под свои правила и ритм. Через десять лет, вы сами будете говорить «риэкт», потому что «иди послушай, как это звучит на английском, дурачок». Так вот, найдите меня тогда и скажите, что всё это время говорили неправильно.

Давайте будем честными — язык живёт и меняется, и это прекрасно!
🤡1
#News #Linux

На прошлой неделе в мире open-source разработки разразилась значимая новость: ряд русских мэйнтейнеров был исключён из числа ответственных за изменения в коде ядра Linux. Обсуждений много (в том числе и в этом каеале), но фактов — не так уж и много. Давайте попробуем разобраться.

С одной стороны, ситуация кажется не такой уж критической: код ядра всё равно открыт. Кто угодно может его использовать, копировать и вносить изменения. Но если подумать глубже, многое становится яснее.

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

Основные вопросы, которые стоит задать:
- Вырастет ли стоимость разработки и поддержки ПО из-за этого исключения?
- Может ли возникнуть необходимость в создании собственного форка, аналогичного уже существующим проектам?

Создание своего форка — это, конечно, вариант, но для этого нужны значительные ресурсы. Примером успешного форка может служить Angie, который уже сейчас показывает лучшие результаты, чем Nginx. Но хватит ли сил и ресурсов у российских разработчиков для создания полноценного форка ядра Linux?

Может, стоит объединиться с Китаем для совместной работы над подобным проектом? Это вполне реализуемая идея, учитывая текущие тенденции. Мы наблюдаем, как интернет и технологические сферы становятся более сегментированными. В скором времени может случиться так, что у каждого будет свой "локальный" Linux.

Важно понимать, что ситуация невыгодна ни одной из сторон. Эксклюзия русских мэйнтейнеров не принесёт пользы ни ядру, ни самим разработчикам. Напротив, это может привести к тому, что мы потеряем часть ценного опыта и знаний, которые были вложены в развитие ядра Linux.
#Linux

Залетел на первую "работу" с требованиями в знании Линукса. Честно предупредил на собеседовании, что в этом деле я нуб. Ответили: "Не переживай, разберешься!" Ну, в принципе, пока разбираюсь, но это просто ад! 😩

Последние две недели изучал администрирование Линукса с нуля. Весь контент для начинающих начинается с фразы: "Линукс — это дно, там все настраивать нужно и все через задницу". Но, говорят, это устаревшая инфа. Я так обрадовался! Помню, в школе устанавливал Ubuntu 7-ю версию и еле справлялся.

Но нихрена! 🤯
Да, у вас будет кайф, когда выучите основные команды и начнете ворочать файлами через терминал, как настоящий хакер. Но чтобы к этому прийти, нужно либо искренне интересоваться, либо иметь силу воли на уровне "Начать программировать на BrainFuck".

Не представляю, что должно произойти, чтобы в обычной жизни я сказал себе: "О, да, открою-ка я Линукс, будет удобно!"

В общем, ребята, держитесь, если у вас такая же ситуация. Мы справимся! 💪
1👍1