Наблюдение за жизнью через код


«Простота — душа эффективности».

— Остин Фриман

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

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

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

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

Сейчас я пишу это как студент, только что завершивший первый из пяти этапов обучения в рамках программы Software Engineering Bootcamp в Flatiron School в Денвере, и за последние три недели изучения HTML, CSS и JavaScript я пришел к некоторым наблюдениям, которые хотел бы хотя бы попытаться выразить словами.


Узоры, распространяющиеся на эфир 🧬

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

Эфирный: относящийся к небесам или духовному миру или плоскости существования.

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

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

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

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

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

Точно так же JavaScript, HTML и CSS в сочетании друг с другом и по отдельности позволили мне прийти к новым и знакомым осознаниям, о которых я расскажу в оставшейся части этого поста.


Коммуникация — это 🔑

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

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

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

Хотя это может звучать немного банально, я считаю, что это достойно того, чтобы затронуть эту тему.


Встретимся в функции 🥳.

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

Функция JavaScript — это блок кода, предназначенный для выполнения определенной задачи.

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

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

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

smile, you are awesome!
Вход в полноэкранный режим Выход из полноэкранного режима

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


Традиционные функции

function encouragement(smile) {
    console.log(smile, "you are awesome!")
};
encouragement("smile")
//result
//smile, you are awesome!
Вход в полноэкранный режим Выход из полноэкранного режима

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


2. Анонимные функции

const encouragement = function (smile) {
    console.log(smile, "you are awesome!");
};
encouragement("smile")
//result
//smile, you are awesome!
Вход в полноэкранный режим Выйти из полноэкранного режима

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


3. Функции со стрелками

const encouragement = (smile) => console.log(smile, "you are awesome!");
encouragement("smile")
//result
//smile, you are awesome!
Войти в полноэкранный режим Выход из полноэкранного режима

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


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

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

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


Меньше — значит больше 🤏

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

«Успех редко определяется качеством ваших идей. Но он часто определяется качеством вашего исполнения».

— Джефф Этвуд Эффективное программирование: Больше, чем написание кода

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

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


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

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


const a = 'smile'
const b = 'a shining star'
const add = (a,b) => (`${a}, you are ${b}!`)
console.log(add(a,b))
Вход в полноэкранный режим Выйти из полноэкранного режима

Эта функция вернет в консоль следующий текст:

//smile, you are a shining star!
Вход в полноэкранный режим Выйти из полноэкранного режима

Последний пример стрелочной функции:

phrase = “smile, you are amazing!”
phrase => expression
console.log(param) // this would return:
Resulting in the following phrase:

//smile, you are amazing!
Ввести полноэкранный режим Выйти из полноэкранного режима

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

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

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


Заключение 🧠

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

«Совершенство достигается не тогда, когда больше нечего добавить, а скорее тогда, когда больше нечего отнять».

— Антуан де Сент-Экзюпери

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

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

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


«Программирование, по сути, должно стать актом уменьшения сложности до простоты».

— Макс Канат-Александр Простота кода: Основы программного обеспечения

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

ʕっ- ᴥ — ʔっ Спасибо, что читаете!


С любовью,

НЕССА КОДО

Оцените статью
devanswers.ru
Добавить комментарий