Что почитать начинающему программисту на новогодних выходных

Что почитать начинающему программисту на новогодних выходных Длиннопост, Программирование, Книги, IT, Python, Linux, Алгоритм, Интересное
Вы смотрите срез комментариев. Показать все
36
Автор поста оценил этот комментарий

Совет на самом деле какой-то дилетантский :\

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

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

раскрыть ветку (34)
14
Автор поста оценил этот комментарий
Я не удержусь и скопирую это сюда.

---------------------------------------------------


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


Построенные на теории массового обслуживания и стандарте GSM сети мобильной связи; PHP-скрипты, исполняющиеся на удаленных серверах и передающие свою выдачу через Ethernet по TCP/IP на компьютеры с NDIS-драйверами; процессоры, переупорядочивающие и спекулятивно исполняющие наборы инструкций для того, чтобы скомпенсировать вызванную ограничениями полупроводниковой электроники и скоростью света остановку роста тактовой частоты; рассчитанные на ЭВМ корпуса самолетов и автомобилей, лекарства и структуры ДНК; компьютерные игры, ради крохотного блика в которых пишутся мегабайты заполненных интегралами Френеля статей; электронные фильмы и книги; алгоритмы NLP и TreeNet, вызывающие нам из огромных баз данных поисковую выдачу — вот то, что окружает нас каждый день благодаря программистам, благодаря оригинальным подходам и фундаментальным знаниям, благодаря продуманной и отточенной десятилетиями методологии разработки и управления сложностью ПО.


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


C++, стандарт, Comeau, 1TBS, Страустрап/D&E/Джосаттис/Вандервуд, Дьюхэрст/Мейерс/Саттер, RAII/copy-and-swap/exception-safety, правило пяти, Александреску/Абрахамс-Гуртовой, type erasure, CRTP, NVI, SFINAE, Koenig lookup, Duff's device, Boost, Сик-Ламсдейн/Карлссон, TR on C++ performance, тест Степанова, forwarding problem/move semantics, SPECS


Компиляторы, особенности реализации стандарта, ограничения реализации, интринсики, отличия стандартных библиотек (контейнеры, rand), ABI, реализация виртуальных функций, виртуального наследования, исключений, RTTI, switch, указателей на функции и методы; оптимизации, copy elision (RVO, NRVO), sizeof на различных платформах, дефайны компилятора и среды, __declspec, ключи компилятора, empty-base optimization, статическая и динамическая линковка, манглинг, распределенная компиляция, precompiled header, single compilation unit, (strict) aliasing/restrict, inline/_forceinline, volatile


Мультитредность, обедающие философы, deadlock/livelock/race condition/starvation, атомарность, lock инструкции процессора, memory model/barrier/ordering, CAS или LL/SC, wait/lock/obstruction-free, ABA problem, написание lock-free контейнеров, spin-lock, TLS/per-thread data, закон Амдала, OpenMP, MPI, map-reduce, critical section/mutex/semaphore/condition variable, WaitForSingleObject/WaitForMultipleObjects, green thread/coroutine, pthreads, future/deferred/promise, модель акторов


Язык ассемблера, Зубков/Хайд/Дреппер/Касперски/Фог/Абраш, x86, FPU/MMX/SSEn/AVX, AT&T и Intel-синтаксис, masm32, макросы, стек, куча/менеджеры кучи, соглашения вызова, hex-коды, машинное представление данных, IEEE754, little/big endian, SIMD, аппаратные исключения, прерывания, виртуальная память, реверсинг, срыв стека и кучи, return oriented programming, alphanumeric shellcode, L1/L2/RAM/page fault и их тайминг, язык ассемблера ARM


Аппаратное обеспечение, Хоровиц-Хилл/Титце-Шенк/От физики к Си от panchul, полупроводниковая электроника/спинтроника/фотоника, транзистор, триггер, схемотехника, микрокод, технология создания процессоров, logic synthesis, static timing analysis, FPGA, Verilog/VHDL/SystemC, SISAL, Arduino, устройства памяти (ROM → EEPROM, RAM, SSD, HDD, DVD), RISC/CISC, Flynn's taxonomy ([SM]I[SM]D), принстонский и гарвардский подход, архитектуры процессоров, архитектуры x86, VID/PID


Процессоры, конвейеризация, hyper-threading, out-of-order execution, спекулятивное исполнение, static/dynamic branch prediction, префетчинг, множественный ассоциативный кэш, кэш-линия/кэш-промах, такты, кольца защиты, память в мультипроцессорных системах (SMP/NUMA), тайминг памяти


Дискретная математика, K2, теорема Поста, схемы, конечные автоматы (ДКА и НДКА), автомат Калашникова, клеточные автоматы


Вычислимость, машина Тьюринга, нормальные алгоритмы Маркова, машина Поста, диофантовы уравнения Матиясевича, лямбда-функции Черча, частично рекурсивные функции Клини, комбинаторное программирование Шейнфинкеля, Brainfuck, эквивалентность тьюринговых трясин, проблема останова и самоприменимости, счетность множества вычислимых функций, RAM-машина, алгоритм Тарского, SAT/SMT-солверы, теория формальных систем


Языки программирования, грамматики, иерархия Хомского, теорема Майхилла-Нероуда, лемма о накачке и лемма Огдена, алгебра Клини, НДКА → ДКА, алгоритмически неразрешимые задачи в формальных языках, Драгонбук, Фридл, регекспы и их сложность, PCRE, БНФ, Boost.Spirit + Karma + Qi/Ragel, LL, LR/SLR/LALR/GLR, PEG/packrat, yacc/bison/flex/antlr, статический анализ кода, компиляция/декомпиляция/обфускация/деобфускация, Clang/LLVM/XMLVM/Emscripten, GCCXML, OpenC++, построение виртуальных машин, JiT/AoT/GC, DSL/DSEL


Алгоритмы и комбинаторная оптимизация, Кормен/Скиена/Седжвик/Кнут/Ахо-Хопкрофт-Ульман/Пападимитриу/Шрайвер-Голдберг/Препарата-Шеймос/e-maxx.ru, структуры данных, алгоритмы, сложность, символика Ландау, теорема Акра-Баззи, time-space tradeoff, классы сложности, NP-полные задачи, КМП, графы и деревья, потоки в сетях, матрица Кирхгофа, деревья поиска (особенно RB-дерево и B-дерево), occlusion detection, куча, хэш-таблицы и идеальный хэш, сети Петри, алгоритм русского крестьянина, метод Карацубы и матричное умножение Винограда-Штрассена, сортировки, жадные алгоритмы и матроиды, динамическое программирование, линейное программирование, diff-алгоритмы, рандомизированные алгоритмы и алгоритмы нечеткого поиска, псевдослучайные числа, нечеткая логика


Численные методы, дихотомия/метод Ньютона, интер- и экстраполяция, сплайны, метод Гаусса/Якоби/Зейделя, QR и LU-декомпозиция, SVD, МНК, методы Рунге-Кутты, метод Адамса, формулы Ньютона-Котеса, метод Ритца, метод Бубнова-Галеркина, метод конечных разностей/элементов, FFT/STFT, сходимость и устойчивость


Машинное обучение, Рассел-Норвиг/Bishop, подходы к моделированию AI, переобучение/кроссвалидация, байесовские сети, нейросети, сети Кохонена, Restricted Boltzmann machine, градиентный спуск/hill climbing, стохастическая оптимизация (метод Монте-Карло, метод отжига, генетические алгоритмы, муравьиные алгоритмы), SVM, gradient boosting, кластерный анализ, метод главных компонент, LSH, обучение с подкреплением, MDP, information retrieval/data mining/natural language processing, машинное зрение, Szeliski, OpenCV, image processing, OCR, фильтры Собеля, каскад Хаара, Viola-Jones framework, SURF, введение в психофизиологию зрения, IPython/pandas/scikit-learn


Теория информации, сжатие, Хаффман, RLE, BWT, LZ, коды коррекции ошибок, сжатие с потерями (изображения, аудио, видео), информационная энтропия, формула Шеннона, сложность Колмогорова


Криптография, Шнайер/Ященко, Принцип Керкгоффса, симметричная (DES, AES), асимметричная (RSA), качество ГПСЧ, алгоритм Диффи-Хеллмана, эллиптические кривые, хэширование (MD5, SHA, CRCn), DHT, криптостойкость, криптоатаки (атака гроссмейстера), WEP/WPA/WPA2 и атаки на них, цифровая подпись и сертификаты, PKI, HTTPS/SSL, доказательство с нулевым разглашением, пороговая схема


Математика, Кнут-Грэхем-Паташник/Зорич/Винберг, Spivak/Dummit-Foote, матан, линал, комплан, функан, диффгем, теория чисел, дифуры/интуры/урчпы/вариационное исчисление/оптимальное управление, производящие функции, ряды, комбинаторика, теорвер/матстат/слупы/теория массового обслуживания, цепи Маркова, интегральные преобразования (Фурье, Лаплас, вейвлет), NZQRCHOS, матпакеты (Mathematica, Maple)


Физика, правила Кирхгофа, закон Джоуля-Ленца, комплексное сопротивление, скорость и частота света, уравнения Максвелла, лагранжиан и гамильтониан


Химия, стехиометрия, химия кремния :)


Архитектура и стиль кода, Макконнелл/Фаулер/Лебланк/Гамма/Александреску-Саттер/Буч, защитное программирование, паттерны, SOLID/GRASP/KISS DRY SPOT/YAGNI, UML, OOP (Smalltalk), OOD/OOA, метрики кода


Методологии разработки, Waterfall/RUP/Agile/Scrum/Kanban/XP, TDD/BDD, CASE


Тестирование, юнит-тесты, функциональное, нагрузочное, интеграционное тестирование, тестирование UI


Инструментальные средства разработки, IDE, IntelliSense, отладчики (VS/Olly/WinDbg/kdb/gdb) и трейсеры (strace/ltrace), DWARF debug information format, дизассемблеры и декомпиляторы (IDA/HexRays/Reflector), системы контроля версий (SVN, GIT), merge/branch/trunk, системы именования файлов и бранчей, continuous integration, ant, code coverage, статический анализ (lint, cppcheck), динамический анализ (valgrind, фаззинг), верификация и валидация ПО (Frama-C, RAISE (RSL), Coq), профайлинг, багтрекеры, документирование кода, системы сборки (CMake), пакетные менеджеры (NuGet)


Фреймворки, Qt, moc и метаинформация, концепция слот-сигнал, Саммерфилд-Бланшет/Шлее, PoCo, промышленные библиотеки: GMP, i18n, lapack, fftw, pcre


...
раскрыть ветку (12)
5
Автор поста оценил этот комментарий

Операционные системы, Silberschatz/Рихтер/Соломон-Руссинович/Робачевский/Вахалия/Стивенс/Love/Linux Kernel Internals, менеджер памяти, менеджер кучи и ее устройство (LAL/LFH/slab), менеджер устройств, менеджер процессов, context switch, реальный и защищенный режим, исполнимые файлы (PE/ELF/Mach), объекты ядра, отладочные механизмы (strace/ptrace/dtrace/pydbg, Debug API) и минидампы, bash, сетевой стек и высокопроизводительные сервера, netgraph, CR0, IPC, оконная подсистема, система безопасности: ACE/ACL и права доступа, технологии виртуализации, RTOS (QNX), программирование драйверов, IRQL, IRP, файловые системы, BigTable, NDIS/miniport/FS drivers/filter driver, Mm-, Io-, Ldr-функции, DKOM и руткиты, GDT/IDT/SDT, ядра Windows/Linux/BSD, POSIX


Компонентно-ориентированные модели, Роджерсон/Таварес, COM/OLE/ActiveX/COM+/DCOM RPC, ATL, апартменты, моникеры, MIDL, XPCOM, CORBA, TAO, D-Bus


Сеть, Стивенс, OSI model/Internet model, Ethernet, TCP/IP, TCP window, алгоритм Нейгла, сокеты, Protocol buffers/Thrift/Avro/ASN.1, AMQP, ICMP, роутинг/BGP/OSPF, ARP, атака Митника, syn flood, HTTP/FTP, P2P/DHT, DHCP, SMB/NBNS, IRC/XMPP, POP3/SMTP/ESMTP/IMAP, DNS, WiFi/WiMax/GSM/CDMA/EDGE/Bluetooth/GPS, ACE, Wireshark


Графика и GPGPU, алгоритм Брезенхема, цветовые модели, трассировка лучей vs полигональная графика, OpenGL/GLSL/Open Inventor, DirectX/DirectShow/DirectAudio/HLSL, stencil/depth/alpha-test, графический конвейер в DirectX 11, шейдеры, модели освещения (Фонг), пропускная способность, fillrate, OpenCL/CUDA/AMP, ландшафты, лоды, тени, deferred shading, текстурирование и фильтрация, антиалиасинг, HDR, tone mapping, virtual/augmented reality


Форматы, XML/XSLT/XPath/XMLStarlet/DOM/SAX, RTF/ODF, JSON/BSON/bencode, YAML, JPEG/PNG/WebP, AVI/MPEG/RIFF/WAV/MP3/OGG/WebM, SVG, Unicode, кодировки однобайтные/UTF-8/UTF-16/UCS-2/UTF-32, проблемы длины и сравнения Unicode-строк


Базы данных, Грубер/Дейт, ANSI SQL, T-SQL, ODBC, MySQL/PostgreSQL/MS SQL/BDB/SQLite/Sphinx, хранимые процедуры, триггеры, алгебра Кодда/А, Tutorial D, нормальные формы, оптимизация и выполнение запросов, структуры данных индексов, транзакции и ACID, CAP-теорема Брюера, NoSQL, key-value storage, шардинг, ORM (C++ ODB), ERD, OLAP, семантическая сеть, triplestore, RDF/Turtle, SPARQL, OWL, Semanticscience Integrated Ontology, reasoner, DBpedia


Прикладное программирование, C#/F#, Шилдт/Троелсен/Рихтер, генерики, yield, linq/plinq, рефлексия, AST, WCF, WinForms/WPF/Silverlight, AOP, фреймворки логгирования, .NET assembly, Scala, Хорстманн/Одерски, pattern matching, макросы/квазицитаты


Квантовые вычисления, алгоритм Шора, квантовая криптография


Функциональное программирование, Haskell/Ocaml/Scheme/Alice или Oz, SICP/TaPL/YAHT/Purely Functional Data Structures/Харрисон-Филд, HOF (map/fold/filter), система типов Хиндли-Милнера, монады, тайпклассы, АТД, dependent types, ленивость/энергичность, логическое программирование (Prolog или Mercury), конкурентное программирование (Erlang или Oz)


Веб-программирование и скриптовые языки, Фланаган/Zend PHP5 Certification Course + Study Guide, Apache/nginx, CGI/FastCGI, PHP/Zend Framework/ReactPHP/Zend Engine/Doctrine или Propel/CodeIgniter или Symphony или Yii, Python/Django/Twisted, Ruby/RoR, ASP.NET MVC, JavaScript/jQuery/React/Google Closure/ExtJS/node.js, ООП в JavaScript, HTML5, CSS3/табличная и блочная верстка, RSS, canvas/WebGL, Ajax/WebSockets, вопросы безопасности (XSS, SQL injection, CSRF), highload, C10k problem, SWIG


Проектирование GUI и представление информации, Раскин/Тафти, юзабилити, основы дизайна и типографики, закон Фиттса, основы верстки, LaTeX


http://sharpc.livejournal.com/67583.html

раскрыть ветку (10)
13
Автор поста оценил этот комментарий

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

раскрыть ветку (8)
1
Автор поста оценил этот комментарий

Это шутка)

Подобных списков, кстати, ещё 2-3, минимум, можно найти.

Автор поста оценил этот комментарий

Ну как я понял из комментария выше - вы же не будете заниматься всем подряд, хватать верхушки. А грамотнее определить для себя одну-две, ну максимум три отрасли. И в этой отрасли обязательно нужно изучить то-то и то-то. Например, если вы решили посвятить себя операционным системам, то вам обязательно нужно разобраться с такими вещами как Silberschatz/Рихтер/Соломон-Руссинович/Робачевский/Вахалия/Стивенс/Love/Linux Kernel Internals, менеджер памяти, менеджер кучи и ее устройство (LAL/LFH/slab), менеджер устройств, менеджер процессов, context switch, реальный и защищенный режим, исполнимые файлы (PE/ELF/Mach), объекты ядра, отладочные механизмы (strace/ptrace/dtrace/pydbg, Debug API) и минидампы, bash, сетевой стек и высокопроизводительные сервера, netgraph, CR0, IPC, оконная подсистема, система безопасности: ACE/ACL и права доступа, технологии виртуализации, RTOS (QNX), программирование драйверов, IRQL, IRP, файловые системы, BigTable, NDIS/miniport/FS drivers/filter driver, Mm-, Io-, Ldr-функции, DKOM и руткиты, GDT/IDT/SDT, ядра Windows/Linux/BSD, POSIX. То же самое применимо к другим отраслям.

Автор поста оценил этот комментарий

Вообще говоря, лично я просто по интересу изучаю очень многое сейчас: БД, нейронные сети, 2д и 3д графику, криптографию, сети, языки, операционные системы. Ну а по учёбе - дискретка, алгоритмы и разное другое.

Зачем мне всё это? Мне интересно.

раскрыть ветку (2)
Автор поста оценил этот комментарий

1 курс?

раскрыть ветку (1)
Автор поста оценил этот комментарий

2ой, но пока не информатика, перевожусь после этой сессии). И пока не знаю, что учить за 2ой, да.

2
Автор поста оценил этот комментарий
Перечитайте заголовок пожалуйста. Потом перечитайте комментарий и снова заголовок. Это просто список книг, которые стоит прочитать. Это не топик как стать программистом и что нужно учить. Спасибо за внимание.
раскрыть ветку (2)
4
Автор поста оценил этот комментарий

По ссылке написано, что это теоретический минимум для программиста.
http://sharpc.livejournal.com/67583.html

1
Автор поста оценил этот комментарий

Это не о твоём посте а о кометарии выше....

3
Автор поста оценил этот комментарий
Сейчас половина читающих испугалась +)
1
Автор поста оценил этот комментарий
Я об этом и говорил, что такой информации море, было бы желание найти.
5
Автор поста оценил этот комментарий

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

раскрыть ветку (11)
5
DELETED
Автор поста оценил этот комментарий

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


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

раскрыть ветку (10)
4
Автор поста оценил этот комментарий

Да заебутся школьники отбирать хлеб у средне-хороших программистов. Школьники обычно стопорятся на низкоценовом сегменте разработки, а дальше ни ногой и демпенгуют они только друг друга, работая за еду. Скиллов и мозгов хватает только на это, потому что. В низкоценовом сегменте и вертятся так.

4
Автор поста оценил этот комментарий
Я пишу о том, что знаю и в чём разбираюсь. Если например проджект менеджер будет писать о том, что нужно знать выбравшим эту профессию, то пускай. А у вас выходит запрет на сферу, нельзя так, люди хотят, люди учатся, знаю что читать, учиться проще. Не более. На спецов всегда будет спрос. Хорошие фирмы олухов не берут. Это ИМХО.
раскрыть ветку (7)
DELETED
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
2
Автор поста оценил этот комментарий
Ну у каждого своё мнение, на мой взгляд такие посты помогают людям, которые только пришли к решению изучать программирование и не знают, какую брать литературу и что учить.
Автор поста оценил этот комментарий

и давно вы программист? и какой?

раскрыть ветку (4)
3
Автор поста оценил этот комментарий
11 лет, веб. андроид, айос, десктоп.
раскрыть ветку (3)
Автор поста оценил этот комментарий

хмм. год где-то 2004й.. ну да, Вас можно ещё понять(если вы не врёте, конечно), в то время книг\информации в интернете было не особо много, по сравнению с тем, что сейчас, попалась какая-то книга, более-менее близкая к теме, читали всё подряд. Теперь же, в первую очередь надо уметь искать\фильтровать информацию. Да и вообще, много ресурсов в сети, в т.ч. и на русском языке, где люди делятся тем, что уже нашли полезного. Короче, вы меня поняли. Хотя, тут люди любят такую ерунду, плюсуют, кидают в закладки, и свято верят, что когда-нибудь ознакомятся. Ага.

1
Автор поста оценил этот комментарий

Ви языки, диалекты дафайте ) Ато десктоп - то еще определение )

раскрыть ветку (1)
5
Автор поста оценил этот комментарий
Python/Django, Java, Ruby on Rails, Go, Swift.
1
Автор поста оценил этот комментарий
то о чём вы говорите верно лишь для нишевой веб разработки с его низким порогом вхождения. Геймдев, большой бизнес и прочие пряники всё-таки для вхождения, понимание и какого-либо развития всё же требую опыт и знание своего дела.
1
Автор поста оценил этот комментарий

Если ты читаешь книжку по программированиб на русском то скорее всего она устарела уже лет 5 назад. 

раскрыть ветку (1)
Автор поста оценил этот комментарий
Ну увы не все могут себе позволить читать в eng формате.
Автор поста оценил этот комментарий
мало узких специалистов в каждой сфер, в основном большинство "тыжпрограммист".
2
Автор поста оценил этот комментарий
 знание баз данных и sql.
есть принципиальная разница между базами данных и sql?))
понять какая область разработки тебе интересна

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


раскрыть ветку (1)
Автор поста оценил этот комментарий

Тссс)) кое где еще используются плоские базы данных и grep наше всё)

1
Автор поста оценил этот комментарий

тут ещё в мусорках тонны длиннопостов в стиле " си плюс плюс за 5 дней"

раскрыть ветку (3)
2
Автор поста оценил этот комментарий
Ну тут нет такого описания. Это просто советы что очитать на новогодних каникулах начинающим программистам.
раскрыть ветку (2)
1
Автор поста оценил этот комментарий

github почитай лучше

1
Автор поста оценил этот комментарий

я заголовки читать умею, повторять не обязательно.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку