Search
Write a publication
Pull to refresh
0
0
Nikolay @w1z

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

Send message

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

Reading time14 min
Views289K


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

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

Новый курс «Основы тестирования программного обеспечения» на Универсариуме

Reading time1 min
Views23K


С 28 сентября на бесплатной учебной площадке Универсариум начнется мой курс «Основы тестирования программного обеспечения». Он предназначен для тех, кто делает первые шаги в сфере обеспечения и контроля качества программных продуктов. Из него вы узнаете о различных процедурах обеспечения качества и получите начальные навыки работы в этой области. Для глубокого понимания этой темы нельзя обойтись без исторического экскурса, поэтому вы узнаете, как формировалась природа качества в процессе развития человеческой цивилизации и чем сегодня руководствуются компании в борьбе за качество. Также я расскажу о комплексе процедур контроля качества, с помощью которых можно улучшить программные продукты.

Прослушав курс, вы не только получите теоретические знания, но и примените полученную информацию на практике.

Курс будет проходить с 28 сентября по 21 ноября.

Учебная программа:

1. Введение в обеспечение качества — 5 лекций
2. Тестирование ПО — 3 лекции
3. Артефакты тестирования — 3 лекции
4. Инструменты на службе тестирования ПО — 2 лекции
5. Другое тестирование — 2 лекции
6. Управление тестированием — 2 лекции

Записывайтесь на курс: universarium.org/course/445

Кибергруппа Hacking Team подверглась масштабному взлому

Reading time3 min
Views104K
Известная кибергруппа Hacking Team (@hackingteam), которая специализируется на разработке и продаже специального шпионского ПО для правоохранительных органов и спецслужб различных государств стала объектом кибератаки, в результате которой для общественности стал доступен архив с 400ГБ различной конфиденциальной информации. В сеть утекла личная переписка Hacking Team с их клиентами, заключенные договора на продажу своих кибер-изделий различным государствам, а также большое количество другой информации, связанной с деятельностью компании.



В результате утечки стало известно, что к услугам HT прибегали не только государственные структуры, но и частные компании. Также из опубликованных данных видно, что одним из клиентов HT были российские структуры или фирмы. Архив содержит и информацию о наработках кибергруппы (Exploit_Delivery_Network_android, Exploit_Delivery_Network_Windows), а также огромное количество различной поясняющей информации (wiki).

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

Ненастоящие сеньор-девелоперы, или почему годы опыта ни о чем не говорят

Reading time6 min
Views142K
Опытный программист из Торонто Мэтт Бриггс так любит свою работу, что говорит: «я бы писал код, даже если бы это было нелегальным». А когда он опубликовал в своем блоге пост о джуниорах, мидлах и старших разработчиках, то собрал больше сотни восхищенных комментариев. Мы в Alconost тоже восхитились и перевели эту статью для вас.

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

Мы испытываем серьезную нехватку талантов, хотя индустрия довольно молода. Большинство софтверных проектов проваливаются, и практически все превышают бюджет. А лучшая идея, которую могут предложить сильнейшие умы, сводится к «Есть несколько стандартных способов решения подобных проблем, но наши решения часто не срабатывают. Единственное, что можно сделать — это попробовать и посмотреть на результат».

Реальность такова, что под «старшим разработчиком» понимается человек, который ваяет код более 3 лет. Его ставят на руководящую позицию, и обычно все заканчивается ожидаемо плачевно.

На самом деле, попытка оценивать людей временными интервалами – слишком упрощенный способ для таких тонких материй, как знание и профессиональный опыт. Но дела обстоят именно так. И если продолжать классифицировать специалистов подобным образом, то самое время нашей индустрии брать тайм-аут. Есть разница между человеком с 10-летним опытом, и тем, кто за то же время стал опытнее в 10 раз.


Постер из сериалa «Компьютерщики»
Читать дальше →

Как компьютеры складывают числа

Reading time1 min
Views43K
Мы в Хекслете любим разрабатывать не только прикладные курсы, но и более фундаментальные (например, про алгоритмы или операционные системы). Но мы пока не спускались ниже уровня ОС в иерархии абстракций. А там, внутри, столько всего интересного! Для многих людей, да даже для многих профессиональных программистов остаются загадкой процессы, происходящие внутри микропроцессора, на уровне отдельных транзисторов.

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


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

10 роковых ошибок юзабилити интернет-магазинов и кое-что ещё

Reading time12 min
Views51K
«Не бойся первой ошибки, избегай второй», – учит нас народная мудрость. А другая прямолинейно указывает на то, кто учится на своих ошибках, а кто – на чужих. Тем не менее разрабатывая интернет-магазин ошибиться довольно просто. Особенности аудитории, нюансы в организации сайта и форм страниц порой только и можно постичь единственно верным методом проб и ошибок.


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

Высокопроизводительный код на платформе .NET

Reading time16 min
Views34K
Здравствуйте, дорогие читатели!

Не так давно мы занялись проработкой книги "Writing High-Performance .NET code", которая до сих пор не переведена на русский язык, хотя ей и скоро год.



Нас, конечно, не удивило, что такую книгу уже растаскивают на цитаты, однако выяснилось, что уважаемый автор Бен Уотсон даже выложил на сайте «Codeproject» целую статью, написанную по мотивам одной из глав. К сожалению, объем этого материала слишком велик для хабропубликации, однако мы решили все-таки перевести первую часть статьи, чтобы вы могли оценить материал книги. Приглашаем к прочтению и к участию в опросе. Кроме того, если все-таки целесообразно перевести и вторую часть — пишите в комментариях, постараемся учесть ваши пожелания.
Читать дальше →

Интересные заметки по C# и CLR

Reading time11 min
Views49K


Изучая язык программирования C#, я сталкивался с особенностями как самого языка, так и его средой исполнения, *некоторые из которых, с позволения сказать, «широко известны в узких кругах». Собирая таковые день за днем в своей копилке, что бы когда-нибудь повторить, чего честно сказать еще ни разу не делал до этого момента, пришла идея поделиться ими.

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

Лучшие 5 докладов конференции .NEXT 2014 Moscow (видео внутри)

Reading time3 min
Views23K
Итак, в воскресенье я выложил на хабре видео докладов, занявшие в рейтинге места с 6го по 10ое. Пришло время опубликовать доклады из первой пятерки.

5 место


Дмитрий Сошников, Microsoft — Функциональное реактивное программирование на F#

Средняя оценка: 4.44



В отличие от большинства докладов про F#, этот доклад — практический. Дмитрий делает обзор языка, показывая несколько демо:
  • вычисление доброты романа «Война и мир»
  • вычисление доброты твиттера
  • вычисление корреляции между автомобильными авариями и алкогольным опьянением
  • и разумеется, управление роботом

С одной стороны, монады, Y-комбинатор и неподвижные точки, а с другой — котики и доброта твиттера. Так и живем.



Четверка лучших...

Оптимизация методов ToArray и ToList путём предоставления количества элементов

Reading time4 min
Views30K
Методы расширения ToArray и ToList — удобный способ быстро преобразовать перечисляемую последовательность (например, Linq-запрос) в массив или в список. Однако, в них есть кое-что беспокоящее меня: оба эти метода очень неэффективны, если они не знают количество элементов в последовательности (что почти всегда происходит, когда вы используете их в Linq-запросе). Давайте сперва рассмотрим метод ToArray (ToList имеет несколько отличий, но принцип практически такой же).
Читать дальше →

Когда this == null: невыдуманная история из мира CLR

Reading time5 min
Views33K
Довелось как-то раз отлаживать вот такой код на C#, который «на ровном месте» падал с NullReferenceException:

	public class Tester {
		public string Property { get; set; }
		public void Foo() {
			this.Property = "Some string"; // NullReferenceException
		}
	}

Да, вот на этой самой строчке с присвоением свойства падал NullReferenceException. Что за дела, думаю — неужели рантайм перестал проверять наличие экземпляра перед вызовом экземплярных методов?

Как оказалось — в некотором роде да, перестал. Правда, и компилятор оказался не тем, за кого себя выдаёт, да и проверки вовсе не гарантированы рантаймом… Подробнее — под катом.
Читать дальше →

Именование сложных действий в REST API

Reading time3 min
Views65K
Во всех руководствах в описаниях REST дают простые примеры, типа вот вам пользователи, они будут ресурсом /users, вот вам один пользователь, он будет /users/[id] и действия с ним добавить\удалить\изменить.

А что если действия сложные или комплексные и не вписываются в GET\POST\DELETE?

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

Оптимизация ASP.NET — практические советы по работе с IIS

Reading time12 min
Views102K
В данной публикации речь пойдёт о настройке важных параметров пула ASP.NET-приложений при вызове удалённых веб-сервисов и активной работе с сетью на стороне сервера через стандартные классы .NET.



Введение


Приходилось ли вам когда-нибудь самим настраивать производственные веб-сервера (production servers) под управлением ОС Windows Server 2008 R2/IIS 7.5 и выше? Для системных администраторов, имеющих большой опыт работы с IIS, скорее всего, это тривиальная задача, но вот для веб-разработчиков, которым по различным причинам порой приходится самим участвовать в настройке «боевых» серверов, данная информация может оказаться весьма полезной.

Итак, приступаем. Ускоряем сайт на ASP.NET — экономим деньги предприятия и нервы администратора.
Читать дальше →

Руководство к Car Tutorial (Unity3d) часть 3 из 3

Reading time18 min
Views29K
Часть 1
Часть 2

Прежде чем начнем, хочу предложить скрипты переписанные на C#. т.к половина скриптов на JS я решил переписать их под C# (мне C# роднее). Скачать

Так же идет активный «разбор» проекта для начинающих «Project: Survival shooter», видеоуроки представлены в следующем Плэйлисте, дополнительные видеоуроки к Survival shooter. Лично выражаю благодарность этому каналу, за их не легкий труд.

p.s в конце этого руководства есть видео обзор в котором на примерах идет сравнение двух реализованных методов управления автомобилем.

Итак, приступим к изучению нашего руководства.

Часть 3: Под капотом


Мы уже видели, как собрать рабочую машину из 3D-модели, скриптов и встроенных компонентов. Мы также познакомились с публичными переменными и как они могут быть использованы для тонкой настройки автомобиля.
Читать дальше →

Интересное по хабу .Net за 2014 год

Reading time2 min
Views26K
Мы с вами люди рабочие и зачастую не замечаем ничего что происходит за пределами нашей работы. Так и я, работая изо дня в день, знаю только про свой SpecFlow и смежные вопросы. Но ничего – по сторонам. Этим постом я хочу восполнить пробелы новостей в области .Net

Новости хаба .Net на Хабре занимают 33 страницы или 328 постов. Что говорит о том что новости появляются почти каждый день =) Посмотрим на самое интересное из них (на мой скромный взгляд). Ну и загляните под кат: до ката, конечно же, не все.

Доступен новый JIT: теперь с поддержкой SIMD
Как работает декомпиляция в .Net или Java на примере .Net
Microsoft раскрыла исходный код компилятора С#
Consulo: ~1000 коммитов, или как прошла осень
Под капотом у Stopwatch
Как тестировать код финализатора (c#). Послесловие: тест все-таки упал
Посмотреть на прочие статьи

Подготовка к сертификационному экзамену Microsoft 70-483 «Programming in C#»

Reading time13 min
Views104K

Во время подготовки к экзамену номер 70-483 нашел множество разрозненных сайтов с различными ссылками на мануалы, которые мне немного помогли. Но, что помогло мне больше, так это то, что я составил для себя памятку на нескольких страницах, выдержками из которой и хочу поделиться.
Целью не является подробное описание C#, целью является освежить в памяти и заострить внимание на некоторых необходимых темах. Если какие-то темы вам незнакомы, то это значит, что у вас есть пробелы, которые необходимо устранить.
Раскрывать вопросы тестирования я не могу (да и не помню я уже их), но, если многие из перечисленных ниже нюансов, трюков и тонкостей, помогут вам, то вы на меня не обижайтесь (написано с иронией).
Читать дальше →

[LibGDX] Создаем клон Flappy Bird — Zombie Bird

Reading time127 min
Views199K
Доброго времени суток %username%. Не давно наткнулся на хороший туториал по созданию клона игры Flappy Bird используя LibGDX и этот туториал мне понравился своей простотой и детализацией.

Я отдаю себе отчет, что тема создания клонов данной игрушки изъела себя, но возможно кому-то пригодится еще один хороший туториал.

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

Краткий конспект по языку JavaScript

Reading time15 min
Views114K
Я —.NET разработчик. Но в последнее время всё чаще сталкиваюсь с JavaScript. Причём, процентах в 50 случаев я что-то на нём пишу, в остальных 50 — разбираюсь с чужим кодом, да ещё и прошедшим через минификацию, а иногда и обфускацию. В этой статье захотелось поделиться теми моментами, которые мне показались важными для понимания языка и эффективной работы с ним. Тут не будет ничего нового или неизвестного для людей, уже имевших дело с языком, и не будет чего-то такого, чего нельзя найти в других источниках. Для меня статья будет полезна как способ лучше разобраться в предмете, для читателей, я надеюсь, — как повод освежить знания.

Брендан Айк упоминал, что JavaScript был создан за 10 дней. Думаю, идея вынашивалась дольше. Как бы то ни было, язык получился и с тех пор только набирает популярность. Особенно после появления AJAX.

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

JavaScript состоит из трёх обособленных частей:

  • ядро (ECMAScript),
  • объектная модель браузера (Browser Object Model или BOM),
  • объектная модель документа (Document Object Model или DOM).


В статье, в основном, пойдёт речь о ядре. Конечно, в примерах кода будут использоваться элементы DOM и BOM, но заострять на них внимание не буду.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity