Pull to refresh
0
0
Send message

Web. Решение задач с r0от-мi. Часть 1

Reading time2 min
Views10K
image

Данная статья содержит решение заданий, направленных на эксплуатацию web-узвимостей. Здесь рассмотрим задачи, затрагивающие backup файлы, непроиндексированные директории, http заголовки, редирект и command injection.

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

  • PWN;
  • криптография (Crypto);
  • cетевые технологии (Network);
  • реверс (Reverse Engineering);
  • стеганография (Stegano);
  • поиск и эксплуатация WEB-уязвимостей.

Вдобавок к этому я поделюсь своим опытом в компьютерной криминалистике, анализе малвари и прошивок, атаках на беспроводные сети и локальные вычислительные сети, проведении пентестов и написании эксплоитов.
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments0

6 свежих примеров разбора и улучшения дизайна простыми способами

Reading time3 min
Views15K
image

Всем привет! В нашем сообществе Вконтакте есть рубрика, где мы даем экспресс-советы по дизайну. Наша рубрика — это быстрые советы о том, что можно улучшить в плане графики, а не полноценный редизайн или разработка логотипа. Сегодня рассказываем про полезные приемы на примере участников нашей рубрики.
Читать дальше →
Total votes 11: ↑8 and ↓3+5
Comments9

Как workflow разработки влияет на декомпозицию задач

Reading time10 min
Views28K


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


Давайте подумаем и обозначим проблемы, которые могут возникнуть в процессе разделения задач, и способы их решения. В этом посте будут рассмотрены основные принципы декомпозиции задач при работе в команде. Меня зовут Илья Агеев, я – глава QA в Badoo. Сегодня расскажу, как workflow влияет на декомпозицию, насколько отличаются тестирование и выкладка задач, которые появляются в результате декомпозиции, и каких правил стоит придерживаться, чтобы процесс разработки проходил гладко для всех участников.

Читать дальше →
Total votes 60: ↑60 and ↓0+60
Comments15

10 основ брендинга для начинающих предпринимателей

Reading time7 min
Views17K
image

Сколько у вас друзей, которые сейчас запускают свой бизнес? Shark Tank — одно из самых популярных шоу на кабельном на данный момент (американская телепередача, в которой участвуют бизнесмены (стартаперы), которым нужны инвестиции в свой бизнес), оно привлекает большое количество людей, заинтересованных в бизнесе, дизайне и фирменной символике. В то время как одни рьяные «бред-приниматели» (“want-repreneurs”) погружаются в идею вокруг основной идеи, остальные мгновенно переключают разговор на то, как их идея будет выглядеть.

  • Как будет выглядеть логотип? Можно ли создать собственный логотип самому или стоит нанять дизайнера?
Читать дальше →
Total votes 14: ↑8 and ↓6+2
Comments2

Laravel — экосистема, а не просто PHP-фреймворк

Reading time12 min
Views204K


Данная статья предназначена для начинающих веб-разработчиков, а также тех, кто хочет понять, для чего стоит изучить PHP-фреймворк Laravel и какую экосистему он нам предлагает. Статья написана на момент актуальности Laravel версии 5.4, в августе 2017 выйдет релиз Laravel 5.5, который предоставляет ещё больше возможностей.

Содержание:

Читать дальше →
Total votes 33: ↑29 and ↓4+25
Comments104

Как за 6 шагов узнать хороший дизайн

Reading time6 min
Views24K
Устраняем субъективность мнений.
К самому первому моему посту на Medium оставили комментарий, на который мне захотелось дать развернутый ответ. Читательница отметила, что дизайн — штука субъективная, и спрашивала, пробовал ли кто-либо формализовать принципы хорошего дизайна. Тогда я подумал: «Почему бы не попробовать?»

С этого все и началось.

Вопрос состоит из двух частей, первая — утверждение, что дизайн субъективен. Лично я не согласен с таким подходом, но я понимаю, откуда у него растут ноги: люди склонны смешивать дизайн и искусство, и потому свойства одного зачастую переносят на свойства другого.

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

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

image
Знаменитая соковыжималка Juicy Salif от Филиппа Штарка (Philippe Starck)
Читать дальше →
Total votes 16: ↑14 and ↓2+12
Comments35

10 типов структур данных, которые нужно знать + видео и упражнения

Reading time9 min
Views284K
Екатерина Малахова, редактор-фрилансер, специально для блога Нетологии адаптировала статью Beau Carnes об основных типах структур данных.

«Плохие программисты думают о коде. Хорошие программисты думают о структурах данных и их взаимосвязях», — Линус Торвальдс, создатель Linux.

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

В этой статье я покажу вам 10 самых распространенных структур данных.
Читать дальше →
Total votes 37: ↑29 and ↓8+21
Comments31

PHP-Дайджест № 113 – свежие новости, материалы и инструменты (16 – 30 июля 2017)

Reading time3 min
Views19K


Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.2.0 Beta 1, свежие RFC из PHP Internals, материалы по асинхронному PHP, видео с конференций и митапов, и многое другое.
Приятного чтения!

Читать дальше →
Total votes 62: ↑60 and ↓2+58
Comments40

Почему Node.js в качестве основы фронтенда – это круто [обновлено]

Reading time6 min
Views45K


Накануне запуска школы Node.js от Яндекс.Денег я хотел бы рассказать чуть больше о том, почему именно эта платформа прижилась в нашем фронтенде.


Несколько лет назад в Яндекс.Деньгах назрела смена платформы для серверной прослойки фронтенда: имевшаяся была внутренней проприетарной разработкой и постепенно умирала от слабой поддержки и проседания скорости работы. Вместе с медленной работой в рантайме и отсутствием развития XSLT, на котором работало API, этот «черный ящик» с множеством ограничений настала пора заменить.


Под «фронтендом» мы понимаем не только выполняемый в браузере код, но и серверную прослойку по сбору данных и генерации HTML. Хорошей заменой для имевшейся логики стал Node.js.

Читать дальше →
Total votes 35: ↑31 and ↓4+27
Comments41

Собеседование для фронтенд-разработчика на JavaScript: самые лучшие вопросы

Reading time9 min
Views212K
Недавно мне довелось побывать на встрече участников проекта FreeCodeCamp в Сан-Франциско. Если кто не знает, Free Code Camp — это сообщество, нацеленное на изучение JavaScript и веб-программирования. Там один человек, который готовился к собеседованиям на позицию фронтенд-разработчика, попросил меня подсказать, какие вопросы по JavaScript стоит проработать. Я немного погуглил, но не смог найти подходящего списка вопросов, на который я бы мог дать ссылку и сказать: «Разбери эти вопросы и работа твоя». Некоторые списки были близки к тому, что мне хотелось найти, некоторые выглядели очень уж простыми, но все они были либо неполными, либо содержали вопросы, которые вряд ли кто станет задавать на реальном собеседовании.

image
Читать дальше →
Total votes 58: ↑41 and ↓17+24
Comments118

Про Agile, Scrum и командную работу. Как устроены процессы развития продуктов в Альфа-Лаборатории

Reading time5 min
Views21K

Негибкий “Энтерпрайз” и гибкие методологии


Существует устоявшееся мнение, что IT-специалист в крупных компаниях — это маленький “винтик” в огромном механизме, призванный выполнять какую-то конкретную функцию. А механизм, в свою очередь, беспощадно эксплуатирует ресурс своих “винтиков”.

Однако мы (в Альфа-Банке в целом и в Альфа-Лаборатории в частности) придерживаемся иного подхода. Подхода, когда усилия всех участников процесса направлены на создание ценности для клиента, при этом путь, которым они этого достигают, может содержать очень много степеней свободы.



Я расскажу, как у нас в Лаборатории выстраиваются процессы работы. Мы опираемся на концепцию Agile. В качестве основного фреймворка мы выбрали Scrum, модель производства — командно-центричная.
Читать дальше →
Total votes 22: ↑19 and ↓3+16
Comments29

20 правил самых коротких маркетинговых текстов

Reading time6 min
Views8.3K
Мы работаем на рынке A2P SMS более десяти лет. Через нашу платформу прошли миллионы рассылок и тысячи sms-кампаний. За эти годы накопили опыт, которым поделимся в этой статье.


Читать дальше →
Total votes 5: ↑3 and ↓2+1
Comments6

Почему хорошие люди покидают крупные IT-компании?

Reading time6 min
Views57K

Если ты хочешь построить корабль, не надо созывать людей,
планировать, делить работу, доставать инструменты.
Надо заразить людей стремлением к бесконечному морю.
Антуан де Сент-Экзюпери

Я встретился со своим бывшим студентом, который сейчас работает финдиректором в крупной IT-компании.  Эта компания все еще является одним из самых желанных мест работы в сфере IT.  Она производит железо со значительной долей инноваций во встроенном ПО и службах.

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

Лучше бы я этого не делал.

Переведено в Alconost
Читать дальше →
Total votes 33: ↑27 and ↓6+21
Comments35

Как ускорить сайт или факторы, влияющие на загрузку сайта

Reading time8 min
Views25K
Цель: Дать базовые понятия о факторах, влияющих на скорость загрузки сайта. Разобрать каждый этап загрузки. Дать понятие о способах ускорения за счёт оптимизации каждого фактора загрузки, на который можно повлиять.

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

Целевая аудитория: владельцы сайтов, web-студии, специалисты и любители. Постараюсь написать статью таким образом, чтобы она была доступна в понимании всем.

Причина написания статьи кроется в том, что я заметил, что многие даже не понимают истинных причин тормозов их сайтов и решил написать эту статью, чтобы человек сам смог прочитать и понять, чего же ему не хватает. На загрузку сайта влияет очень много факторов, на большую часть из них мы можем повлиять; остальные нам просто нужно учитывать.
Читать дальше →
Total votes 24: ↑16 and ↓8+8
Comments19

Пять Docker-утилит, о которых вам стоит узнать

Reading time5 min
Views36K

Источник изображения


На просторах сети Интернет можно найти немало полезных утилит для Docker. Многие из них принадлежат к разряду Open Source и доступны на Github. В последние два года я достаточно активно использую Docker в большинстве своих проектов по разработке программного обеспечения. Однажды начав работать с Docker, вы осознаете, что он оказывается полезен для гораздо более широкого круга задач, нежели вы изначально предполагали. Вам захочется сделать с Docker еще больше, и он не разочарует!


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


Давайте посмотрим на утилиты, которые помогают мне в процессе докеризации всего и вся.

Читать дальше →
Total votes 32: ↑30 and ↓2+28
Comments16

Книга «Front-end. Клиентская разработка для профессионалов. Node.js, ES6, REST»

Reading time5 min
Views19K
image В книге рассмотрены все важнейшие навыки работы с JavaScript, HTML5 и CSS3, требующиеся разработчику, чтобы преуспеть в создании современного клиентского кода. Изучая эту книгу, вы напишете четыре веб-приложения. Каждому приложению посвящена отдельная часть книги, а каждая глава добавляет в создаваемое приложение новые функциональные возможности. Создание этих четырех веб-приложений даст вам возможность изучить все технологии, требуемые для создания клиентской части.

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

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

Далее под катом...
Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments8

История бренда Nike

Reading time4 min
Views22K
В конце июня завершился международный фестиваль рекламы «Каннские львы». Высшей награды «золотого льва» в отдельных номинациях удостоились 18 роликов.
Невероятным успехом пользовались видео компании Nike — пять из них были признаны победителями по версии критиков.

Сделай это «просто»​


Nike — молодая корпорация, история берет начало в 1963 году. Мир восстанавливался после второй мировой войны. Фил Найт окончил университет, недолго проработал специалистом по финансам, и отправился в Японию для заключения первой деловой сделки. Знал ли он, что ему суждено основать мировой бренд?

Идея Фила Найта была простой — заполнить американский континент недорогими кроссовками азиатского производителя, купля-продажа. Мало кто знает, но первоначально компания называлась Blue Ribbon Sports, а беговая обувь, которую она реализовывала, носила имя «Tiger», ныне известная под брендом Asics.​

image
Читать дальше →
Total votes 12: ↑10 and ↓2+8
Comments13

Как программисту получить свой первый оффер

Reading time7 min
Views38K
image

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

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

  1. Выбор языка программирования
  2. Усиленное чтение документации с последующим решением задачек, разбором примеров и чтение подходящих статей.
  3. Когда хоть какая-то база уже есть, следует придумать себе какой-нибудь несложный проект, в котором вы будете использовать все то, чему научились.
  4. Придумываем проект сложнее, параллельно не забываем о том, что надо изучать сопутствующие технологии.
  5. Желательно все это выкладывать на гит, чтобы в будущем работодатель видел, что процесс обучения у вас шел. О пользе гита я расскажу чуть ниже.
  6. Заведите себе друга программиста, который время от времени мог вам давать советы или менторить вас (это, конечно, кому как повезет). В целом, лучше не надеятся на чью-то помощь, а делать и развиваться самим.
Читать дальше →
Total votes 29: ↑21 and ↓8+13
Comments77

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

Reading time3 min
Views37K
Вашему вниманию предлагается перевод статьи Рэймонда Чена из блога The Old New Thing, посвященной проблемам кода, полагающегося на порядок вычисления выражений — и всем тем, кто пишет foo(i++, a[i]);
Порядок вычисления выражений определяется конкретной реализацией, за исключением случаев, когда язык гарантирует определенный порядок вычислений. Если же в дополнение к результату вычисление выражения вызывает изменения в среде выполнения, то говорят, что данное выражение имеет побочные эффекты.
MSDN
В нашей внутренней рассылке про C# регулярно возникает дискуссионный вопрос, который касается корректной интерпретации подобных конструкций:

a -= a *= a;
p[x++] = ++x;

В ответ я спрашиваю:
Да кто вообще пишет такой код с невозмутимым видом? Одно дело, когда такое пишешь, пытаясь победить в «Международном Конкурсе запутывания кода на Си» (IOCCC, International Obfuscated C Code Contest), или если хочешь написать головоломку — но в обоих случаях понимаешь, что ты занимаешься чем-то нестандартным. Что, реально есть кто-то, кто пишет a -= a *= a и p[x++] = ++x; и думает про себя «Чёрт возьми, да я пишу действительно классный код!»
Читать дальше →
Total votes 68: ↑65 and ↓3+62
Comments277

Выбранный UI-фреймворк – вред. Архитектурные требования – профит

Reading time5 min
Views12K


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

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

Ну и я уже молчу про всякие Tinkoff, Apple Pay, Google Now, умные дома и многое другое.

Как следствие, в любой компании растут IT-отделы. То, чем раньше занимались несколько десятков сотрудников, сейчас делают команды из тысяч и десятков тысяч человек (кстати, поделитесь в комментариях, как выросли ваши IT-отделы).

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

Information

Rating
Does not participate
Registered
Activity