Pull to refresh
54
0
Егор @termi

User

Send message

BITcommander — ваш следующий файловый менеджер

Reading time2 min
Views21K
Мопед не мой, я просто хочу обратить внимание общественности на этот интересный проект. Может быть кто-то захочет его поддержать.



BITcommander это файловый менеджер нового поколения для Windows, целью которого является собрать лучшие из уже имеющихся решений и, переосмыслив их с точки зрения удобности использования, реализовать в виде новой программы, дающей пользователю более комфортный опыт навигации и управлении данными.
Далее вольный перевод страницы на Kickstarter
Total votes 105: ↑75 and ↓30+45
Comments93

Invisible.js — одни модели и на клиенте и на сервере

Reading time2 min
Views7.4K
Invisible.js — библиотека, позволяющая использовать одни и те же модели данных как на клиенте, так и на сервере. На сервере работает поверх express.js на клиент отдается через browserify.

Что есть:
  • возможность один раз описать модель (включая типизацию и валидацию) и использовать ее на клиенте и на сервере,
  • связь с MongoDb (при записи на сервере — объект пишется сразу в базу, при записи на клиете, используется RESTful API, автоматически созданное на сервере),
  • хуки на изменение данных (события бегают туда-сюда через socket.io).
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments11

Harmony collections NOW

Reading time11 min
Views9.6K

На хабре уже проскакивала статья про такие замечательные вещи, как Map, WeakMap и Set, но в действительности реальные возможности этих API не были раскрыты (если я все-таки хорошо воспользовался поиском).
Эти API толком не реализованы нигде, кроме firefox (можно включить в chrome canary), но даже там до недавних пор не поддерживалось использование HTMLElement-подобных объектов в качестве ключей. Polymer, например, убрал только три недели назад

	if (navigator.userAgent.indexOf('Firefox/') > -1)


Чем же они так хороши? По сути Map/WeakMap можно воспринимать как обычные хэш-объекты, только в качестве ключей можно использовать только сложные объекты (Object, Function, Array), так как привязка идет не по содержимому, а по адресу в памяти.
Таким образом появляется возможность привязаться на фронтэнде к
  • dom-элементу
  • XHR-запросу
  • File-элементу


Это дает нам возможность работать без id-шников элементов, делать дата-биндинг в разы быстрее, создать безумную альтернативную реализацию promises и так далее.
Мы будем говорить о WeakMap. Даже не так, мы будем говорить о существующих полифиллах для WeakMap.

Читать дальше →
Total votes 41: ↑38 and ↓3+35
Comments16

Несколько интересностей и полезностей для веб-разработчика (выпуск 7)

Reading time3 min
Views61K
Доброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Browserhacks



Название говорит самое за себя. Данный ресурс — хранилище всевозможных хаков к существующим браузерам. Увидев этот сайт, сам Paul Irish мудро произнес: "Holy shit amazing".

5 замечательных изобретений от David DeSandro (Twitter, H5BP)


Masonry — в переводе «каменная кладка» — идеальное решение для создания Grid Layout. Качественная «замена» для неутвержденной Flexbox спецификации. Простой синтаксис дает возможность без труда создавать Pinterest/Surfingbird подобные макеты. Существует на нативном JavaSciprt и как jQuery плагин.

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

imagesLoaded.js — определяет когда изображения были загружены. Включает в себя 4 события: always, done, fail, progress. Простой в использовании.

Draggabilly — аналог jQuery UI Draggable на нативном JavaScript в лучших традициях автора кода. Работает с touch интерфейсом.
Close Pixelate — «пикселизация» изображений в Canvas аля потаённые места в некоторых работах жанра НЮ.

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

Разработка проекта AppJS прекращена, в дальнейшем пользуйтеся node-webkit

Reading time2 min
Views11K
Чуть больше года назад (1 октября 2012 года) я выложил на Хабрахабре блогозапись «Node.js + Chromium = AppJS: один из перспективных вариантов второго шага эволюции веборазработчика», в которой привёл AppJS в качестве примера такого объединения движков Node.js и Chromium, которое позволяет каждому веборазработчику, употребляя привычные ему по работе технологии (JavaScript, HTML, CSS), сделаться разработчиком приложений с GUI (графическим интерфейсом пользователя), объединяющих в себе выразительные способности браузера Chromium и мощь API Node.

На следующий же день (2 октября 2012 года) во блогозаписи «Node.js + Chromium = node-webkit: ещё более перспективный вариант второго шага эволюции веборазработчика» я указал, что AppJS — не единственный и даже не лучший вариант: node-webkit отличается удобством и бóльшими возможностями API, более обширной документацией, а также обеспечивает запуск ZIP-упакованных приложений.

И что же? — не прошло и тринадцати месяцев, как успех node-webkit сделался очевидным и для разработчиков AppJS. Сегодня во твиттере у AppJS вы можете прочесть о том, что разработка проекта AppJS прекращена, поскольку node-webkit достиг его цели:

[скриншот Twitter]

Читать дальше →
Total votes 39: ↑25 and ↓14+11
Comments19

Собранные требования к psd-макету веб-сайта

Reading time3 min
Views69K
Привет, фрондэнд разработчики!

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

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

Немного набрал в весе мозга и статуса в компании, в какой-то момент я понял, что так дальше продолжаться не может и начал собирать свои требования в psd макетам.
Читать дальше →
Total votes 47: ↑39 and ↓8+31
Comments70

Кроссдоменный postMessage или как браузеры поддерживают стандарты

Reading time3 min
Views17K
Во время прикручивания облачных хранилищ к скрипту для бэкапа, встала необходимость использовать OAuth 2 авторизацию, для использования с разными облачными API. В принципе с самой авторизацией никаких сложностей не возникло, но проблема возникла в немного неожиданном месте.

Учитывая аудиторию использующую софтину, было решено отказаться от поддержки древних браузеров, и всё затачивалась под современные браузеры, использующие HTML5, которые казалось бы уже вполне неплохо и одинаково поддерживают страндарты.

Но, не тут-то было…
Читать дальше →
Total votes 25: ↑21 and ↓4+17
Comments4

Темное программирование

Reading time7 min
Views139K
imageПредлагаю перейти на сторону зла, на темную сторону программирования. Ситхи сильнее джедаев. И печенек хватит на всех. Предупреждаю, прежде чем начнете читать далее. Характер при переходе на темную сторону портится.
Прошу под кат
Читать дальше →
Total votes 257: ↑203 and ↓54+149
Comments212

Почему мы перешли на Marionette.js

Reading time6 min
Views39K
Если глянуть на историю развития десктоп приложений, видно, что она начиналась с мощных серверов, которые могли слать экраны текста тонким клиентам. Тонкие клиенты давали команду, которую обрабатывал сервер и потом слал новый экран обратно клиенту.

С течением времени, оборудование стало дешевле и мы пришли к текущей модели, когда клиент делает значительную часть работы, а общается с сервером только для того, чтобы получить информацию, сохранить информацию или дать команду, которая должна быть запущена в защищенном, контролируемом окружении.
Читать дальше →
Total votes 52: ↑49 and ↓3+46
Comments47

Спасем крупнейшую медиатеку в рунете. Вся база rutracker у Вас на компьютере

Reading time10 min
Views194K
image

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

К сожалению, решить проблему своими силами у меня не хватило ни времени, ни, будем откровенны, знаний. Но, к счастью, мои слова возымели действие на людей, которые и тем и другим обладают. В итоге эти люди организовались и сообща сделали то, о чём так долго говорили большевики о чем я писал, а именно с помощью скриптов обошли рутрекер, сдампили все описания раздач с хешами, распарсили их и скомпоновали в удобную для употребления базу. В дополнение к этому так же была написана «морда»: программа для удобной работы с базой конечных пользователей, не знающих с какого конца держат grep. К сожалению, аккаунта на хабре никто из этой команды не имеет (если не считать read-only), в песочнице статья могла бы потеряться, поэтому меня выбрали как рупор для данной площадки. Я, честно говоря, раздумывал совсем недолго и только над тем, как правильнее все сделать. Если будут какие-то вопросы — задавайте мне в комментах, я либо отвечу сам, либо переадресую разработчикам. Технические тексты от первого лица, но я имею к ним косвенное отношение, они оставлены в таком виде для простоты восприятия.

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

Техническая часть, ссылки и немного лирики
Total votes 290: ↑274 and ↓16+258
Comments257

Tutorial Derby.js

Reading time5 min
Views16K

Надеюсь вы уже прочитали пост про сравнение фреймворков и сделали правильный выбор. Теперь дело за малым — обуздать этого непокорного жеребца, освоить так сказать не паханную целину, ну в общем вы поняли. Предупреждаю, изучение Derby вызывает изменение парадигмы. Мир веб-разработки для вас больше никогда не будет прежним.


Поехали!
Total votes 21: ↑16 and ↓5+11
Comments83

Обзор Tizen SDK. Web

Reading time6 min
Views20K
Привет, Хабр!

Самые любопытные из вас успели познакомиться с ОС Tizen, посмотреть на Tizen в действии и даже поковыряться в SDK с помощью наших образов Tizen SDK Live на основе Ubuntu.

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

image

Начнём мы сегодня с web-части.
Читать дальше →
Total votes 23: ↑20 and ↓3+17
Comments11

Создание npm-пакета

Reading time2 min
Views62K


Типичная ситуация — в проекте существует некий модуль. Модуль развивается, становится самостоятельным элементом и копируется в другой проект. Потом еще один проект. И еще.
В каждом проекте модуль обновляется и улучшается, и, в какой-то момент, становится не понятно, где актуальная версия. Да ладно, «не понятно где актуальная версия»! Вполне возможно, что в каждом проекте у модуля будут свои модификации, в которые будет достаточно сложно привести в порядок для использования в следующем проекте.
Вполне можно ограничиться созданием отдельного репозитория для модуля, например на GitHub или Bitbucket. Но добавлять репозиторий как субмодуль для GIT — это путь к приключениям.
Но можно пойти дальше, и создать на основе такого модуля npm-пакет. Работать с такими пакетами очень просто. Установить npm-пакет можно с помощью команды npm install, а обновить с помощью npm update.
Подробности
Total votes 31: ↑24 and ↓7+17
Comments4

Диплом магистра от Гарварда — реальность

Reading time4 min
Views69K
Некоторое время назад я задумался о получении второго высшего образования, т.к. первое не техническое, и хочется иметь какое-никакое подтверждение своих знаний, да и для получения хорошей базы.

Мой выбор пал на несколько отечественных вузов с вечерними программами, и я уже было выбрал МГТУ имени Баумана своей второй альма-матер, как я наткнулся на сайт Harvard Extension School .

image

Читать дальше →
Total votes 75: ↑64 and ↓11+53
Comments65

Часть 1. Как подключить смартфон к авто или история создания OBD Car Doctor

Reading time4 min
Views82K
История

Идея подключить смартфон к бортовой системе автомобиля возникла достаточно давно. Спусковым крючком стала прочитанная статья об электронной начинке современных авто и CAN шине, которая позволяет обмениваться данными различным устройствам, подключенным к этой шине.
image
Воображение рисовало радужные картины «робомобиля» полностью управляемого со смартфона, записывающего и оптимизирующего все параметры работы двигателя и систем, предупреждающего о критических параметрах и ошибках в работе. Ну ладно с управлением это, пожалуй, чересчур, ведь кроме цифровых датчиков тут понадобятся и некоторые управляющие контролеры с сервоприводами…

Картина чуть поблекла, но считывать-то доступные параметры мы сможем, а если повезет, то может и центральный замок открыть/закрыть сможем (хотя такая перспектива сулит дыру в системе безопасности Винд… т.е. автомобиля :) ).
И так, пора приступать к практическому исследованию!
Читать дальше →
Total votes 39: ↑32 and ↓7+25
Comments39

Сжатие данных при передаче от браузера к серверу

Reading time6 min
Views39K
Обрабатываете много данных в браузере?
Хотите отправлять их обратно на сервер?
Да так, чтобы отправлялось побыстрее и помещалось в один http запрос?

В статье я покажу как мы решили эту задачу в новом проекте, используя сжатие и современные возможности javascript.

Читать дальше →
Total votes 68: ↑64 and ↓4+60
Comments37

Мобильное приложение HTML5: ошибка или успех. Попытка №0

Reading time9 min
Views26K
За несколько лет, читая новости и события в мире Web разработки, у меня нарисовалась розовая мечта: написал один раз — работает везде и всегда. При этом очень часто встречаю негативные отзывы о разработке мобильных приложений на HTML5 ( тут и комментарии на статьи 1 и 2 ). Основные доводы бастующих: несоответствие родному интерфейсу, глючность и тормознутость, проблемы с хранением данных и тд и тп. Ни в коем случае не хочу запустить очередные холи вары на эту тему. Но мечта живет и ее можно подтвердить или отвергнуть только после собственного наступления на грабли.
Итак, цель – написать на HTML5 мобильное приложения для сбора заказов торговым агентом в торговых точках. Я сталкивался с данными решениями разных компаний, поэтому знаком с предметной областью, и эта тема идеально подходит для мечты.
Читать дальше →
Total votes 44: ↑37 and ↓7+30
Comments12

Размышления о торрентах, легальном контенте и борьбе с пиратством

Reading time4 min
Views32K
Возьмём за аксиомы:
  • Пиратство, как не крути, — плохо.
  • Текущие методы копирастии — неадекватны.
  • Текущие форматы, типа ДВД и т.п. — медленно отмирают.
  • Torrent — реально удобно.
  • Всегда есть категория людей, которым нечем оплачивать, но посмотреть — хочется.


Все согласны? По отдельным пунктам гусары могут помолчать!

P.S. этакий предварительный. Специально для ленивых людей, которые дочитали ровно до строки про пиратство и рванули писать гневные комменты, не прочитав остального: СТАТЬЯ НЕ ОБСУЖДАЕТ, ХОРОШО ЧТО-ТО ИЛИ ПЛОХО! Она ищет путь решения вопроса, при котором «И овцы сыты и волки целы»!

Итак, что можно сварить из этакого «топора»?
Читать дальше →
Total votes 73: ↑38 and ↓35+3
Comments131

Общественный совет при ФСБ предлагает запретить Tor и сайты-анонимизаторы, привлечь к ответственности их создателей

Reading time5 min
Views144K
Сегодня я прочёл на русском националистическом сайте «Спутник и Погром» новость «ФСБ хочет запретить защиту от электронной слежки», основанную на опубликованной сегодня же «Известиями» новости «Силовики предлагают запретить ПО, скрывающее пользователя в Сети». И новость эта такова, что от неё волосы должны дыбом стать на голове!

Общественный совет при ФСБ России (его логотип я привожу справа) счёл нужным (вероятно, на заседании 29 мая) предложить Госдуме внесение таких поправок в закон «Об информации, информационных технологиях и о защите информации», которые сделают противозаконными все программы, маскирующие информационные данные и IP-адреса пользователей. Это касается и браузера Tor, и анонимизирующих сайтов, позволяющих при помощи обычного браузера переходить с изменённым IP-адресом на некоторый другой сайт (заблокированный за «экстремизм», за «пропаганду суицида», за «пропаганду наркотиков», за «педофилию») и читать этот сайт невозбранно (быть может, втайне язвительно посмеиваясь над Роскомнадзором — кто знает?…). Теперь будет не до смеха.

Интересны приведённые «Известиями» реплики отдельных лиц в связи с этой инициативою.

Анатолий Григорьевич Кучерена (член Общественного совета при ФСБ, на выборах 2012 года ставший доверенным лицом Путина) заявил непосредственно «Известиям», что они готовят рекомендации депутатам о необходимости введения ответственности за создание программного обеспечения, позволяющего посещать запрещённые сайты. «Принять чёткий закон, в котором будут прописаны санкции, способные удержать программистов от желания создавать вредоносные программные продукты», — обозначил Кучерена намерения борцов с сетевою анонимностью.

Мнение Леонида Леонидовича Левина (первого заместителя комитета Госдумы по информационной политике) сводится к тому, что анонимайзеры используют люди, которые намереваются совершить какие-то незаконные действия, или те, кому есть что скрывать.

Сайт «Спутник и Погром» прибавляет, что после Tor и анонимизаторов неизбежно начнётся борьба против VPN — и это мнение я полагаю вполне справедливым, даже с прибавкою: не только VPN, но и SSH, а за ними и HTTPS, вероятно, и SSL в целом.

Читать дальше →
Total votes 249: ↑212 and ↓37+175
Comments833

Мобильная веб-разработка: HTML5 приложение для Android

Reading time11 min
Views112K

Вступление



К счастью, есть более чем один способ написать приложение для мобильного телефона. Можно сделать сайт, упаковать его специальным образом, и вуаля, вот вам и приложение!
Читать дальше →
Total votes 57: ↑39 and ↓18+21
Comments39

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity