Search
Write a publication
Pull to refresh
1
0
Виталий Ф. @FuN_ViT

программист, синьор-помидор :)

Send message

DevConf 2014: Пишем функциональное, надежное и быстрое веб-приложение на Go

Reading time2 min
Views9.3K

Дмитрий Вьюков, разработчик, Google работающий над ядром языка Go выступит докладчиком на DevConf 2014

Поддержите Дмитрия, чтоб доклад вошел в программу конференции DevConf 2014


В программе еще 2 доклада по Go:
  • Go на Google App Engine — просто, надёжно, быстро и недорого.
  • Go: аналитика Рунета в реальном времени
Предлагаем Вашему вниманию интервью с автором доклада
Читать дальше →

Гикпорн 4 — продолжаем вскрывать микросхемы: БК0010, MEMS гироскоп и немного Роснано

Reading time4 min
Views59K
С момента публикации предыдущего поста с вскрытыми микросхемами прошло пол года — пора рассказать, что удалось увидеть нового. Для тех кто пропустил первые 3 серии — вот раз, два, три.

Toshiba TCD1201D — линейный монохромный CCD светочувствительный сенсор из 2048 элементов. Датчики такого типа применяются в факсах, считывателях штрих-кодов и даже на спутниках, фотографирующих землю. Сами светочувствительные элементы — в линии в центре кристалла. Накопленный за время облучения светом заряд постепенно «сдвигается» к краю кристалла двухфазным тактовым сигналом, где он усиливается — и далее уже может быть оцифрован, получится 1 строчка изображения.

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

Как оптимизировать сайт для мобильных устройств с помощью PageSpeed Insights

Reading time2 min
Views86K
Уровень подготовки веб-мастера: для всех

Мы опубликовали на сайте PageSpeed Insights новые рекомендации, которые помогут улучшить сайты для мобильных устройств.
PageSpeed Insights для мобильных устройств
Недостаточная оптимизация может свести на нет все преимущества быстрой загрузки сайта. В среднем загрузка одной страницы на мобильных устройствах длится более 7 секунд, но правильное использование инструмента PageSpeed Insights позволяет значительно сократить это время. Предположим, вам удалось добиться загрузки сайта не за семь секунд, а всего за две. Но какой в этом смысл, если пользователю все равно придется потратить ещё 5 секунд на то, чтобы увеличить размер шрифта и прокрутить страницу до нужного места? Новые рекомендации PageSpeed Insights помогут выявить и устранить подобные проблемы.
Список новых рекомендаций

Мэтт снова угрожает новым алгоритмом

Reading time3 min
Views11K
image
Из-за специфики предлагаемого нами продукта, команда Paysto постоянно интересуется новыми тенденциями и предполагаемыми изменениями в сфере SEO, а в частности, алгоритмом работы поисковых систем. Во время работы над прошлой статьей, при просмотре массы видеообращений от Мэтта Каттса, специалиста, работающего в группе, которая занимается развитием качества поиска Google, мы наткнулись на видео о том, что, возможно, Google в очередной раз планирует изменить алгоритм ранжирования сайтов. По заявлению Мэтта при создании нового алгоритма постарались максимально реализовать возможность учета социальных факторов при формировании рейтинга того или иного ресурса.
Читать дальше →

Мониторинг выполнения management команд в Django

Reading time3 min
Views6.3K
Часто и во многих проектах, используются фоновые задачи. Но в подавляющем большинстве, по какой-то причине не используется никакого мониторинга. Речь идет о таких сервисах как Sentry, NewRelic или же нативный ErrorReporting. Нет никаких отчетов о том, как долго выполняется команда, с какой ошибкой и каким образом был завершен процесс. В итоге никто не знает на сколько корректно работает проект и недоумевают, когда в репортах или в crm не хватает каких-либо данных, или же статистика неполная/неверная. Заметно это не всегда и отнюдь не сразу. То есть обнаруживается на много позже, после сдачи проекта.
Читать дальше →

Самолёт, HD FPV, линк 600 км по 4G

Reading time2 min
Views56K
В продолжение к вчерашнему топику про машинку.

На машинке отлично покатались, но аппетит приходит во время езды — захотелось полетать. Само собой, над Питером, управляя из Москвы. Да простит меня Хабр, но самолёт — намного круче чем машинка, так что заслуживает отдельного топика.

У realizator как раз имеется самолёт Bixler, специально для экспериментов. Самолётик уже бывалый, успешно пережил немало морковок. Для тех кто не в теме — морковка это такая фигура высшего пилотажа, когда самолёт втыкается носом в землю.



Вот мы и подумали что ещё одна морковка погоды не сделает. Реализатор установил на Бикслер (который, кстати, имеет кличку «Кащей», ибо бессмертный) тот же самый комплект, который на машине стоял. Добавили один канал (для самолёта минимум три канала PWM требуется). Я у себя дома вместо курковой автомобильной аппы подключил самолётную аппаратуру управления (народную Турнигу — Turnigy 9x). Тот же самый сервер команд, та же рулилка виндовая — всё без изменений.

Реализатор поехал на полянку на окраине Питера, поездил рядышком — телеметрия с борта показала что сигнал Йоты намного слабее чем на Дворцовой площади был, но он есть и видео более-менее идёт.
Читать дальше →

Исходный код ASP.NET vNext опубликован на Github

Reading time2 min
Views17K
Компания Microsoft сделала шаг навстречу разработчикам, выложив на Github исходный код следующей версии ASP.NET (vNext), а также примеры приложений, демонстрационные образцы новых функций и документацию.

О публикации кода в открытом доступе под свободной лицензией Apache 2 компания сообщила позавчера. Исходники старой версии ASP.NET и раньше частично были опубликованы на http://aspnetwebstack.codeplex.com/, и предполагалось, что vNext окажется там же. Но всё-таки выбрали Github.

ASP.NET vNext — обновлённая версия ASP.NET с оптимизацией для облачных веб-приложений. Новый фреймворк должен упростить разработку приложений, а также существенно повысить их производительность. Репозиторий содержит обновлённые версии MVC, Web API, Web Pages, SignalR и EF.
Читать дальше →

Визуальное редактирование разметки внутри Android-приложения

Reading time6 min
Views13K
Преамбула

Eclipse и Idea имеют собственные средства визуального редактирования разметки Android-приложения. NetBeans лишен этого счастья. Желание сотворить нечто подобное для привычной NetBeans сравнительно простыми средствами привело к идее перенести процесс визуального редактирования в само приложение. Резонов здесь несколько:
  • естественный Preview разметки средствами самого Android;
  • возможность автономной работы без desktop-ой IDE (может быть интересно, в первую очередь, дизайнерам);
  • «Богу – богово, а кесарю — кесарево». При реализации удобно использовать уже имеющиеся структуры данных View-объектов, константы классов и т.п…

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

Выбери свой Storage на DevConf 2014 — 14 июня или как мы объяли необъятное

Reading time1 min
Views4.4K
Коллеги — в этом году уникальная возможность выбрать правильную базу данных или хранилище для своих проектов!

Наша секция Storage — бьет все рекорды по количеству заявок на доклады
devconf.ru/offers/storage

Непосредственные разработчики MySQL, Percona, Sphinx, PostgreSQL создали еще одну конференцию в составе DevConf!
Приходите будет интересно! devconf.ru/join

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

Imagine Cup 2014 или первый опыт создания игры

Reading time7 min
Views13K
Девять месяцев назад у меня начался 2 курс университетской жизни: занимался спортом, учился, но не было никакой работы или большого увлечения, за которыми я бы проводил много времени, разве что видео игры.

Но спустя пару месяцев узнал, что у нас на кафедре работают ребята над созданием своих собственных игр. Я был заинтересован, ведь это было круто, наплыло сразу столько вопросов и идей в голове: «Как они это делают? А я ведь и сам хотел бы сделать свою игру. Как работает команда при создании игры? Как поддерживать атмосферу?» и т.д.

Когда посмотрел на то, что они уже сделали, не думая, написал одному из ребят в социальной сети, он был преподавателем по программированию, поэтому я был с ним знаком. Я долго ждал ответа и дождался, мы около часа разговаривали: заваливал его интересующими меня вопросами, а он охотно на них отвечал, это чувствовалось. Наконец я сказал: «Я ХОЧУ ДЕЛАТЬ ИГРЫ С ВАМИ! Возьмёте меня к себе? Я умею программировать!», на что он сказал, что они подумают с командой и примут решение. Не прошло и двух дней, как мне сказали: «Мы берём тебя!», я был очень доволен.

И вот уже через несколько дней мы все собираемся в уютной кафешке в центре города для того, чтобы обсудить план своих действий, текущие наработки и идеи. Я с увлечением смотрел на то, как они все обсуждают, показывают рисунки различных прототипов – все это было для меня новым и очень увлекательным. Мы решили, что будем работать на новом для нас игровом движке Unity3D, потому что он мультиплатформенный и постоянно растёт функционально. Решение было вполне аргументировано, ребята ранее работали с множеством других аналогов и даже писали свой движок на основе XNA. Мне ничего не оставалось, как согласиться.

Долгое время пришлось осваивать базовые функции и операции в Unity. Но постепенно все встало на свои места и начались получаться первые наработки.

Изначально я научился создавать 3D-местности: задаёшь размеры для плоскости, а затем на ней вырисовываешь различными кисточками горы и впадины. Можно создать очень реалистичный рельеф, затем наносишь текстуры, создаёшь воду, небо, солнце, и твой маленький виртуальный мир готов. Сначала я не мог поверить, что все так просто. Постепенно круг моих задач рос: работа с камерами, создание управления…

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

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

Ну вот что у нас получилось:



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

Организация OLAP куба средствами Python

Reading time4 min
Views26K
Добрый день, уважаемые читатели.
Сегодня я расскажу вам о том, как можно построить простенькую систему анализа данных на Python. В этом мне помогут framework cubes и пакет cubesviewer.
Сubes представляет собой framework'ом для работы с многомерными данными с помощью Python. Кроме того он включает в себя OLAP HTTP-сервер для упрощенной разработки приложений отчетности и общего просмотра данных.
Сubesviewer представляет собой web-интерфейс для работы с вышеуказанным сервером.

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

Перевод учебника по алгоритмам

Reading time1 min
Views167K


Рад сообщить, что вышел перевод отличнейшего учебника Дасгупты, Пападимитриу, Вазирани «Алгоритмы», над которым я работал последние несколько лет. В книге многие алгоритмы объяснены гораздо короче и проще, чем в других учебниках: с одной стороны, без излишнего формализа, с другой — без потери математической строгости. Откройте книгу на каком-нибудь известном вам алгоритме и убедитесь в этом. =)

В общем, угощайтесь: печатный вариант перевода, электронный вариант перевода (PDF), печатный вариант оригинала, электронный вариант оригинала (PDF).
Читать дальше →

Выжимаем максимум из DDMS

Reading time6 min
Views36K
DDMS (Dalvik Debug Monitor Server) — безумно полезный инструмент для отладки приложений, который идет в комплекте с Android SDK, о котором почему-то особо и не сказано на хабре, впрочем как и в примерах google он представлен в очень скромном виде. Я бы хотел раскрыть его возможности и показать на что он способен. Вкратце:
  • изучать информацию о работающих потоках;
  • анализировать heap на количество свободной и занятой памяти;
  • анализировать какие объекты чаще создаются, их размер и другое (Allocation tracker);
  • находить проблемные участки кода, которые долго работают и требуют оптимизации (Method profiling). Это я советую знать всем.

Об этих вещах будет рассказано в рамках данной статьи. И для справки, менее интересное, что довольно тривиально и о чем НЕ будет рассказано в рамках данной статьи:
  • работать с файловой системой эмулятора или устройства;
  • находить информацию об ошибках (привет LogCat);
  • эмулировать звонки/смс/местоположение;
  • использовать инструмент Network Statistics.


Если заинтересовались, прошу под кат.

Опрос: какая методология используется в вашем проекте или насколько все у нас через это?

Reading time2 min
Views49K
image
Ровно 5 лет назад я решил устроить опрос по поводу того, какая методология используется в отечественных проектах. Особой цели не было — мной двигало чистое любопытство.

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

На 3-м месте оказался Scrum (14%)

2-е место досталось нашей любимой методологии “Как получится” (21%)

А 1-е место с большим отрывом заняла методология… (18+)
Кто же оказался на 1-м месте?

Crazy Cube World Game. Создание. Часть 1

Reading time4 min
Views8.4K


Здравствуй Хабр! Вот и я решился на написание своего первого поста. И поводов для этого предостаточно. Появилось свободное время, и я решил воплотить свою идею в жизнь. Как уже понятно из названия это игрушка Crazy Cube World Game (Сумасшедший мир кубиков). В первом посте расскажу о самой концепции игры. Я уже давно занимаюсь сборкой серверов Minecraft, копался в исходниках игры, модов. Изучал прочие песочницы и как по мне так всегда чего не хватало. Это все и привело к созданию игры. В целом она будет представлять из себя некую смесь RPG, песочницы с неограниченным открытым миром.

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

Списки с разными типами элементов и разными провайдерами данных

Reading time7 min
Views8.1K

Предисловие


Однажды понадобилось мне выводить в одном ListView карточки разных типов, да еще и полученные с сервера по разным API. Мол, пусть пользователь порадуется и в одной ленте новостей увидит:
  • карточки видео, с тамнейлами и описаниями;
  • карточки авторов или тегов, с большой кнопкой «подписаться».

Очевидно, что мастерить один большой layout, в котором учитывать все мыслимые варианты карточек — плохо, да и расширяться это будет так себе.



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



Ну и чтобы жизнь медом не казалась, серверное API менять нельзя.
Читать дальше →

Налоговый вычет для программистов (авторов программ)

Reading time4 min
Views28K
IT отрасль в целом и создание продуктов интеллектуальной собственности (компьютерные программы и многое другое) в частности – немалая движущая сила современной экономики и мирового прогресса.

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

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

Вы мне Javascript сломали

Reading time5 min
Views63K
Давным-давно

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

Самое крутое, классное и волшебное, что было в JS — это то, что никто в больших организациях не хотел с ним иметь дела, оставаясь в своём спокойном мире прекрасно организованных слоёв абстракций из фабрик и волшебных фреймворков инъекций XML.

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

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

Мы достигли расцвета JS

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

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

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

Еще один дайджест (теперь Go)

Reading time4 min
Views19K
image Привет всем фанатам и интересующимся Go. Это 6-й выпуск дайджеста ссылок и новостей о набирающем популярность языке. Не сочтите за наглую попытку пропиарить ресурс, на котором я регулярно публикую новости все о том же Go. Все последующие выпуски «тулзовин и хреновин» будут публиковаться именно на 4gophers.com. Кроме того, по просьбам трудящихся, теперь есть подписка на рассылку.

Тема этого выпуска — GopherCon 2014. Это самая большая Go-конференция в этом году. Возможно, кто-то из читателей лично присутствовал и может рассказать о своих впечатлениях. Все найденные в сети доклады и материалы я стараюсь собрать в этом посте.

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

Information

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