METAPROGRAMMING Telegram 18
Часто считается, что (любой) программист должен знать, для начала:
— обязательно язык Си (почему именно Си, обычно уточняют неубедительно)
— матан на уровне второго курса технического ВУЗа
— алгоритмы и структуры данных на уровне книги Кернигана и Ритчи

Это вроде как даёт "прочную базу". До идеи "прочной базы" потенциальный бросивший учиться программированию заинтересованный студент доходит не своим умом, ему это наглядно объясняют либо старшие коллеги, либо вопросы к собеседованиям FAANG (устоявшаяся аббревиатура по названию крупнейших IT-компаний: Facebook, Apple, Amazon, Netflix, Google).

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

В целом, конечно, и жалко человека, застрявшего в вечных "поисках базы"; с другой стороны: падающего подтолкни. Поэтому добавим к списку выше следующее:
— знание системы команд x86 и языка ассемблера
— знание основ дизайна схем на языках высокого уровня (Verilog и т. п.) и основных архитектур процессоров
— знание основ API целевых операционных систем (Windows, Linux, ...)
— знание принципов разработки языков программирования (парсеры, лексеры, грамматики, и т. д.)
— знание многоуровневой модели сетевых протоколов и основных протоколов стека TCP/IP

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

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

#programming #education



tgoop.com/metaprogramming/18
Create:
Last Update:

Часто считается, что (любой) программист должен знать, для начала:
— обязательно язык Си (почему именно Си, обычно уточняют неубедительно)
— матан на уровне второго курса технического ВУЗа
— алгоритмы и структуры данных на уровне книги Кернигана и Ритчи

Это вроде как даёт "прочную базу". До идеи "прочной базы" потенциальный бросивший учиться программированию заинтересованный студент доходит не своим умом, ему это наглядно объясняют либо старшие коллеги, либо вопросы к собеседованиям FAANG (устоявшаяся аббревиатура по названию крупнейших IT-компаний: Facebook, Apple, Amazon, Netflix, Google).

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

В целом, конечно, и жалко человека, застрявшего в вечных "поисках базы"; с другой стороны: падающего подтолкни. Поэтому добавим к списку выше следующее:
— знание системы команд x86 и языка ассемблера
— знание основ дизайна схем на языках высокого уровня (Verilog и т. п.) и основных архитектур процессоров
— знание основ API целевых операционных систем (Windows, Linux, ...)
— знание принципов разработки языков программирования (парсеры, лексеры, грамматики, и т. д.)
— знание многоуровневой модели сетевых протоколов и основных протоколов стека TCP/IP

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

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

#programming #education

BY Metaprogramming


Share with your friend now:
tgoop.com/metaprogramming/18

View MORE
Open in Telegram


Telegram News

Date: |

Members can post their voice notes of themselves screaming. Interestingly, the group doesn’t allow to post anything else which might lead to an instant ban. As of now, there are more than 330 members in the group. With the administration mulling over limiting access to doxxing groups, a prominent Telegram doxxing group apparently went on a "revenge spree." How to create a business channel on Telegram? (Tutorial) 6How to manage your Telegram channel? While the character limit is 255, try to fit into 200 characters. This way, users will be able to take in your text fast and efficiently. Reveal the essence of your channel and provide contact information. For example, you can add a bot name, link to your pricing plans, etc.
from us


Telegram Metaprogramming
FROM American