Программер
50 subscribers
107 photos
86 links
Канал о программировании, с интересной иформацией.
Download Telegram
Повышаем свою производительность!

--> Ставьте ясные и четкие цели. Неукоснительно соблюдайте их.

--> Не отвлекайтесь на второстепенные задачи. Сначала делайте главное/основное.

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

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

--> Пытайтесь высыпаться.

--> Старайтесь больше двигаться.
Во-первых:
--> Каждый живой человек рожден для движения. Движение - жизнь.
Если вы мало двигаетесь - страдает ваше здоровье - вы сами.
Во-вторых:
--> При активном движении лучше циркулирует кровь, потребляется больше кислорода, активнее выводятся продукты распада. Вы чувствуете себя лучше, бодрее, производительнее.

--> Постоянно планируйте и записывайте свои действия/мысли. Ведите дневник.


--> Как можно меньше загружайте мозг ненужной информацией! Освободите себя от
информационного мусора!


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

--> Где позволительно, используйте готовые решения. Не изобретайте по сто раз велосипед. Это существенно ускорит вашу продуктивнось, и даст возможность не застревать на малозначительных деталях.
👍1
Избавьте свой мозг от информационного мусора! Прекратите тратить бесценные ресурсы мозга на переработку ненужной и вредной информации! Уберите ненужные мысли из головы!

--> Отвлекитесь! Займитесь активными видами спорта, танцами, прогулками.

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

--> Прекращайте засорять мозг ненужной информацией из интернета/радио/телевизора. Читайте только хорошие и нужные книги, смотрите только нужный и полезный контент.

--> В наш век информационного переизбытка очень важно уметь фильтровать поступающую информацию, и не тратить драгоценные мыслительные ресурсы на потребление тонн вредного контента.
👍2
#people

Линус Торвальдс. Финно-американский программист. Создатель ядра Linux.
Его циататы:
--> Все мы знаем, что Linux великолепен. Он выполняет бесконечные циклы за пять секунд.
--> Хотите путешествовать по миру и учавствовать в куче разных конференций? Просто напишите Linux.
--> Видите ли, чтобы написать систему вроде Linux, недостаточно быть хорошим программистом, нужно быть еще хитрым ублюдком.
--> Можете забыть про празднование нового года, и просидеть всю ночь перед компьютером, копаясь в новой и усовершенствованной версии ядра.
#people

Цитаты от Джона Кармака.

--> Сегодня программистам приходится проще: дешевый подержанный компьютер, диск с Linux, учетка в Интернете — и у вас есть все инструменты для достижения любого уровня программирования, к которому вы стремитесь.

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

--> Приятно иметь игру, которая продается миллионными тиражами.

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

--> Совсем недавно мы были счастливы, что у наших персонажей три треугольника вместо носа. Теперь у них есть поры и родинки.

--> Мне нравится думать, что я хорошо разбираюсь в том, что делаю.

--> Cосредоточенная, тяжелая работа - вот настоящий ключ к успеху.
#people

Законы Линуса Торвальдса:

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

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

--> Теория и практика иногда сталкиваются. Когда это случается, теория проигрывает. Всегда.
День программиста.

День программи́ста — профессиональный праздник в РФ, отмечаемый в 256-й день года. Число 256 (28) выбрано потому, что это количество различных значений, которые можно выразить с помощью восьмиразрядного байта. Также это максимальная целая степень числа 2, которая не превышает количества дней в году (365 или 366).
В невисокосный год данный праздник выпадает на 13 сентября, в високосный — на 12 сентября.
Хороший программист.

Хороший программист на порядок продуктивнее среднего. Отличный программист на несколько порядков продуктивнее среднего. Это правда. Исследования, проводящиеся с 1960-х годов, чётко это показывают. Плохой программист контрнепродуктивен: он приносит больше вреда, чем пользы.
Проще выбросить плохой код на помойку и начать заново, чем изменять его.
Хороший программист

--> В курсе последних новинок.
--> Работа в радость, как хобби.
--> Умеет создать рабочий продукт.
--> Имеет несколько своих проектов.
--> Настойчив, упорен, и упрям. Никогда не сдается.
--> Всегда ищет собственный путь к решения задач.
--> Имеет широкий кругозор в различных областях.
--> Не чужд работать в коллективе.
Энтропическая ошибка целостности.

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

Многие говорят, что программисты скоро будут невостребованы?! Чушь в квадрате. Технократическая цивилизация живет и здравствует благодаря программам. Вы посещаете соцсети? Осуществляете платежи через электронную карту, или смартфон? Смотрите современные фильмы? Играете на компьютере? Пользуетесь интернетом, чтобы почитать новости или книги? А как насчет станков, роботов, панелей управления холодильником или электроплитой? А в вашей машине есть микропроцессор? Да и не один.
А как сегодня работают бухгалтеры? Пользуются деревянными счетами? А как происходит учет посетителей в магазине, клубе, ресторане, на любом мероприятии? А как обрабатывается и где хранится информация от систем видеонаблюдения? Ученые - физики, математики, инженеры, им тоже нужны программы для их работы - расчетов, исследований, экспериментов.
И все это работает благодаря языкам программирования. Программы необходимо постоянно улучшать, убирать недочеты, оптимизировать. Постоянно появляются новые технологии, развиваются старые. Количество программистов и требования к ним, будут постоянно увеличиваться.
Скоро будет считаться хорошим тоном владения хотя бы одним языком программирования среднестатистическим человеком. Программисты будут востребованы всегда.
Что такое CDN?
CDN - Content Delivery Network - Сеть Доставки Контента. Состоит из некоторого количества серверов, либо дата-центров, возможно, разбросанных по всему миру. С этих серверов можно подключать находящуюся в них информацию/контент, в любой точке мира, и отображать на сайте.
Например подключим к нашему сайту CDN фреймворка Bootstrap. Bootstrap - набор инструментов для создания сайтов. Делаем домашнюю страницу, внутри которой находится контент от Bootstrap.
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap demo</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
</head>
<body>
<h1>Hello, world!</h1>
</body>
</html>
#game

Magnavox Odyssey — первая в мире домашняя игровая приставка.

Разработана небольшой командой во главе с Ральфом Бером. Приставка выпущена компанией Magnavox в сентябре 1972 года в Соединённых Штатах и годом спустя — за рубежом. Odyssey заключена в чёрно-бело-коричневый корпус, подключаемый к телевизору. Вместе с приставкой используются два игровых контроллера. Приставка способна выводить на экран три квадратные точки, поведение которых меняется в зависимости от установленной игры. Игроки для создания визуальных эффектов могут размещать на экране телевизора цветные пластиковые накладки. В каждой игре один или два игрока управляют своими точками с помощью своих контроллеров.
#game

Сменный картридж первой в мире игровой приставки. Magnavox Odissey.
#people

Ральф Вильям Госпер.
Родился 26 апреля 1943 года. Американский математик и программист. Причисляется к основателям движения хакеров. В школе увлекался ракетомоделизмом, пока один из его друзей не получил смертельную инфекцию мозга, от несчастного случая с ракетой.
В 1961 году поступил в Массачусетский технологический институт, где учился у Джона Маккарти и Марвина Минского. В 1965 году получил степень бакалавра.
Преподавал в Стэнфордском университете, работал на Xerox PARC, Wolfram Research, Ливерморскую национальную лабораторию.
Некоторые достижения:
--> Билл Госпер заинтересовался игрой "Жизнь" после того, как она была изобретена Джоном Конвеем. Отыскал в ней различные примечательные конфигурации.
--> В 1973 году открыл и описал кривую Госпера.
--> С октября 1985 года по январь 1986 года удерживал мировой рекорд по вычислению числа пи: 17 526 200 десятичных знаков.
--> Составил множество геометрических головоломок на упаковку.
#algorithm

Задача упаковки.
Задачи упаковки — класс задач оптимизации в математике, в которых пытаются упаковать объекты в контейнеры. Цель упаковки — либо упаковать отдельный контейнер как можно плотнее, либо упаковать все объекты, использовав как можно меньше контейнеров. Многие из таких задач могут относиться к упаковке предметов в реальной жизни, вопросам складирования и транспортировки.
#algorithm

Задача о рюкзаке.
Задача о рюкзаке — задача комбинаторной оптимизации. Своё название получила от конечной цели: уложить как можно большее число ценных вещей в рюкзак при условии, что вместимость рюкзака ограничена. С различными вариациями задачи о рюкзаке можно столкнуться в экономике, прикладной математике, криптографии и логистике.
Дискретная математика.
Изучает различные объекты/модели/структуры, которые можно подсчитать, манипулировать и взаимодействовать с ними. Представьте, что весь мир это большой конструктор. Манипуляция деталями этого конструктора, позволяет создавает бесчисленное множество разнообразных вещей/взаимодействий/процессов.
Дискретная математика изучает взаимовлияние/поведение различных объектов между собой. Наиболее значимые разделы дискретной математики:
--> Комбинаторика. Изучает различные перестановки, комбинации объектов.
--> Теория графов.
--> Теория конечных автоматов. Разнообразных вычислительных машин, которые решают поставленные перед ними задачи, при помощи своей логики действий.
#graph

Теория графов.
Раздел дискретной математики, изучающий графы, одна из ветвей топологии. В самом общем смысле граф — это множество точек вершин/узлов, которые соединяются множеством линий рёбер/дуг. Теория графов (то есть систем линий, соединяющих заданные точки) включена в учебные программы для начинающих математиков, поскольку:
--> Обладает наглядностью.
--> Проста в объяснении и имеет сложные нерешённые задачи.
--> Не имеет громоздкого математического аппарата.
--> Имеет выраженный прикладной характер.
#graph

Граф.
Граф - математическая модель (как правило реальной) любой системы, которая обладает парными связями.
Например:
--> Сеть автодорог.
--> Взаимодействие людей между собой.
--> Взаимосвязь океанических течений.
--> Электрическая схема.
--> Сеть трубопроводов, электропроводов.
--> Сеть интернет.

Любой граф состоит из нескольких объектов, называемых вершинами/узлами, и связей между ними, называемых ребрами/дугами. Например, графом можно представить снабжение предприятия, по производству металлоконструкций, где вершинами являются поставщики электроэнергии, материала(стали, инструмента, расходных материалов, станков), рабочий персонал, само предприятие, а ребрами, связи между ними.
#algorithm

Проблема маршрутизации транспортного средства - Vehicle Routing Problems - VRP.
Одна из задач комбинаторной оптимизации, цель которой выработать оптимальный/наиболее выгодный набор маршрутов для заданного набора клиентов.
Эта задача имеет связь с двумя знакомыми задачами. Такими как Задача коммивояжера - Traveling Salesman Problem - TSP и Задача об упаковке рюкзака - Bin Packing Problem - BPP.
Оптимизация доставки товара и выбора оптимального маршрута требуется широкому кругу компаний задействованных в перевозке и логистике.
Кроме того в реальных задачах учитываются дополнительные факторы:
--> Маршрутизация с ограничением по грузоподъемности - capacitated VRP - CVRP.
--> Маршрутизация с ограничением по времени - VRP with Time Windows - VRPTW.
--> Маршрутизация с несколькими депо - Multiple Depot VRP - MDVRP.
--> Маршрутизация с возвратом товаров - VRP with Pick-Ups and Delivering - VRPPD.
--> Маршрутизация с различным транспортом - Split Delivery VRP - SDVRP.
--> Маршрутизация со случайными данными - Stochastic VRP - SVRP.