Pull to refresh
1
0
Dzmitry Neviadomski @nevack

Android-разработчик

Send message

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 2 из 6

Reading time7 min
Views143K

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




Update:


Внимание, статья 4в даёт новую, более простую версию растеризатора.

Давайте знакомиться, это я.



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

В прошлый раз мы нарисовали проволочную сетку трёхмерной модели, в этот раз мы зальём полигоны. Точнее, треугольники, так как OpenGL практически любой полигон триангулирует, поэтому ни к чему разбирать сложный случай. Напоминаю, что этот цикл статей создан для самостоятельного программирования. Время, которое я здесь привожу — это не время чтения моего кода. Это время написания вашего кода с нуля. Мой код здесь только для того, чтобы сравнить ваш (рабочий) код с моим. Я совсем не являюсь хорошим программистом, поэтому ваш код может быть существенно лучше моего. Любая критика приветствуется, любым вопросам рад.

Пожалуйста, если вы следуете этому туториалу и пишете свой код, выкладывайте его на github.com/code.google.com и им подобные и давайте ссылки в комментариях! Это может хорошо помочь как и вам (другие люди могут чего посоветовать), так и будущим читателям.
Читать дальше →
Total votes 119: ↑116 and ↓3+113
Comments122

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 1 из 6

Reading time7 min
Views404K

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




Постановка задачи


Цель этого цикла статей — показать, как работает OpenGL, написав его (сильно упрощённый!) клон самостоятельно. На удивление часто сталкиваюсь с людьми, которые не могут преодолеть первоначальный барьер обучения OpenGL/DirectX. Таким образом, я подготовил краткий цикл из шести лекций, после которого мои студенты выдают неплохие рендеры.

Итак, задача ставится следующим образом: не используя никаких сторонних библиотек (особенно графических) получить примерно такие картинки:



Внимание, это обучающий материал, который в целом повторит структуру библиотеки OpenGL. Это будет софтверный рендер, я не ставлю целью показать, как писать приложения под OpenGL. Я ставлю целью показать, как сам OpenGL устроен. По моему глубокому убеждению, без понимания этого написание эффективных приложений с использованием 3D библиотек невозможно.
Читать дальше →
Total votes 198: ↑196 and ↓2+194
Comments120

Всё о версиях Windows 8.1 и о том, как легально загрузить последний образ без подписки

Reading time6 min
Views770K
Хочу поделиться в одной заметке важной, на мой взгляд, информацией о версионности образов Windows 8.1, и о том, как любой желающий может совершенно легально загрузить ту языковую версию и издание, которые ему требуется. С учётом того, что после выхода Windows 8.1 образы пересобирались минимум пять раз, вопрос версионности становится интересным для администраторов и энтузиастов.

Недавно я писал о том, как можно совершенно легально загрузить самый последний Microsoft Office с сайта Microsoft — как корпоративную версию, так и коробочную Retail — любые языки и продукты, со всеми интегрированными обновлениями. Сегодня я расскажу, как сделать то же самое и с операционной системой — средствами предоставляемыми самой Microsoft.

Но для начала я хочу рассказать о версиях Windows 8.1. Не об изданиях — этого добра в сети много, а именно о публичных версиях сборок ОС. Ведь для любого администратора удобно загрузить образ со всеми интегрированными обновлениями, чем устанавливать сотню самостоятельно. Причём загрузить образ с сайта Microsoft, а не самодельную сборку с торрентов. Всё что я буду рассказывать о версиях ОС Windows 8.1 применимо и к Windows Server 2012 R2, за исключением канала для бесплатной загрузки образов для переустановки ОС. Но давайте всё по порядку.
Читать дальше →
Total votes 75: ↑71 and ↓4+67
Comments60

Установка, настройка и тестирование Fedora 21 Workstation на личном или игровом компьютере

Reading time37 min
Views204K
9-го декабря вышла новая Fedora 21 Workstation, которую по совокупности параметров можно назвать «самым свежим и стабильным» Линукс-десктопом.

За время использования и тестирования Fedora я проникся к этой платформе глубокой симпатией и хочу поделиться этим теплом и знаниями о ней с вами.

В течение года я наблюдал за её работой в качестве рабочего и игрового места в разных ситуациях — от станций с «умирающим» железом до нового игрового ноутбука Asus G750JM с Nvidia Optimus.

Собранные заметки получились несколько шершавыми, старающимися охватить одновременно и новичков в Линуксе, и опытных пользователей с разработчиками. Прошу простить. Хочу донести большой объем информации в одной статье: и по общей настройке и установке Федоры, и по технологии Nvidia Optimus на ноутбуках, wi-fi с проприетарными драйверами, о настройке симпатичных шрифтов в Java и IDE от JetBrains, запуску игр в Steam на дискретной видеокарте, о результатах сравнительного тестирования игр, графики и браузеров между Федорой и Windows 8.1, и даже об установлении одного «абсолютного» рекорда.

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

Читать дальше →
Total votes 55: ↑49 and ↓6+43
Comments44

VNC-рулетка. Srsly?

Reading time1 min
Views65K
image

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

srsly.de — VNC-рулетка. Обновляйте страницу, получайте каждый раз новый сервер со скриншотом. Можете подключаться к нему через веб-клиент или через обычный VNC, ставить лайки, репортить или даже добавлять свои VNC-серверы в базу!

Для сканирования использовался zmap, который сканировал порты 5900-5910, затем python-скрипт пытался подключиться к серверу и снять скриншот. Веб-часть написана на Go.

Развлекайтесь.
Hacker News
Total votes 117: ↑111 and ↓6+105
Comments167

Как правильные программисты варят «пасхальные яйца»

Reading time5 min
Views52K
Работа в офисе встала часа на два, не меньше. И все из-за верстальщика.

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

Раньше особо не задумывалась над этим феноменом – ну пасхалки и пасхалки, забавно, но ничего особенного. Но этот случай позволил мне взглянуть на вопрос с неожиданной стороны. Я обнаружила, что пасхалки – это гораздо больше, чем просто шутка. Это – способ выражения своей индивидуальности. Более того, это – способ общения. Причем не только между разработчиками и посетителями сайта, но и внутри команды.

Читать дальше →
Total votes 49: ↑40 and ↓9+31
Comments35

Краткая история веб-дизайна

Reading time7 min
Views60K
От переводчика: технологии в вебе меняются сравнительно очень быстро, еще стремительнее вытесняют друг друга тенденции в веб-дизайне, способы подачи контента и взаимодействия с пользователем. Стоит отметить, что развитие не происходит в одностороннем порядке, изменения также касаются способов и методов потребления информации.

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

Метаморфозы происходят не только с железками и технологиями, но и с нашим мозгом. Широко обсуждается развитие «клипового мышления», как ответа на возросшее количество информации. Проводится множество практических исследований поведения людей и их мышления при взаимодействии с веб-дизайном. Подробно об этом в своем блоге пишет доктор психологических наук Сьюзан Уэйншенк.

Читать дальше →
Total votes 44: ↑39 and ↓5+34
Comments21

Как начать программировать с использованием WPF или Silverlight: Путь обучения для новичков

Reading time4 min
Views47K
Итак, вы новичок в WPF или Silverlight и желаете знать с чего вам начать? Здесь описан мой путь изучения “Как начать с WPF и Silverlight”. Я предполагаю, что вы знаете что из себя представляют эти технологии (на высоком уровне), но не знаете как использовать их.
Читать дальше →
Total votes 92: ↑64 and ↓28+36
Comments22

Самая маленькая сбойная программа на C

Reading time2 min
Views112K
Шведский студент Йеспер Эквист (Jesper Öqvist) получил в универе домашнее задание: написать самую маленькую программу C, которая вылетает с ошибкой (segfault, SIGFPE). Обычно студенты в таких ситуациях используют деление на ноль.

int main()
{
    return 1/0;
}

Из этого кода ещё можно удалить пару байтов, если вместо инструкции использовать присвоение значения переменной.

int main()
{
    i=1/0;
}
Читать дальше →
Total votes 254: ↑211 and ↓43+168
Comments48

Sublime Text для фронтэнд-разработчика

Reading time5 min
Views215K


Sublime Text на данный момент является одним из самых популярных текстовых редакторов, используемых для веб-разработки, поэтому надо знать его преимущества и недостатки. Вместо того, чтобы шаг за шагом описать все фичи Sublime Text, эта статья познакомит вас с самыми популярными приёмами и полезными плагинами, позволяющими ускорить разработку.
Читать дальше →
Total votes 50: ↑36 and ↓14+22
Comments46

Будущее [отсутствие] интерфейсов браузеров от Яндекса

Reading time10 min
Views188K
Только что Яндекс сделал важный шаг, который, как мы надеемся, приближает нас к будущему браузеров и тому, как будут выглядеть интерфейсы, через которые мы взаимодействуем с интернетом. Мы представили новую альфа-версию Яндекс.Браузера, которая по сути является новым подходом к интерфейсам браузеров.



Меня зовут Гена Лохтин. В Яндексе я отвечаю за проектирование интерфейса нового Браузера, и специально для Хабра хочу сейчас рассказать, почему мы пришли к такому новому интерфейсу и какие трудности нам удалось преодолеть по дороге. Внутри для нового браузера мы использовали кодовое название «Кусто» (чуть ниже расскажу почему). Так что иногда я буду использовать его в тексте.

Всё началось ещё в 2012 году с вопроса, который задают себе многие авторы браузеров: как сделать так, чтобы интерфейс занимал меньше места и оставлял его сайтам? Вопрос кажется простым. И первые идеи ответов на него тоже простые. Кто-то убирает табы в заголовок окна, кто-то — иконки расширений к адресной строке.

Но никто ещё не предлагал такого радикального решения, как мы. Чтобы прийти к нему, и решить все те проблемы, которые оно ставит, — понадобилось несколько лет. Ведь это не только убирание рамок. Нужно, чтобы браузером при этом было удобно пользоваться. Внутри «Кусто» много новых интерфейсных решений, над которыми мы долго работали и которые долго тестировали. Итак.
Читать дальше →
Total votes 289: ↑253 and ↓36+217
Comments418

Полифазный сон: отзывы, «теория», личный опыт

Reading time6 min
Views418K


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

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

Вовремя – это значит резервируя на сон не менее 8-ми часов, как всех нас учили. Но в итоге по факту большинство из нас спит часов 6, а потом «отрывается» в выходные. Но хотя этих 6-ти часов мало для сна, их все еще чересчур много в сутках: желание (и тенденции!) «урезать» сон еще больше – не исчезают. В поисках волшебной таблетки «как мало спать и отлично высыпаться» я, как, наверно, и многие, в свое время натолкнулся на учение о полифазном сне.

Что это?
Читать дальше →
Total votes 78: ↑68 and ↓10+58
Comments96

Jolla Tablet: первый в мире краудсорсинговый планшет (бьющий рекорды краудфандинга)

Reading time2 min
Views16K
Не успели пройти сутки, как одну нашумевшую премьеру планшета с Финскими корнями сменяет другая: компания разработчиков (выходцев из Nokia) Jolla официально анонсировала свой первый планшет — Jolla Tablet. Причем, анонсировала не просто так, а под соусом первого краудсорсингового (здесь подразумевается, что компания будет прислушиваться к пожеланиям своих потребителей) и краудфандингового планшета в мире.



Сбор средств был объявлен на Indiegogo и уже через два часа после старта требуемая сумма ($380 000) была собрана. К моменту написания данного поста собранные средства превышают планку на 23% (UPD: на 175%, т.е. примерно в 2,7 раза; первый $1 миллион удалось собрать менее чем за 48 часов) и продолжают поминутно пополнятся. Стоимость планшета по условиям сбора равнялась $189 для первой тысячи человек, но на данный момент остается возможность заказать планшет за $209.
Читать дальше →
Total votes 31: ↑28 and ↓3+25
Comments25

.NET Framework скоро Open Source и на *nix

Reading time1 min
Views92K

Основное

  • Reference Source для .NET 4.6 перелицензируется под MIT;
  • В дальнейшем фреймворк будет с открытыми исходниками и поставляться по частям через NuGet, можно будет с приложением поставлять свою сборку, которая будет изолирована от всего остального;
  • Разработка переезжает на GitHub;
  • Скоро откроют исходники рантайма, включая RyuJit и сборшик мусора;
  • Для всего этого счастья планируется официальная поддержка никсов.





Mono не то чтобы больше не нужен, в дальнейшем с ними будут плотно сотрудничать для портирования, вероятно, этот стек будет некоторое время поставляться в составе Mono, так как открыто ещё далеко не всё и для полноценной работы потребуются вещи из его состава.
На закуску
Total votes 166: ↑155 and ↓11+144
Comments259

.NET Server Core, кросс-платформенная разработка, Visual Studio 2015 и другие анонсы Microsoft Connect()

Reading time6 min
Views86K

Сегодня в Нью Йорке проходит конференция Microsoft Connect(), на которой анонсированы новые продукты и технологии. Выпущена предварительная версия Visual Studio 2015, специальная бесплатная редакция Visual Studio Community 2013, Visual Studio 2013 update 4, открывается исходный код .NET Server Core, выпущена предварительная версия .NET 2015, обновлены инструменты кросс-платформенной разработки на базе Apache Cordova, в Visual Studio появился эмулятор ОС Android. Это действительно новый этап в развитии инструментов разработки Microsoft, и мы рады рассказать о деталях.
Читать дальше →
Total votes 110: ↑104 and ↓6+98
Comments83

Nexus 5 + JavaScript + 48 часов = сенсорная поверхность?

Reading time6 min
Views67K
Несколько недель назад в Минске проходил хакатон WTH.BY, в котором я решил принять участие. Его основной идеей было то, что это хакатон для разработчиков. Мы могли делать все, что угодно, лишь бы нам это было весело и интересно. Никаких монетизаций, инвестиций и менторов. Всё весело и круто!

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

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

Картинки нет. И счастья нет. И денег тоже нет. И дальше будет только хуже.
Что было дальше?
Total votes 92: ↑88 and ↓4+84
Comments20

Использование подхода MVC в WinForms для самых маленьких

Reading time8 min
Views37K
В статье описаны общие принципы построения приложений, с использованием подхода MVC, на примере внедрения в приложение, использующее много лет Code Behind подход.

Не будет:
• Классического Unit Test;
• Принижения влияния Code Behind;
• Неожиданных открытий в MVC.

Будет:
• Unit Test и Stub;
• MVC;
• Внедрение подхода на базе существующего продукта.
Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments10

Встречайте, IntelliJ IDEA 14 уже здесь

Reading time6 min
Views126K
Закончились праздники и выходные, но не поводы радоваться. Что может быть приятнее, чем узнать о долгожданном обновлении любимой Java IDE? Мы с нетерпением ждали четыре долгих дня, чтобы удивить вас этим приятным сюрпризом. Встречайте IntelliJ IDEA 14!

image

Рассказывая о том, чем мы занимались большую часть года, мы всякий раз переживаем и волнуемся. Каждая новая версия IntelliJ IDEA поднимает планку всеобщих ожиданий. И все-таки каждое обновление — еще один шанс для нас доказать, что совершенству нет предела. Удалось ли на этот раз — судить вам!

Читать дальше →
Total votes 139: ↑135 and ↓4+131
Comments191

EyeCare — снятие усталости глаз, лечение миопии, спазма аккомодации

Reading time2 min
Views84K
иконка приложения для лечения миопии и спазма аккомодации EyeCareВ России от 30 до 100 процентов населения имеют проблемы со зрением. При этом около 28% процентов детей страдают близорукостью (миопией). В государственных и частных клиниках нашей страны практикуют различные методы лечения близорукости у взрослых и детей — от выписывания витаминов для глаз или капель до лазерных операций. В последнее время врачи стали назначать комбинированное лечение на основе препаратов и работы в специальных сертифицированных медицинских программах-тренажёрах. Такое лечение не способно полностью восстановить зрение, но оно его временно улучшает за счёт снятия зрительного напряжения. Я сама в детстве проходила курс такого лечения. Существующие программы, используемые в таком лечении, стоят очень дорого, в государственных больницах их как-правило бесплатно нет, посещение сеансов в частных клиниках стоит ещё дороже, чем покупка программы.
Мы решили разработать собственную программу для лечения миопии, спазма аккомодации, снятия усталости с глаз и выложить её бесплатно.
Читать дальше →
Total votes 68: ↑55 and ↓13+42
Comments154

Как джависты сделали .NET-конференцию

Reading time6 min
Views22K
В .NET-мире есть беда с пониманием рантайма. Ведущие разработчики крупных .NET-компаний, безусловно, понимают общие принципы работы GC, JIT-компилятора, аллокатора и других компонент. Но даже они признают, что не знают деталей. Книги Рихтера помогают узнать какие-то базовые вещи, но не более того. Отсутствие внятных технических докладов о CLR (и зарубежных и русскоязычных) от инженеров Microsoft порождает ненужное брожение в умах девелоперов. Закрытость информации порождает нежелание лезть вглубь. Всё равно фиг узнаешь, что там майкрософтовцы понаписали.

Осознав эту проблему, в апреле этого года мы вместе с компанией JetBrains провели конференцию .NEXT 2014 Piter, посвященную техническим аспектам программирования на .NET. Послушав некоторые доклады и вволю наобщавшись с людьми в кулуарах, я и сделал вывод, о котором написал выше. Под катом я расскажу о деталях прошедшей конфы и о том, на какие мысли они меня навели.


Читать дальше →
Total votes 42: ↑37 and ↓5+32
Comments64

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Date of birth
Registered
Activity

Specialization

Mobile Application Developer
Middle
From 3,000 $
Git
Linux
Java
C++
Android development
Android NDK
Kotlin
Gradle