Как стать автором
Обновить
0
@alexander-krread⁠-⁠only

Пользователь

Отправить сообщение

8 приемов работы с CSS: параллакс, «липкий» футер и другие

Время на прочтение4 мин
Количество просмотров63K


От переводчика: перевели для вас статью Брета Кэмерона о хитростях в работе с CSS. Многие моменты пригодятся не только новичкам, но и опытным разработчикам.

Эта статья о приемах работы в CSS, узнав о которых, я восклицал: «Агаааа!». Надеюсь, вы тоже сделаете пару открытий.

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

Я покажу несколько приемов и расскажу о принципах их использования в CSS. Сама по себе статья не о сложностях. Наоборот, она призвана сделать вашу работу более комфортной.
Всего голосов 38: ↑37 и ↓1+36
Комментарии17

19 советов по повседневной работе с Git

Время на прочтение14 мин
Количество просмотров287K


Если вы регулярно используете Git, то вам могут быть полезны практические советы из этой статьи. Если вы в этом пока новичок, то для начала вам лучше ознакомиться с Git Cheat Sheet. Скажем так, данная статья предназначена для тех, у кого есть опыт использования Git от трёх месяцев. Осторожно: траффик, большие картинки!

Содержание:
  1. Параметры для удобного просмотра лога
  2. Вывод актуальных изменений в файл
  3. Просмотр изменений в определённых строках файла
  4. Просмотр ещё не влитых в родительскую ветку изменений
  5. Извлечение файла из другой ветки
  6. Пара слов о ребейзе
  7. Сохранение структуры ветки после локального мержа
  8. Исправление последнего коммита вместо создания нового
  9. Три состояния в Git и переключение между ними
  10. Мягкая отмена коммитов
  11. Просмотр диффов для всего проекта (а не по одному файлу за раз) с помощью сторонних инструментов
  12. Игнорирование пробелов
  13. Добавление определённых изменений из файла
  14. Поиск и удаление старых веток
  15. Откладывание изменений определённых файлов
  16. Хорошие примечания к коммиту
  17. Автодополнения команд Git
  18. Создание алиасов для часто используемых команд
  19. Быстрый поиск плохого коммита

Читать дальше →
Всего голосов 152: ↑149 и ↓3+146
Комментарии62

30 команд Git, необходимых для освоения интерфейса командной строки Git

Время на прочтение9 мин
Количество просмотров440K

Git — самая популярная в мире распределённая система контроля версий. Линус Торвальдс, разработчик ядра ОС Linux, создал этот инструмент ещё в 2005 году, а сегодня Git активно поддерживается как проект с открытым исходным кодом. Огромное количество открытых и коммерческих проектов используют Git для контроля версий.

В данной статье перечисляются самые основные команды, которые следует знать разработчику, чтобы освоить управление репозиториями GitHub на высоком уровне. Ознакомиться с ними будет полезно как новичкам, так и опытным разработчикам.
Читать дальше →
Всего голосов 64: ↑49 и ↓15+54
Комментарии63

MVC для веб: проще некуда

Время на прочтение5 мин
Количество просмотров387K
В этой статье мы рассмотрим архитектурный паттерн MVC (Model, View, Controller) в применении к веб-разработке, «в чистом виде», без привлечения каких-то дополнительных, не относящихся к MVC структур и паттернов. Мы будем продвигаться от простого к сложному, поэтому пока не станем рассматривать, например, дальнейшее развитие MVC – паттерн HMVC (Hierarchical MVC). Хотя HMVC, несомненно, намного более интересен для разработки веб-приложений, но его применение не отменяет необходимости понимания «обычного» MVC.

Статья в Википедии (а именно туда, видимо, чаще всего попадают те, кто только начинает изучать MVC), изобилует неточностями и туманными формулировками, само определение, по сути, является неверным, а приведенная схема просто напросто не соответствует той, которая применяется в веб вообще и при разработке на PHP – в особенности.
Читать дальше →
Всего голосов 30: ↑8 и ↓22-14
Комментарии102

Магия CSS на практике: советы по вёрстке от гика. Часть 2

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров13K

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


Сегодня я расскажу:

  • какие правила у меня есть при именовании CSS-переменных для дизайн-систем;
  • на какие логические свойства вам стоит обратить внимание;
  • зачем нужно делать прозрачные рамки;
  • как я делаю зависимость значения одного свойства от других более явным;
  • про пользу «внутренних» переменных.

Давайте посмотрим, что я вам подготовил.

Читать дальше →
Всего голосов 30: ↑30 и ↓0+42
Комментарии14

Github Releases: публикация релизов

Время на прочтение1 мин
Количество просмотров27K
Разработчики Github реализовали новую функцию Releases для удобного распространения ПО конечным пользователям. Зайдя в раздел Releases, пользователь всегда может найти последнюю версию программы, changelog и полную историю версий. Ссылка на релизы помещена на главную страницу проекта.


Читать дальше →
Всего голосов 75: ↑72 и ↓3+69
Комментарии23

Выразительный JavaScript: Введение

Время на прочтение9 мин
Количество просмотров468K


Перевод книги Marijn Haverbeke "Eloquent JavaScript". Лицензия Creative
Commons attribution-noncommercial license
. Код предоставляется под лицензией MIT.


Содержание



Читать дальше →
Всего голосов 54: ↑49 и ↓5+44
Комментарии14

Перевод книги «Выразительный Javascript» в pdf

Время на прочтение1 мин
Количество просмотров193K
Хабр, привет.

Не так давно SLY_G опубликовал цикл переводов книги Eloquent Javascript (за что ему большое спасибо). В комментариях раз за разом поднимались вопросы о сборке переводов книги, что, собственно, я и сделал при помощи сервиса Gitbook — «Выразительный Javascript», pdf, ePub, mobi и онлайн версия.

Репозитарий книги, pull requests принимаются.
Читать дальше →
Всего голосов 81: ↑81 и ↓0+81
Комментарии36

Цепи Маркова и Пайтон — разбираемся в теории и собираем генератор текстов

Время на прочтение5 мин
Количество просмотров27K

Понимаем и создаём


Хорошие новости перед статьей: высоких математических скиллов для прочтения и (надеюсь!) понимания не требуется.

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

Итак, поехали!
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии10

Я решил 500 задач на LeetCode — и они действительно меня чему-то научили

Время на прочтение5 мин
Количество просмотров247K

Много кто знает, что такое Leetcode. Это своего рода решебник — задачи, которые дают на технических собеседованиях в крупных компаниях (в том числе и из FAANG) и их решения.

Такие задания, заточенные на знание структур данных и алгоритмов, все чаще встречаются и на собеседованиях в небольших компаниях. Многим кандидатам это не нравится — они утверждают, что навыки «литкодинга» ничего не говорят о том, как человек справится с реальной работой. Согласен. Если вы не можете слёту решать задачи c LeetCode, это не значит, что вы плохой разработчик. Возможно, вам в реальной работе вообще никогда не понадобится, скажем, инвертировать бинарное дерево. Однако глупо отрицать, что на LeetCode можно изучить массу подходов и инструментов, которые окажутся полезными. В этой статье я расскажу о том, что вынес для себя из работы с платформой.

Уроки Литкода
Всего голосов 24: ↑16 и ↓8+15
Комментарии47

Защита PHP скриптов от копирования — это возможно?

Время на прочтение4 мин
Количество просмотров41K
Бывает так, что вам неохота предоставлять исходные коды проектов, которые вы разрабатывали. Для этого можно использовать программы-обфускаторы, о которых недавно шла речь.

А бывает, что вам не так хочется закрыть исходный код, как защитить скрипт от копирования. На мой взгляд, сокрытие исходного кода, в большинстве случаев, не имеет смысла без защиты от копирования.
Читать дальше →
Всего голосов 1: ↑1 и ↓0+1
Комментарии213

Удачная модель ветвления для Git

Время на прочтение10 мин
Количество просмотров995K
Перевод статьи Vincent Driessen: A successful Git branching model

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



В качестве инструмента управления версиями всего исходного кода она использует Git.

Читать дальше →
Всего голосов 180: ↑171 и ↓9+162
Комментарии105

Археология Git: назад и вперед во времени

Время на прочтение6 мин
Количество просмотров4.8K

При работе с большой кодовой базой довольно естественно не помнить каждую подсистему или вариант реализации. Особенно если вы новичок в кодовой базе, или вы сосредоточились на определенной области кодовой базы.

Большинство людей начнут с использования «git blame» (или соответствующей функциональности в своей среде IDE/редакторе). Но в большинстве нетривиальных проектов вы обычно заканчиваете коммитом рефакторинга, переименованием или тривиальным исправлением проекта, например переключением на другую библиотеку assertion. При первом взгляде, мы видим только самые последние изменения, но не самые важные.

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

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии0

Пара приемов работы с git

Время на прочтение3 мин
Количество просмотров42K
При чтении обучающих статей про систему контроля версий git я заметил одно свойство, большинство из них направлено на то, чтобы читатель уяснил все плюсы распределенной системы контроля версий. В этом разрезе обычно рассказывают об удаленных репозиториях, ветках, пушах, пулах и т. д.

Но в использовании какого-то инструмента возникает такой момент (особенно, если изучение его идет по разным факам, форумам, статьям в интернете), когда вроде бы знания по работе с ним уже получены достаточно, но все равно чувствуешь, что в каких-то моментах ты немного плаваешь. Значит настало время взять в руки нормальную книгу и начать ее читать от корки до корки.

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

Но статья, на самом деле, не об этом. Я хочу рассказать про две замечательные команды git, которые я недавно для себя открыл. Это git blame и git bisect

Читать дальше →
Всего голосов 108: ↑97 и ↓11+86
Комментарии24

Код чистой воды: какие книги выбирают профи с Хабра, чтобы быть круче?

Время на прочтение10 мин
Количество просмотров30K

Когда я пошла учиться на большой оффлайновый курс разработки ПО, дело стопорилось: начали мы с С/С++ и иногда доходило до того, что я клала голову на клавиатуру и плакала. Шутка ли, то 273 ошибки при компиляции, то простенькая программа попадает в вечный цикл… Такое оно, обучение с нуля. И, вероятно, всё бы бесславно закончилось, если бы я не обратилась к своей любимой студенческой уловке: забываем интернет, берём в руки книгу (в вузе это было вообще несложно, я ещё звуки dial-up помню и карточки). Справочник Шилдта, убийственно огромный том Страуструпа, клавиатура и постоянная работа с кодом — и дело не вот полетело, но пошло до достойной сдачи экзаменов. Книги не подвели: доходчивее без того неплохих лекций, подробнее статей и обсуждений в интернете.

Мне тут подумалось — а читают ли что разработчики и айтишники в 2022 году? Читают. Рекомендации оказались дельными.

Читать далее
Всего голосов 24: ↑23 и ↓1+30
Комментарии15

Справочник методов console в JS

Время на прочтение6 мин
Количество просмотров35K
Со времён систематизации методов объекта console прошло достаточно много времени, некоторые браузеры получили поддержку недостающих ранее методов. Таблица вызывает естественный интерес у разработчиков, поэтому — почему бы её не обновить, дополнив в одной статье описаниями? Github.
Читать дальше →
Всего голосов 44: ↑40 и ↓4+36
Комментарии12

Big O

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров230K
бинарный поиск
Примечание. Сокращенный перевод, скорее пересказ своими словами.
UPD: как отметили в комментариях, примеры не идеальны. Автор не ищет лучшее решение задачи, его цель объяснить сложность алгоритмов «на пальцах».


Big O нотация нужна для описания сложности алгоритмов. Для этого используется понятие времени. Тема для многих пугающая, программисты избегающие разговоров о «времени порядка N» обычное дело.

Если вы способны оценить код в терминах Big O, скорее всего вас считают «умным парнем». И скорее всего вы пройдете ваше следующее собеседование. Вас не остановит вопрос можно ли уменьшить сложность какого-нибудь куска кода до n log n против n^2.

Структуры данных


Выбор структуры данных зависит от конкретной задачи: от вида данных и алгоритма их обработки. Разнообразные структуры данных (в .NET или Java или Elixir) создавались под определенные типы алгоритмов.

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

Здесь мы будем использовать только массивы чисел (прямо как на собеседовании). Примеры на JavaScript.
Читать дальше →
Всего голосов 39: ↑30 и ↓9+21
Комментарии30

10 Git-команд, которые стоит знать разработчику

Время на прочтение4 мин
Количество просмотров91K


В этой статье мы обсудим разные Git-команды, которые могут оказаться полезными для разработчика или специалиста по Big Data. Вы узнаете, как проверять, удалять и приводить код в порядок. А еще рассмотрим способы выхода из Vim и экономию времени с помощью псевдонимов Bash и конфигурации редактора Git.
Читать дальше →
Всего голосов 61: ↑36 и ↓25+11
Комментарии27

Введение в REST API — RESTful веб-сервисы

Время на прочтение4 мин
Количество просмотров1M
Эта статья начинает серию постов о разработке REST API:


Она содержит введение в RESTful веб-сервисы и краткий обзор REST и HTTP.


Intro to RESTful Web Services
Читать дальше →
Всего голосов 11: ↑4 и ↓7+1
Комментарии13

Что такое API

Время на прочтение9 мин
Количество просмотров1.1M

Содержание



Слово «API» мелькает в вакансиях даже для начинающих тестировщиков. То REST API, то SOAP API, то просто API. Что же это за зверь такой? Давайте разбираться!

— А зачем это мне? Я вообще-то web тестирую! Вот если пойду в автоматизацию, тогда да… Ну, еще это в enterprise тестируют, я слышал…

А вот и нет! Про API полезно знать любому тестировщику. Потому что по нему системы взаимодействуют между собой. И это взаимодействие вы видите каждый день даже на самых простых и захудалых сайтах.
Любая оплата идет через API платежной системы. Купил билет в кино? Маечку в онлайн-магазине? Книжку? Как только жмешь «оплатить», сайт соединяет тебя с платежной системой.

Но даже если у вас нет интеграции с другими системами, у вас всё равно есть API! Потому что система внутри себя тоже общается по api. И пока фронт-разработчик усиленно пилит GUI (графический интерфейс), вы можете:

  • скучать в ожидании;
  • проверять логику работы по API

Конечно, я за второй вариант! Так что давайте разбираться, что же такое API. Можно посмотреть видео на youtube, или прочитать дальше в виде статьи.

Что такое API


image

API (Application programming interface) — это контракт, который предоставляет программа. «Ко мне можно обращаться так и так, я обязуюсь делать то и это».

Если переводить на русский, это было бы слово «договор». Договор между двумя сторонами, как договор на покупку машины:

  • мои обязанности — внести такую то сумму,
  • обязанность продавца — дать машину.

Перевести можно, да. Но никто так не делает ¯\_(ツ)_/¯
Читать дальше →
Всего голосов 50: ↑38 и ↓12+26
Комментарии22

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Backend Developer, Frontend Developer
От 2 500 $
JavaScript
HTML
Adaptive layout
CSS
Web development
SCSS
Landing layouts
Semantic layout
WordPress
SASS