Как стать автором
Обновить
3
0

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

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

Git Workflow

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

1 Вступление



В топике освещаются не столько подробности работы с git, сколько его отличия от схемы разработки других систем контроля версий, и общий подход (выработанный по большей части личным опытом и Git Community Book) к работе.


Читать дальше →
Всего голосов 120: ↑116 и ↓4+112
Комментарии147

Постигаем Git

Время на прочтение6 мин
Количество просмотров56K
От переводчика: в этой статье нет описания команд git, она подразумевает, что вы уже знакомы с ним. Здесь описывается вполне здравый, на мой взгляд, подход к содержанию публичной истории в чистоте и порядке.

Если вы не понимаете, что побудило сделать git именно таким, то вас ждут страдания. Используя множество флагов (--flag), вы сможете заставить git работать так, как по вашему мнению он должен работать, вместо того, чтобы работать так, как git того хочет. Это как забивать гвозди отверткой. Работа делается, но хуже, медленнее, да и отвертка портится.
Читать дальше →
Всего голосов 126: ↑120 и ↓6+114
Комментарии91

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

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

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



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

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

Домашняя бухгалтерия на платформе CUBA. Часть 2

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


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

В первой части я рассказал об основных частях приложения: модели данных, бизнес-логике среднего слоя и экранах, созданных на технологии Generic UI платформы. Во второй части, как и обещал, расскажу о том, как сменить тему Generic UI, как изменить поведение визуального компонента, и опишу устройство дополнительного UI для мобильных устройств, написанного на JavaScript.

Читать дальше →
Всего голосов 23: ↑22 и ↓1+21
Комментарии0

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

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

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

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

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

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


В статье, в основном, пойдёт речь о ядре. Конечно, в примерах кода будут использоваться элементы DOM и BOM, но заострять на них внимание не буду.
Читать дальше →
Всего голосов 75: ↑65 и ↓10+55
Комментарии20

Рецепт новогоднего корпоратива в стиле ИТ

Время на прочтение6 мин
Количество просмотров29K
«А ну-у-у-ка теперь все выходим в центр и встаём в круг, мальчик-девочка, да поплотнее-е-е-е!». На третий раз после такого мы чуть было не выбросили ведущую из окна четвёртого этажа. Пронесло. Успели бы выпить чуть больше, трагедии не миновать.

Знакомая ситуация? Вы долго и упорно ищете ведущего на корпоратив, тщательно описываете ситуацию и публику, обсуждаете все нюансы выступления, а он устаивает деревенскую свадьбу. Ну это когда всем надо отплясывать под Сердючку, передавать подбородком апельсины, попадать карадашом в бутылку и щупать друг дружку с завязанными глазами.

Примерно так мы пару лет назад отмечали 8 марта. После чего решили, что впредь развлекательную программу будем готовить только сами. И на прошлый Новый год жребий пал на меня. В то время мне пришлось серьёзно потрудиться и с моей стороны было бы в высшей степени неправильно не поделиться полученным опытом.

Так что, если Вы сейчас находитесь в похожей ситуации — этот пост как раз для Вас. Под катом история о том, какие я готовил конкурсы, и как в результате прошел праздник.
Читать дальше →
Всего голосов 34: ↑17 и ↓170
Комментарии4

Мой первый Eclipse-плагин

Время на прочтение4 мин
Количество просмотров26K
Приветствую, дорогие хаброчитатели!
Некоторое время назад мне выпала интересная задача – написать плагин для Eclipse. Причем плагин не простой, а с хитрой задумкой.
Опыта написания плагинов для Eclipse у меня никогда не было, но надо – так надо, а что из этого получилось – под хаброкатом.
Читать дальше →
Всего голосов 19: ↑12 и ↓7+5
Комментарии4

Когда нельзя но очень хочется: два разных монитора от одного DVI порта

Время на прочтение2 мин
Количество просмотров113K
Привет Хабр!

Началось всё с того, что я захотел подключить к своему компьютеру второй монитор, для увеличения продуктивности, так сказать. Им оказался собранный из двух нерабочих Acer AL1716 с аналоговым d-sub входом. Первый монитор — Dell 2007WFP, подключен по DVI-D(Single Link). Как оказалось, существует возможность запустить оба монитора в режиме расширения рабочего стола от одного DVI порта на матплате.
Читать дальше →
Всего голосов 71: ↑71 и ↓0+71
Комментарии39

Исключения в Java, Часть I (try-catch-finally)

Время на прочтение23 мин
Количество просмотров439K
Это первая часть статьи, посвященной такому языковому механизму Java как исключения (вторая (checked/unchecked) вот). Она имеет вводный характер и рассчитана на начинающих разработчиков или тех, кто только приступает к изучению языка.

Также я веду курс «Scala for Java Developers» на платформе для онлайн-образования udemy.com (аналог Coursera/EdX).

1. Ключевые слова: try, catch, finally, throw, throws
2. Почему используем System.err, а не System.out
3. Компилятор требует вернуть результат (или требует молчать)
4. Нелокальная передача управления (nonlocal control transfer)
5. try + catch (catch — полиморфен)
6. try + catch + catch + ...
7. try + finally
8. try + catch + finally
9. Вложенные try + catch + finally


1. Ключевые слова: try, catch, finally, throw, throws


Механизм исключительных ситуаций в Java поддерживается пятью ключевыми словами
  • try
  • catch
  • finally
  • throw
  • throws


«Магия» (т.е. некоторое поведение никак не отраженное в исходном коде и потому неповторяемое пользователем) исключений #1 заключается в том, что catch, throw, throws можно использовать исключительно с java.lang.Throwable или его потомками.
Читать дальше →
Всего голосов 67: ↑47 и ↓20+27
Комментарии24

Декодирование JPEG для чайников

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

[FF D8]


Вам когда-нибудь хотелось узнать как устроен jpg-файл? Сейчас разберемся! Прогревайте ваш любимый компилятор и hex-редактор, будем декодировать это:


Jpeg file in hex editor


Специально взял рисунок поменьше. Это знакомый, но сильно пережатый favicon Гугла: Google favicon


Последующее описание упрощено, и приведенная информация не полная, но зато потом будет легко понять спецификацию.


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


[FF D8] — маркер начала. Он всегда находится в начале всех jpg-файлов.


Следом идут байты [FF FE]. Это маркер, означающий начало секции с комментарием. Следующие 2 байта [00 04] — длина секции (включая эти 2 байта). Значит в следующих двух [3A 29] — сам комментарий. Это коды символов ":" и ")", т.е. обычного смайлика. Вы можете увидеть его в первой строке правой части hex-редактора.

Читать дальше →
Всего голосов 413: ↑408 и ↓5+403
Комментарии140

Уютный книжный пост для вас и вашего проекта

Время на прочтение8 мин
Количество просмотров131K
Как заработать миллион за день, стать искусным оратором за неделю, похудеть на 100 кг за 2 дня, стать успешным в тысяча ста начинаниях и прочая мишура регулярно засоряет наше информационное пространство. А порой так хочется взять в руки книгу, которая не просто съест кусок вашего свободного времени повествуя о неприменимых в отечественных реалиях вещах, но и подкинет хотя бы несколько полезных советов, способных оказать позитивное влияние на развитие вашей личности и вашего проекта.

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

image

Читать дальше →
Всего голосов 76: ↑62 и ↓14+48
Комментарии45

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

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


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


Содержание



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

Семь принципов создания современных веб-приложений

Время на прочтение19 мин
Количество просмотров188K
Эта статья основана на моей презентации с конференции BrazilJS в августе 2014 года. Она базируется на идеях, о которых я писал в блоге недавно, в основном, в связи с UX и производительностью.

Я хочу представить 7 действенных принципов для веб-сайтов, которые хотят применить JavaScript для управления UI. Эти принципы являются результатом моей работы как веб-дизайнера, но также как давнего пользователя WWW.

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

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

  • Должен ли JavaScript использоваться как замена функциям браузера: история, навигация, рендеринг?
  • Умирает ли бэкенд? Нужно ли вообще рендерить HTML?
  • Правда ли, что будущее за приложениями на одной странице (Single Page Applications, SPA)?
  • Должен ли JS генерировать страницы на веб-сайте и рендерить страницы в веб-приложениях?
  • Нужно ли использовать техники вроде PJAX или TurboLinks?
  • Каково точное отличие между веб-сайтом и веб-приложением? Должно ли остаться что-то одно?
Читать дальше →
Всего голосов 108: ↑99 и ↓9+90
Комментарии33

IceCash 1.3. Linux рабочее место кассира на php, с драйвером Штрих-М

Время на прочтение1 мин
Количество просмотров26K
image

Всем привет. Как-то давным придавно писал статью первый пост о проекте IceCash. Собственно никуда этот проект не потерялся, живет себе в моей организации и понемногу совершенствуется. Работает примерно на сорока кассах. Не шедевр, конечно, но свою функцию выполняет.
Читать дальше →
Всего голосов 51: ↑34 и ↓17+17
Комментарии13

Подключаем китайскую метеостанцию

Время на прочтение3 мин
Количество просмотров42K
В сети широко рассматривался вариант реализации датчика температуры, выполненного на микросхеме DS18B20 и подключенного к роутеру TP-link MR-3020 ( с прошивкой OpenWRT) через преобразователь PL2303.
Утилитой digitemp датчик читался и данные отправлялись на сайт narodmon.ru.

Но данного функционала оказалось маловато, захотелось чего-то большего…
Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии15

Опыт создания бюджетной школьной информационной системы

Время на прочтение4 мин
Количество просмотров99K
В этой статье не будет описания самых передовых технологий. Здесь все намного скромнее. Я просто хочу поделиться опытом по организации бюджетной школьной информационной системы.

Школа у нас обычная, на 1300 школьников + примерно 100 сотрудников (педагогический коллектив и технический персонал). Из компьютерного оборудования в школе 118 компьютеров, пару серверов, 18 интерактивных досок и куча другой компьютерной периферии (и все это железо далеко не новое). В общем, финансированием на ИКТ школа не избалована (в отличии от столичных).

И вот в 2011 году школа получает грант на развитие — целых 400 тысяч рублей. Руководство решило рискнуть — и на часть этих денег решили создать школьную информационную систему. Общий бюджет системы составил 140 тысяч рублей, совсем не густо, но что поделать. Зато название системе дали гордое — Интерактивная Информационная Система (ИИС).

image

Подробности
Всего голосов 80: ↑74 и ↓6+68
Комментарии102

Астрономия за компьютером

Время на прочтение4 мин
Количество просмотров35K
Вот и начался новый учебный год. Ученики и студенты хлынули в двери научных заведений. А учителя и преподаватели приготовились их встречать. Но вот, уже прошли первые дни, радость (я ведь не ошибаюсь?) встречи немного поутихла и наступили обыкновенные будни. Преподаватели с одной стороны, студенты и ученики с другой. Цепочкой, которая их объединяет, есть изучаемый предмет, личностный характер как представителей одной, так и другой стороны, их харизматичность, коммуникационные качества и так далее. И если характер, и иные качественные особенности индивидуума разные в зависимости от человека, то предмет служит чем-то обобщающим. И интересно, качественно преподнеся его ученику (студенту), учитель (преподаватель) устанавливает прочную связь с аудиторией. С другой стороны аудитория интересности «кушает» с удовольствием.
Соответственно захотелось остановиться на преподавании интересной и древнейшей науки – астрономии. Вернее, даже не на преподавании, как о таком, а о его разнообразии. А как можно разнообразить преподавание в ХХІ веке? Ну конечно – используя программное обеспечение и современные гаджеты.
Читать дальше →
Всего голосов 22: ↑17 и ↓5+12
Комментарии26

Образование, которое мы потеряли

Время на прочтение14 мин
Количество просмотров143K
В последнее время у многих моих друзей и коллег, занятых в различных секторах бизнеса, одна и та же проблема, которая часто оборачивается просьбой подсказать грамотного специалиста в некоторой области. А ведь я далеко не охотник за головами, не сотрудник эйчара, не менеджер по персоналу — просто научный сотрудник, имеющий вполне конкретную квалификацию, так что обращение к моей скромной персоне по данному вопросу — не иначе как жест отчаяния. Подобные просьбы означают, что существующие специально для этой цели институты перестают работать, что приводит к необходимости искать более-менее подходящих кадров через знакомых специалистов. Проблема в том, что эти люди — представители малого бизнеса, начальники отделов, начинающие предприниматели, которые не располагают большим бюджетом на наемный персонал. Но ведь и требуются им зачастую вовсе не эйнштейнокоперники, способные собрать космический шатл из того, что завалялось в гараже, а специалисты, способные решать вполне себе типовые задачи, обладающие знаниями и умениями на уровне рядового дипломированного специалиста.
Что же происходит?
Читать дальше →
Всего голосов 97: ↑75 и ↓22+53
Комментарии238

Создание умного домофона с автоответчиком и Интернет-соединением

Время на прочтение3 мин
Количество просмотров194K
Не так давно я чинил домофонную трубку и задумался — а не сделать ли мне небольшую модернизацию? Научить его уведомлять меня через Интернет о том, что кто-то приходил, или даже удалённо открывать дверь с мобильного телефона… А затем я решил — почему бы вообще не сделать автоответчик? На телефонах сейчас автоответчик уже мало кому нужен, а вот знать, кто же ко мне приходил, было бы весьма полезно, особенно при том, что я не привык брать трубку, если никого не жду. Воплотить идею в реальность оказалось не так уж сложно.
Читать дальше →
Всего голосов 146: ↑144 и ↓2+142
Комментарии80

+10 к интеллекту

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

Так или иначе, практически каждый из нас использовал в своей жизни технику интеллект–карт или Mind Mapping. Это всего лишь простая радиальная схема, но с правильным подходом ее можно превратить в мощный инструмент аналитики и синтеза информации, который всегда под рукой и достаточно прост в использовании. И что самое интересное, освоение техники настолько естественно для нашего мозга, что занимает всего лишь несколько минут…
Читать дальше →
Всего голосов 90: ↑75 и ↓15+60
Комментарии49

Информация

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