All streams
Search
Write a publication
Pull to refresh
-2
-0.4
Пичугин Дмитрий @Dywar

веб программист

Send message
Пришло в голову, напишу.

Изучить ЯП, скажем C# и строить простые аппы, это всегда позиция джуниор.
Аналогия — это азбука, человек выучил алфавит и научился строить небольшие предложения. Это самое простое что можно сделать, на этом этапе проблем меньше всего.
С таким багажом вас берут джуном и учат строить правильные предложения, не больше.

Через N времени, вам дают/вы получаете задания строить целые блоки, небольшие абзацы. Далее это целые главы, как в книгах. У каждой главы есть четкое вступление, основная часть и заключение. Это позиция мидл.

Еще через N времени вы учитесь строить целые книги, с набором глав, в каждой из которой много блоков, в которых много предложений, в которых много слов. И все это дело гармонично сочетается между собой и имеет смысл. Главы разбиты правильно и идут друг за другом, не выводя ИТОГО по середине книги. Вы раздаете задания мидлам, разделяя между ними главы, а джунам небольшие части в них.

И вот это самое сложное, место где развитие бесконечное и не имеет границ. Алфавит знают многие, простые предложения построить могут многие. Но составить из этого красивый рассказ уже искусство.
У меня не было опыта работы, не профильное образование.
Вечерами смотрел видео курсы на youtube, читал книги/статьи, проходил бесплатные курсы на intuit.ru и т.п.

Потом я приехал в новый для себя город с небольшим количеством $, которых хватало на 3-4 месяца снятия одного из самого дешевого жилья и поиска работы.

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

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

Ване нужно прочитать хотя бы одну книгу по C#, например — C# для профессионалов. Тонкости программирования. Или зайти на сайт метанит, и провести там часов 100-150.

C# это в большинстве случаев — web, так что HTML,CSS,JS тоже лишними не станут.
Тут уже поможет — html5book.ru/osnovy-javascript
И видео курс Техностим Web-технологии. (про Diango там мало, пропускаем).
А что с защитой от выполнения чужих команд, существует ли что то подобное авторизации?

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

Станция будет реагировать на команды с телевизора, радио, соседей, улицы?
Например станция включена постоянно, и тут по улицам проезжает авто и человек в громкоговоритель говорит «Алиса переведи все мои деньги на кошелек №», «Алиса включи песню трава у дома» и т.п.
Или реклама той же станции по телевизору, заставит настоящую станцию в квартире повторять то что говорят в рекламе.
Мартин в своей новой книге дал более понятное объяснение этому принципу.
Имеется ввиду пользователь/группа пользователей/актор, тот кто может инициировать изменение.

«Программное обеспечение изменяется для удовлетворения нужд пользователей и заинтересованных лиц. Пользователи и заинтересованные лица как раз и есть та самая «причина для изменения», о которой говорит принцип.»
Нужно кэшивароние — прокси.
Нужен lazy load — прокси.
Нужен контроль доступа — проски.

Нужно имитировать/эмулировать/создать динамическое наследование — декоратор.
Супер, после выхода посмотрю обзоры.
Если она сможет проигрывать кино из бесплатных источников или хотя бы youtube, то думаю куплю такую.
Тоже делаю заметки, в моем случае это OneNote для всего. Пишу в него все интересное что нахожу в книгах, блогах или самостоятельно.
Сложнее всего заставить себя перечитать свои заметки по конкретной теме, что бы лучше запомнилось.
Немного в поддержку человека выше.

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

Автор — www.goodliffe.net

Читать книги по алгоритмам нужно, но это такой же шаг вперед как и изучение фреймворков с которыми работаешь каждый день. Эти направления не исключают друг друга, а хорошо дополняют. Но у первого есть большой плюс, оно редко меняется :)
1) Sysinternals Suite (tcp view)
2) Firewall с логгированием.
3) www.snort.org и подобные.

Это сходу что в голову пришло, больше на лубых курсах по ИБ. PentestIt например.
Оставлю тут — www.cvedetails.com/top-50-products.php?year=2016
С годами ТОП меняется, но Linux там явно не среди последних.
Итак, подумаем, придумаем… :)

1) Текст изменится только в следующем релизе, т.к. выдавать новый только ради текста не имеет смысла, больше возни с выдачей (деплоем). Итого — запилили новый текст в ветке которая для него и создана, а она еще в разработке/тестировании, и в нее возможно еще пару изменений внесут по ходу дела, что откладывает релиз.

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

И статья говорит об этом, «просто» добавили текст.
Без привязки к языку и того что было в шапке:
1) «Применение UML 2.0 и шаблонов проектирования. Введение в объектно-ориентированный анализ, проектирование и итеративную разработку» Крэг Ларман.
2) «Принципы, паттерны и методики гибкой разработки» Роберт Мартин.
3) «Алгоритмы. Теория и практическое применение» Род Стивенс.

Бонус — «Design Patterns via C#» Александр Шевчук, Дмитрий Охрименко, Андрей Касьянов (бесплатно).
Добавлю немного от себя, точнее немного текста из книги «Оптимизация приложений на платформе .NET».

1) Микросхемы памяти типа DDR3 SDRAM дают задержки доступа к памяти порядка 15 наносекунд.
2) Процессоры за это время могут выполнить — десятки (а иногда сотни) инструкций. Явление простоя в ожидании доступа к памяти известно под названием удар о стену памяти.
3) Чтобы увеличить расстояние между приложением и этой «стеной», современные процессоры снабжаются несколькими уровнями внутренней кэш-памяти. L1 ~5 тактов CPU, L2 ~10 тактов, L3 ~40 тактов.
4) Когда процессор обращается к главной памяти (RAM), он читает из нее не один байт или слово, а строку кэша (cache line), размер которой в современных системах составляет 32 или 64 байта. Обращение к любому слову в той же строке кэша уже не будет вызывать промах кэша, пока эта строка не будет вытеснена из кэша.

Например, при суммировании элементов Int32 расположенных в массиве:
При обращении к элементу массива, вначале происходит промах кэша и загрузка строки кэша, содержащей 16 последовательно расположенных целых чисел (строка кэша = 64 байта = 16 целых чисел). Так как доступ к элементам массива выполняется последовательно, следующие 15 чисел оказываются в кэше и при обращении к ним не возникает промаха кэша. Это почти идеальный сценарий с соотношением промахов кэша 1:16.
Задаешь правильный вопрос, получаешь правильный ответ.

Information

Rating
Does not participate
Location
Самара, Самарская обл., Россия
Date of birth
Registered
Activity