Обновить
128K+

GitHub *

Веб-сервис для хостинга и разработки IT-проектов

80,71
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Контроль версий отдельных файлов с использованием GitHub Gist

Время на прочтение2 мин
Охват и читатели16K
image

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

Одни скрипты он использует в одних проектах, другие в других.

Эти скрипты со-временем совершенствуются, убираются баги, оптимизируются. Поэтому появляется вопрос, как синхронизировать новые версии скриптов с теми, которые в проектах.

Тут есть несколько вариантов:

Первый вариант:

Создать один репозиторий и поместить туда все скрипты. Затем этот репозиторий подключается как подмодуль к проекту и используется.

Минусы:

  1. в проект копируются все скрипты включая ненужные.
  2. подмодуль не commit-ится в репозиторий проекта, поэтому если будет недоступен удаленный репозиторий подмодуля, то мы не сможет выкачать проект целиком.

Второй вариант:

Каждый скрипт отдельно хранить на Github gist и подключать нужные как подмодули
Минус тот-же, что и в первом варианте во втором пункте.

Третий вариант:

Использовать Git Subtree.

(Данное решение является альтернативой для Git submodules)
Читать дальше →

Контроль версий внутри SQL Server'a

Время на прочтение5 мин
Охват и читатели15K
Юля: Так, кто вчера менял мою процедуру?
Лёша: не я
Максим: не я
Ребят, может Git заведём ?
Серёжа: давно пора!
прошло 2 недели…

Юля: ребяяят?
Юль, а ты не коммитила?
Юля: damn нет(…

Вот так всё и началось. Ну а что, каждый символ и каждую строчку коммитить?

А может всё это будет происходить само?) На этом моменте в голову начинают приходить
DDL-триггеры, Temporal table и картина складывается. Решено, будем хранить версии внутри
SQL Server'a !)



Читать дальше

Device Creator

Время на прочтение3 мин
Охват и читатели3K

Device


Всем привет!


Хочу представить вашему вниманию небольшую разработку — Box-shadows Device (#bSd).
Это инструмент, который чем-то напоминает конструктор или css редактор. В нем вы можете создавать девайсы на любой вкус и кошелек.

Читать дальше →

Github.com отказывается от использования jQuery и переходит на чистый JavaScript

Время на прочтение2 мин
Охват и читатели54K
Сегодня Mislav Marohnić объявил о том, что разработчики Github избавились от jQuery на фронтенде GitHub.com. Казалось бы, в самом этом факте нет ничего примечательного, если бы не один интересный момент.

Проблема выбора нового фреймворка для фронтенда была решена радикально — решено было обойтись без фреймворков в принципе. Вместо них были использованы следующие средства:

  • querySelectorAll (который предположительно был вдохновлен когда-то именно jQuery),
  • fetch для работы с AJAX,
  • delegated-events для обработки событий,
  • полифиллы для работы с DOM,
  • пользовательские элементы (Custom Elements), которые сейчас на подъеме.

Помимо Custom Elements, ничего другого из Web Components было решено не использовать. Разработчики присматривались к Shadow DOM и были бы не против прибегнуть к нему — однако, в силу того, что на полифиллах скорость поиска в DOM оставляет желать лучшего, им пришлось пока отложить эту затею.

Зачем разработчикам в принципе потребовалось все это сделать? По их словам, для того, чтобы «отдавать» посетителям меньше килобайт, иметь возможность использовать более явно выраженный синтаксис для выполнения манипуляций с DOM, а также ради возможности использовать библиотеку Flow.JS для статического анализа типов. По словам разработчиков, процесс ухода с jQuery занял годы.
Читать дальше →

Срез личного опыта: разработка, пулл реквесты, коммиты, софт скиллы

Время на прочтение5 мин
Охват и читатели11K

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

GitHub превращается… превращается GitHub… в элегантный Windows 95

Время на прочтение7 мин
Охват и читатели81K


В Твиттере какое-то время назад запостили шутку в честь приобретения Майкрософтом ГитХаба — страницу сайта, перестилизованную в стиле Windows 98. Я решил, что шутка слишком хороша, чтобы оставаться шуткой.

Давайте перекрасим GitHub!

Box-shadows.css

Время на прочтение3 мин
Охват и читатели7.6K
image

Всем привет!

В современном дизайне, при создании сайтов и приложений, многие разработчики применяют эффект глубины и объема, нередко обращаясь к таким css свойствам как box-shadow и drop-shadow. Некоторые считают, что в 2018 году это тренд. И действительно, немало как иностранных, так и российских сайтов, которые в 2018 году стали чаще применять тени.

Читать дальше →

GitHub теперь официально принадлежит Microsoft

Время на прочтение1 мин
Охват и читатели98K
image

Это всё же случилось. Недавние сливы оказались правдой.

Факт продажи официально подтвердили в своих блогах и GitHub, и Microsoft.
Читать дальше →

Коллекция css теней Box-shadows.css

Время на прочтение3 мин
Охват и читатели11K
Привет всем!

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

image

Основная цель проекта — облегчить работу начинающим веб-дизайнерам и разработчикам в создании приятного и современного дизайна. Возможно и опытные дизайнеры почерпнут для себя что-нибудь интересное из этой разработки.

Читать дальше →

Деплой webpack-приложения на github.io с помощью Travis CI

Время на прочтение3 мин
Охват и читатели18K

Задача


Есть приложение, сгенерированное с помощью create-react-app. Нужно развернуть его на github.io.


Проблемой является то, что Github Pages работает только со статическим кодом и Jekyll.

Читать дальше →

15 советов по работе с Github

Время на прочтение8 мин
Охват и читатели64K

Я 10 лет разрабатываю ПО, участвовал в нескольких open source-проектах и в многочисленных не-open source-проектах, работал в больших и малых командах, и везде мы использовали Github в качестве репозитория версионирования.

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

GitLab для Continuous Delivery проекта на технологиях InterSystems

Время на прочтение15 мин
Охват и читатели15K

В данной статье хотелось бы рассказать про организацию процессов Continuous Integration / Continuous Delivery, автоматизирующих сборку, тестирование и доставку приложений на платформах InterSystems.


Рассмотрим такие темы как:


  • Git 101
  • Методологии разработки (Git flow)
    • GitHub flow
    • GitLab flow
  • GitLab
  • GitLab CI
Читать дальше →

Для чего программисту Continuous Integration и с чего начинать

Время на прочтение8 мин
Охват и читатели53K
Представьте что в Роскосмосе решили собрать новую ракету не имея при этом чертежей и четкого понимания как ракета должна быть устроена. Отдельный завод занимается корпусом ракеты, отдельный выпускает двигатели, еще один — сопла. Главный менеджер Роскосмоса сказал что он доверяет профессионалам, и мастерски сделегировал всю работу заводам.



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

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

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

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

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

В 1991 году Гради Буч, видимо, устал от такого безобразия, и предложил делать сборку всего проекта каждый день, чтобы выяснять несовместимости не в день релиза, а пораньше — и назвал этот подход Continuous Integration.
Читать дальше →

Ближайшие события

Конференция DEFCON 22. «Один дома с автоматической системой защиты». Крис Литтлбери

Время на прочтение14 мин
Охват и читатели4.5K
Меня зовут Крис Литтлбери, я работаю старшим испытателем систем безопасности от проникновений в компании Knowledge Consulting Group, которая расположена в округе Колумбия. Я люблю конструировать всякие интересные вещи, придавая обычным устройствам необычные функции. Например, вот этот контроллер XBox Live быстро обнаруживает пожар. Я использовал его всего один раз, скомбинировав с микропроцессором Arduino. На второй картинке показано устройство для замены пятой передачи в коробке передач моего автомобиля, которое улучшает пробег. Я люблю делать вещи своими руками.



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

Модифицируем плеер Vanilla Music под Android (часть 2)

Время на прочтение3 мин
Охват и читатели3.9K
В прошлой статье мы разбирали как можно добавить в плеер с открытым исходным кодом Vanilla Music возможность переключения треков при помощи клавиш громкости, если при этом устройство находится в кармане(например). В этой статье продолжим модификацию основной идеей для которой послужила следующая мысль — как можно переключать треки, не касаясь смартфона, не разблокируя его — в общем с минимальными усилиями.
Читать дальше →

Для новичков: 5 советов по GitHub

Время на прочтение3 мин
Охват и читатели24K
image Alyson La, Data science в GitHub: В октябре этого года я отпраздновала свой пятилетний юбилей работы в GitHub. 5 лет назад я была бухгалтером, который ничего не знал о программировании, не говоря уже об использовании Git и GitHub.

Теперь я энтузиаст Data Scientist, который знает некоторые вещи о написании кода с помощью Git & GitHub. Частично благодаря изучению этих технологий я сделала этот карьерный переход.

Но даже работая в GitHub, изучать Git и GitHub было сложно! Поэтому я хочу поделиться 5-ью советами по использованию GitHub с другими людьми, новичками программирования.

Совет № 1: Измените редактор по умолчанию


Для многих людей текстовый редактор при использовании Git через терминал — VIM. VIM может быть ужасным, страшным для нового или казуального хакера. Или даже для ветеранов-хакеров как @haacked.

image

Если вы когда-нибудь столкнетесь с конфликтами слияния (а вы их встретите, см. совет №4), вы попадете в VIM, чтобы исправить конфликт, и вам нужно будет знать конкретные команды VIM для редактирования документа иначе вам захочется плакать. Больше года у меня была заметка на мониторе для напоминания основных команд VIM, таких как i (для редактирования) и: wq (для сохранения и выхода). Чтобы избежать боли, вы можете просто выбрать другой текстовый редактор.

Конференция DEFCON 18. «Как я встретился с Вашей девушкой, или новый вид Интернет-атак». Сэми Камкар

Время на прочтение14 мин
Охват и читатели11K
Я расскажу Вам о разработке и осуществлении совершенно нового вида хакерских атак, которые помогут мне встретиться с Вашей девушкой. Но сначала немного о себе.

Меня зовут Сэми Камкар, я исследую проблемы безопасности, но не профессионально, а ради собственного удовольствия, как и большинство здесь присутствующих. Я известен как «Narcissistic Vulnerability Pimp», или «сводник самовлюблённой уязвимости», являюсь автором вируса Samy Worm, созданным на MySpace несколько лет назад, и одним из основателей компании IP PBX Fonality. Меня также называют Chick Magnet, «магнитом для цыпочек», и я фанат Леди Гага. А ещё я люблю наличность.



На этом слайде Вы видите ребят, которые оказали мне большую услугу – они позволили мне вообще не прикасаться к компьютеру некоторое время. Несколько лет назад ко мне в дом ворвались представители USSS, United States Secret Service Electronic Crimes Task Forces, оперативной группы по расследованию киберпреступлений Секретной службы США. Они изъяли все мои компьютеры, забрали мой ноутбук, мобильник, проигрыватели CD и DVD-дисков и даже игровую приставку Xbox. Дело закончилось судом, который запретил мне пожизненно прикасаться к компьютерам, однако пару лет назад меня «разбанили», и теперь я снова с Вами, однако без доступа к MySpace.

Конференция DEFCON 21. “Секретная жизнь SIM карт”. Эрик Батлер, Карл Кошер

Время на прочтение13 мин
Охват и читатели14K
Меня зовут Эрик Батлер, а это Карл Кошер, и мы хотим поговорить с Вами о чтении, создании, загрузке и использовании кода на SIM-картах. Этот проект стартовал в прошлом году, когда я узнал о мероприятии Tourcamp 2012, лагере хакеров на побережье штата Вашингтон, таком выездном DEFCON'е. Никаких отелей, жизнь в палатках на открытом воздухе, это был уже второй лагерь, первый мне очень понравился, я пригласил друзей и мы решили туда отправиться. Это мероприятие посвящалось запуску сети GSM в нескольких районах США, и моей задачей было добыть для этого несколько SIM-карт.



Я ничего не знал о том, что из себя представляют SIM-карты, поэтому мне пришлось изучить вопрос и выяснить следующее:

  • SIM, или Subscriber Identification Module – это модуль идентификации абонента мобильной связи;
  • на SIM-карте есть ключ идентификации IMSI и симметричный ключ Ki;
  • в неё встроен модуль безопасности, который не позволяет ни извлечь, ни клонировать ключи;
  • они используются операторами связи GSM, а в настоящее время и LTE (сеть Verizon стандарта 4G);
  • могут также запускать приложения.

Последний пункт меня удивил, потому что никогда раньше не слышал, что сим-карты могут работать с приложениями. Оказывается, давным-давно, когда не было ни «айфонов», ни «андроидов», приложения располагались на сим-карте. Телефон был простой звонилкой – Вы могли вытащить из него «симку» и переставить в другой телефон вместе со всеми своими контактами, программами и так далее. Некоторые операторы, например, Telcom, являлись собственниками сим-карт, контролируя установленные на них приложения.

Конференция DEFCON 16. «Игры с баркодами». Феликс Линднер, глава Recurity Labs

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

Мой доклад состоит из следующих пунктов:

  • быстрое введение в суть баркодов;
  • кодировка и чтение баркодов;
  • сканеры;
  • простые трюки с баркодами;
  • скрытые атаки;
  • чтение выбранных образцов;
  • нерешённые проблемы и вызовы;
  • принципы безопасного использования баркода.

Баркод был придуман в 1948 году Сильвером и Вудландом из Технологического института Дрексель. Первая попытка использования баркода была предпринята в 1950 году – Ассоциация Американских Железных дорог решила использовать его для идентификации вагонов и потребовалось свыше 17 лет для того, чтоб пометить 95% составов и после система так и не заработала. В это время люди считали баркоды бесполезными.



Но уже в 1966 году Национальная Ассоциация продуктов питания предложила наносить баркоды на продукты, чтобы ускорить процесс их идентификации на кассе и заработать побольше денег. В 1969 году эта же Ассоциация создала промышленный стандарт Универсального Продуктового Идентификационного кода (позже UPC), который стал использоваться с 1970 года.

В 1981 году Министерство обороны США потребовало, чтобы все продукты, поставляемые для армии, маркировались Code 39 – штрихкодом, позволяющим кодировать большие латинские буквы, цифры и символы и Вы далее увидите, почему это было плохой идеей.

Выгрузка сообщений с использованием Telegram API. С чего начать

Время на прочтение3 мин
Охват и читатели74K
На просторах интернета можно найти множество описаний и примеров по созданию telegram bot-ов.Но Telegram Bot Api имеет ограниченный функционал. Для решения задачи по выгрузке сообщений из Telegram по ключевому слову необходимо использовать Telegram API. За основу была взята библиотека TLSharp. Стоит сразу прояснить, что дальнейшая работа возможна только для зарегистрированных пользователей в Telegram.

Стартом работы с API служит регистрация приложения:

  1. Заходим на сайт Телеграмма и вводим свой номер телефона. Вводим код подтверждения.

    image
  2. Попадаем на страницу разработчика. Для завершения регистрации необходимо заполнить поля, характеризующие ваше будущее приложение.

    image
  3. Получаем api_id и api_hash.
Читать дальше →