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

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

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

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

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

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

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

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

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

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

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

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

Вы пропустили

AEGIS Algorithms Android Angular Apache Airflow Apache Druid Apache Flink Apache Spark API API Canvas AppSec Architecture Artificial Intelligence Astro Authentication Authorization AutoGPT AWS AWS Aurora AWS Boto3 AWS EC2 AWS Lambda Azure Babylon.js Backend bash Beautiful Soup Bento UI Big Data Binary Tree Browser API Bun Career Cassandra Charts ChatGPT Chrome Extension Clean Code CLI ClickHouse Coding Codux Combine Compose Computer Context Fusion Copilot Cosmo Route CProgramming cron Cryptography CSS CTF Cypress DALL-E Data Analysis Data science Database dbt dbt Cloud deno Design Design Patterns Detekt Development Distributed Systems Django Docker Docker Hub Drizzle DRY DuckDB Express FastAPI Flask Flutter For Beginners Front End Development Game Development GCN GCP Geospatial Git GitHub Actions GitHub Pages Gitlab GMS GoFr Golang Google Google Sheets Google Wire GPT-3 GPT3 Gradio Gradle Grafana Graphic Design GraphQL gRPC Guidance HMS Hotwire HTML Huawei HuggingFace IndexedDB InfoSec Interview iOS Jackknife Java JavaScript Jetpack Compose JSON Kafka Kotlin Kubernetes LangChain Laravel Linux LlaMA LLM localStorage Logging Machine Learning Magento Math Mermaid Micro Frontends Mobile Mobile App Development mondayDB MongoDB Mongoose MySQL Naming NestJS NET NetMock Networks NextJS NLP Node.js Nodejs NoSQL NPM OOP OpenAI OTP Pandas PDF PHP Playwright Plotly Polars PostgreSQL Prefect Productivity Programming Prometheus Puppeteer Pushover Python Pytorch Quarkus Rabbitmq RAG Ramda Raspberry Pi React React Native Reactor Redis REST API Revolut Riverpod RProgramming Ruby Ruby on Rails Rust Scalene SCDB ScyllaDB Selenium Servers Sklearn SLO SnowFlake Snowkase Software Architecture Software Development Solara Solid Spring Boot SQL SQLite Streamlit SudoLang Supabase Swift SwiftUI Tailwind CSS Taipy Terraform Testing Transformers TURN TypeScript Ubuntu UI Design Unix UX UX Design Vim Vite VSCode Vue Web Architecture Web Components Web Development Web Frameworks Web Scraping Web-разработка Webassembly Websocket Whisper Widgets WordPress YAML YouTube Zed Наука о данных Разное Тренды

Как исследовать и визуализировать данные МО для обнаружения объектов на изображениях