Pull to refresh
11
0
Ролич Сергей @RAMAZAN

Go developer

Send message

Big O нотация в Swift

Reading time3 min
Views13K

Данная статья поможет начинающим iOS разработчикам разобраться в производительности алгоритмов в Swift.

Обозначение Big O нотация (или просто Big O) — это способ оценки относительной производительности структуры данных или алгоритма, обычно по двум осям: времени и пространству.

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments21

Рыцари плаща и руткитов: что посмотреть про хакеров. Сериалы

Reading time8 min
Views69K
Лето — пора путешествий и заслуженного отдыха.  Каким бы ни было путешествие и куда бы вы ни направлялись, наверняка, это будет длинная дорога (авиаперелет или поезд), или же среднего качества связь, если мы говорим об удаленных от благ цивилизации местах.

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

Мы приготовили для вас небольшую подборку сериалов, так или иначе связанных с ИT. А натолкнула нас на идею этого поста многолетняя дружба ЛАНИТ с Международным фестивалем документального кино "ДОКЕР", где, кстати, в том числе с нашей помощью традиционной стала номинация для фильмов о возможностях информационных технологий «Let IT Doк!».

Кадр из сериала «Mr. Robot» (eps3.1_undo.gz)
Читать дальше →
Total votes 93: ↑89 and ↓4+85
Comments88

Hacksplaining — интерактивный курс по веб-уязвимостям

Reading time4 min
Views38K
image
 
Hacksplaining представляет каталогизированный и наглядный онлайн-туториал по основным веб-уязвимостям. По каждой уязвимости представлено подробное описание, насколько часто встречается, как сложно ее эксплуатировать и уровень ее критичности. К каждой уязвимости приложено подробное описание, вектор эксплуатации, уязвимый код и рекомендации по устранению и защите. В качестве примера в статье приведен разбор одного из заданий по взлому виртуального онлайн-банкинга с помощью эксплуатации sql-инъекции.
Читать дальше →
Total votes 36: ↑33 and ↓3+30
Comments6

Юникодный спец-символ переворачивающий текст

Reading time1 min
Views47K
Любой текст, написаный после спец-символа ‮, будет выглядеть вот так:

‮ Перевернутый текст

Если взглянуть в код документа, то MSIE и Опера покажут, что текст действительно написан правильно, а Файрфокс из-за некоторых своих особенностей покажет и код документа перевёрнутым, причём включая HTML-теги.

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

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

Вот такой он разный, этот юникод :)

‮ Источник
Total votes 70: ↑67 and ↓3+64
Comments128

Как я сдавал OSCP

Reading time7 min
Views60K
image


Периодически на хабре поднимается тема подготовки специалистов в различных областях информационной безопасности и получения соответствующих сертификаций. Уже обсуждали подготовку и сдачу CISSP, CISA, Security+, CEH\ECSA. Раз в две-три недели нас активно приглашают на курсы от пентестит.

В этом же топике я хочу познакомить читателей с еще одним вариантом обучения и поделиться собственным опытом прохождения курса Penetration Testing Training with Kali Linux от Offensive Security с последующей сдачей экзамена.
Читать дальше →
Total votes 16: ↑16 and ↓0+16
Comments7

Kotlin: без Best Practices и жизнь не та. Часть 1

Reading time5 min
Views23K
Привет, Хабр! Данная статья о наболевших проблемах при программировании на Kotlin. В частности, затрону несколько тем, вызывающих больше всего неоднозначности – использование it в лямбда-выражениях, злоупотребление функциями из файла Standard.kt и краткость написания vs. читаемость кода.
Читать дальше →
Total votes 30: ↑28 and ↓2+26
Comments30

Гарвардский курс по основам программирования CS50 теперь на русском

Reading time4 min
Views177K
image

Предыстория: кто мы и как дошли до жизни такой

Мы — команда проекта JavaRush. А JavaRush, кто еще не в курсе, — это полностью автоматизированный обучающий онлайн-курс по Java. Когда-то давно, именно благодаря поддержке хаброюзеров и статьям на хабре, JavaRush и появился. В то время мы собирались переучить на программистов миллион человек.
Читать дальше →
Total votes 47: ↑47 and ↓0+47
Comments38

40 ключевых концепций информационных технологий доступно и понятно

Reading time16 min
Views159K
Представляю вашему вниманию перевод очень ёмкой, и в то же время достаточно краткой (для такого масштаба проблемы) статьи Карла Чео. Я решил, что очень хочу сделать её перевод практически сразу, как только начал читать, и очень рад, что в итоге сделал это.
Для того, чтобы сделать обучение более веселым и интересным, представляю вам перечень важных теорий и концепций информатики, объяснённых с помощью аналогий с минимальным количеством технических деталей. Это будет похоже на очень быстрый курс информатики для всех с целью просто дать вам общее представление об основных концепциях.

Важные замечания:
  • Пункты с неуказанным источником написаны мной самостоятельно. Поправьте меня, если вы заметите какие-то неточности. Предложите лучшую аналогию, если это возможно.
  • Заголовки ссылаются на соответствующие им статьи в Wikipedia. Пожалуйста, читайте эти статьи для более серьезных и детальных объяснений.
  • Аналогии — отличный способ объяснить материал, но они не идеальны. Если вы хотите по-настоящему понять перечисленные концепции, вам следует начать с фундаментальных азов и рассуждать, исходя из них.

Также зацените эту инфографику (вариант на русском), если вы просто начинающий программист.
Читать дальше →
Total votes 104: ↑96 and ↓8+88
Comments37

Документация разработчика Hibernate – Глава II. Транзакции и контроль многопоточности

Reading time11 min
Views37K
Представляю вашему вниманию перевод второй главы официальной документации Hibernate.

Перевод статьи актуален для версии Hibernate 4.2.19.Final

Содержание

 2.1. Определение транзакции
 2.2. Физические транзакции
   2.2.1. Физические транзакции — JDBC
   2.2.2. Физические транзакции — JTA
   2.2.3. Физические транзакции — CMT
   2.2.4. Физические транзакции — Прочее
   2.2.5. Физические транзакции — Устаревшее
 2.3. Применение транзакций Hibernate
 2.4. Паттерны и анти-паттерны транзакций
   2.4.1. Анти-паттерн сессия-на-операцию
   2.4.2. Паттерн сессия-на-запрос
   2.4.3. Диалоги (Conversations)
 2.5. Идентичность объекта
 2.6. Общие вопросы
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments0

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

Reading time10 min
Views978K
Перевод статьи Vincent Driessen: A successful Git branching model

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



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

Читать дальше →
Total votes 180: ↑171 and ↓9+162
Comments105

400 потрясающих бесплатных сервисов

Reading time16 min
Views718K

Рад представить дополнение оригинального списка из 300 потрясающих бесплатных сервисов. Автор оригинальной статьи Ali Mese добавил ещё +100 новых сервисов, которые помогут найти все — от источников вдохновения и редакторов фотографий до создания опросов и бесплатных иконок.

И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные веб-сайты

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly: Конструктор веб-сайтов.
  • Layers: Создание сайтов на WordPress (new).
  • Bootstrap Zero: Самая большая коллекция бесплатных шаблонов Bootstrap (new).
  • Landing Harbor:  Продвижение мобильного приложения c помощью бесплатного лендинга (new).
Читать дальше →
Total votes 108: ↑89 and ↓19+70
Comments38

Подборка бесплатных инструментов для разработчиков

Reading time28 min
Views186K
Сегодня мы представляем вашему вниманию адаптированную подборку инструментов (в том числе облачных) для разработчиков, которые позволяют создавать по-настоящему качественные проекты. Здесь представлены исключительно SaaS, PaaS и IaaS сервисы, предоставляющие бесплатные пакеты для разработчиков инфраструктурного ПО.

Читать дальше →
Total votes 96: ↑89 and ↓7+82
Comments38

Проброс DLNA в удаленную сеть

Reading time5 min
Views53K
Предыстория:

Итак, появилась необходимость дать возможность просматривать фильмы с моего сервера на телевизоре. Ну казалось бы, поднимаем DLNA, например miniDLNA и проблема решена. Так и было, пока не появилась нужда дать такую же возможность родителям, которые живут в другом месте, и ставить им там сервер или простенький nas не хотелось. Было принято решение объединить наши сети путем туннелирования трафика и дать доступ к моей фильмотеке.
Читать дальше →
Total votes 20: ↑16 and ↓4+12
Comments22

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

Reading time14 min
Views285K


Если вы регулярно используете 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. Быстрый поиск плохого коммита

Читать дальше →
Total votes 152: ↑149 and ↓3+146
Comments62

Шпаргалка Java программиста 1: JPA и Hibernate в вопросах и ответах

Reading time36 min
Views568K
image

Знаете ли вы JPA? А Hibernate? А если проверить?

В чем смысл серии статей 'Шпаргалки Java программиста'
За время работы Java программистом я заметил, что как правило программисты постоянно и планомерно используют от силы 10-20% от возможностей той или иной технологии, при этом остальные возможности быстро забываются и при появлении новых требований, переходе на новую работу или подготовке к техническому интервью приходится перечитывать все документации и спецификации с нуля. Зато наличие краткого конспекта особенностей тех или иных технологий (шпаргалок) позволяет быстро освежить в памяти особенности той или иной технологии.




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

Поехали...
Total votes 37: ↑32 and ↓5+27
Comments16

Работа с Ansible — задачи с несколькими неизвестными

Reading time5 min
Views18K
Гуглил информацию по Ansible, наткнулся на статью на Хабре. Прочитал и сильно удивился: ведь можно сделать красивее! Если вы заинтересованы — добро пожаловать под кат!
Углубиться
Total votes 14: ↑13 and ↓1+12
Comments6

Домашний сервер для работы и не только. Организация рабочего места ленивого инженера

Reading time6 min
Views100K
imageОднажды став тем или иным специалистом в сфере IT, каждый из нас начинает окружать себя всевозможными инструментами для работы и отдыха. Далее это перерастает в целый комплекс мероприятий по поддержанию привычек, установленного расписания дня, комфортных условий труда и отдыха. Не претендуя на какую-либо уникальность, все же хотелось поделиться организацией «рабочего» процесса и отдыха ленивого администратора, как результатом знакомства с разными сферами IT, близкими к основной деятельности.

Вспоминая слова одного преподавателя вуза: «Кто такой инженер? Это же лентяй! Вот он лежит на диване, смотрит телевзор. И захотелось ему переключить канал — но вставать то лень! „Ай, ну его, каналы вставать переключать — пойду-ка разработаю пульт дистанционного управления...“. Всегда хотелось сделать что-то интересное и максимально это автоматизировать…
Читать дальше →
Total votes 25: ↑14 and ↓11+3
Comments20

HighLoad++ — это блюдо, которое подают высоконагруженным

Reading time6 min
Views21K


Пожалуй главным отличием конференции разработчиков высоконагруженных систем HighLoad++ от многих других является отсутствие скрытых целей. За нами не стоит ни одного лица или организации, которая бы навязывала правила игры или занималась хантингом на мероприятии, типа:
  • Крупной компании
  • Толстосума-спонсора
  • Государственных структур

Уже долгие годы HighLoad++ остается событием, которое одни разработчики организуют для других разработчиков.

Девять лет назад мы приняли для себя несколько строгих правил, которым стараемся неукоснительно следовать. Не будем перечислять их все — для этого еще придёт время, назовем лишь основные.
Читать дальше →
Total votes 35: ↑27 and ↓8+19
Comments10

Технокнига, часть 2: литература по СУБД, разработке фронтенда, проектированию интерфейсов и углубленному программированию на Java

Reading time11 min
Views45K


Недавно мы начали публиковать обзорный список литературы, рекомендуемой к прочтению студентам наших образовательных проектов: Технопарка, Техносферы и Технотрека. Но это не значит, что остальным эти книги будут не интересны. Так что если вы жаждете знаний по вынесенным в заголовок темам, то наверняка найдете что-нибудь интересное во второй части обзора.
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments12

oDesk (Upwork). Мой опыт за полтора года

Reading time12 min
Views445K
Вот уже полтора года я зарабатываю фрилансом на бирже oDesk. За это время у меня накопилось много материалов по данной теме. В данном топике я собрал все в одну статью и адаптировал для аудитории хабра.
image
Читать дальше →
Total votes 192: ↑185 and ↓7+178
Comments321
1
23 ...

Information

Rating
Does not participate
Location
Астана, Акмолинская обл. (Целиноградская обл.), Казахстан
Date of birth
Registered
Activity

Specialization

Backend Developer
Lead
Golang