Search
Write a publication
Pull to refresh
51
0

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

Send message

Как устроена графика в Linux: обзор различных сред оформления рабочего стола

Reading time13 min
Views113K
Эта статья о том, как устроена графика в Linux и из каких компонентов она состоит. В ней много скриншотов с различными реализациями сред рабочих столов. 

Если вы не сильно различаете KDE и GNOME или различаете, но хотели бы узнать, какие еще есть альтернативы, то эта статья для вас. Она обзорная, и хотя в ней много названий и немного терминов, материал будет также полезен начинающим и только посматривающим в сторону Linux.

Тема может заинтересовать и продвинутых пользователей при настройке удаленного доступа и при реализации тонкого клиента. Часто встречаю вполне матерых линуксойдов с утверждениями «на сервере только командная строка, и графику подробнее изучать не планирую, так как это всё нужно для простых пользователей». Но даже знатоки Linux с большим удивлением и радостью открывают для себя опцию «-X» у команды ssh (а для этого полезно понимать работу и функции X-сервера).

Источник
Читать дальше →

Я десять лет страдал от ужасных архитектур в C# приложениях — и вот нашел, как их исправить

Reading time10 min
Views43K


Я второй десяток лет участвую в разработке приложений для бизнеса на .NET и каждый раз вижу одни и те же проблемы — быдлокод и беспорядок. Месиво из сервисов, UoW, DTO-шек, классов-хелперов. В иных местах и прямой доступ в базу данных руками, логика в статических классах, километровые портянки конфигурации IoC.


Когда я был молодым и резвым мидлом — я тоже так писал. Потом бил кулаком в стену с криками: "Хватит! В следующий раз сделаю по-другому". Следующий раз действительно начинался "по-другому" — с холодной головой и строгим подходом к архитектуре — а на выходе все равно получалась та же субстанция, лучше на пару миллиметров.


Однако, эволюция — беспощадная штука: моя последняя система показалась мне более-менее близкой к идеалу. Сложность не сильно росла, скорость разработки не падала довольно долго, в систему худо-бедно въезжают новые сотрудники. Эти результаты я взял за основу, улучшил и теперь анонсирую вам свою новую разработку: Reinforced.Tecture.

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

Определяем пульс по вебкамере в 50 строчек кода

Reading time4 min
Views34K

Привет Хабр.

Однажды мне попалось описание приложения для Android, которое определяло пульс по камере телефона, просто по общей картинке. Камера не прикладывалась к пальцу, кожа не просвечивалась светодиодом. Интересный момент был в том, что ревьюеры не поверили в возможность такого определения пульса, и приложение было отклонено. Чем дело кончилось у автора программы, не знаю, но стало интересно проверить, возможно ли это.

Для тех кому интересно что получилось, продолжение под катом.

Читать далее

Мы тратим годы на то, что делается неделю — потому что все ларьки заигрались в IT-гигантов

Reading time5 min
Views128K


Я работал в команде, которая делала десктопное приложение для VPN. Не самая простая штука в мире, много нюансов, много обратной совместимости. У нас были четыре разраба, три тестера, продукт оунер, проджект менеджер, сторонняя команда дизайнеров. Все по-серьезному. Помимо десктопного клиента делалась ещё и либа, которая содержала в себе всю бизнес-логику, и использовалась на других платформах. И эта либа в свою очередь использовала сишный бинарь, который и поднимал VPN туннель.

Если бы меня кто-то спросил, за сколько можно сделать такое приложение в одиночку — я бы сказал: «два месяца на разработку, один на тестирование». Но нас было много, поэтому мы работали больше двух лет.
Читать дальше →

Make <your iOS app> talk. Доклад Яндекса

Reading time16 min
Views3K
Cтандартные библиотеки распознавания речи и озвучки текста в iOS дают массу возможностей. Из доклада VolkovRoman вы узнаете, как за счёт минимального количества кода научить ваше приложение проговаривать текст и кастомизировать озвучку. Рома рассмотрел API распознавания речи, его ограничения и особенности, lifecycle запроса на распознавание и методы работы в офлайн-режиме. Вас ждут примеры UX, обход существующих багов и особенности работы с аудиосессией.


— Всем привет, меня зовут Роман Волков. Сегодня мы поговорим о том, как научить ваше мобильное приложение общаться с вашими пользователями.
Читать дальше →

Зоопарк нашей кожи: что делать с акне (прыщами)

Reading time7 min
Views52K
image
Staphylococcus epidermidis. Обычно ведёт себя мирно, но может провоцировать акне, если слишком проголодается

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

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

Обычно на коже выделяют три основных биома: жирный, сухой и влажный. В каждом из них живёт свой набор организмов, который оптимально адаптирован к жизни в этой зоне. Например, пупок — типичная влажная зона. Нет воздействия губительного ультрафиолета, сальные железы отсутствуют, тепло и влажно. Поэтому он часто считается эталонным участком для исследований пупкового пуха микробиома человеческой кожи.
Читать дальше →

Удалёнка за доллары: а меня возьмут?

Reading time6 min
Views72K

Удалёнка за доллары: а меня возьмут?


Удалёнка в хорошей зарубежной компании — крутая штука. Сидя даже где-то далеко в провинции, можно зарабатывать большие деньги: от $3,000 в месяц на средненькой позиции в неизвестной компании до $186,000 в год на позиции senior programmer в Basecamp.


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


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


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

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

Оконные функции своими руками

Reading time10 min
Views22K
В цифровой обработке сигналов оконные функции широко используются для ограничения сигнала во времени и их названия хорошо известны всем, кто так или иначе сталкивался с дискретным преобразованием Фурье: Ханна, Хэмминга, Блэкмана, Харриса и прочие. Но являются ли они достаточными, можно ли придумать что-то новое и есть ли в этом смысл?

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


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

Победители конкурса стартапов The Europas Awards 2020

Reading time11 min
Views14K


На Хабре часто пишут про новые технологии и яркие стартапы. Но почему-то до сих пор никто не рассказал об итогах конкурса The Europas Awards 2020, хотя там есть и российские победители. Cloud4Y исправляет эту оплошность.

В прошлом году Europas Awards для европейских технических стартапов проводился в формате вечеринки в солнечном саду рядом с историческим музеем в Лондоне. В этом году, в связи с глобальной пандемией коронавируса, мероприятие прошло в Zoom. И, как считают организаторы, было успешным. 
Читать дальше →

«Самый опасный геймер» (про четвертое измерение, про игры Braid, Witness и их загадочного творца Джонатана Блоу)

Reading time29 min
Views19K
Статья 2012 года

Видеоигры сейчас один из самых прибыльных видов развлечений в Америке, а также один из самых подростковых, глупых и не «нагружающих» мозг. Серьезно? По крайней мере, так считает Джонатан Блоу. Он — самый жесткий критик игровой индустрии и ее самый ценный разработчик, который стремится изменить наше представление об играх и сторителлинге. Следующим релизом, The Witness, Блоу может укрепить свое наследие или закончить карьеру. Может ли истинное искусство процветать в индустрии с многомиллиардным доходом от лазерных пушек и плотоядных пришельцев?



Как и многие состоятельные люди, Джонатан Блоу хорошо помнит момент, когда он стал богатым. В то время, в конце 2008 года, он был в минусе на 40 000 $ и жил в скромной квартире в Сан- Франциско, более трех лет тщательно оттачивая свою видеоигру, Braid — в жанре платформер-головоломка с возможностью изменения масштаба времени. (как если бы, Super Mario Bros. встретился с Борхесом), в которую Блоу влил еще 200 000 $. Хотя Braid был выпущена и разрекламирована прессой, на августовском сервисе Microsoft’s Xbox Live Arcade, Блоу не увидел ни цента от игры, пока в один осенний день он не сел в кафе in the city’s Mission district.



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

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

Сравнение eCPM рекламных сетей на личном опыте

Reading time6 min
Views30K
Рейтингов рекламных сетей много, и я не претендую на составление еще одного. Просто я уже давно выпускаю игры для iOS и Android и раньше применял во всех одну и ту же схему монетизации. Со временем она сильно устарела и перестала приносить стабильный доход. Пришлось что-то менять и усиленно экспериментировать с другими рекламными сетями. Именно этими экспериментами я и хочу поделиться. И сразу же хочу уточнить, что ниже речь пойдет в основном о российском трафике, который в моих приложениях составляет порядка 90%.
Читать дальше →

Отличия мужского мозга от женского: женщины кодят лучше?

Reading time9 min
Views73K

На волне тотальной толерантности стало неприлично заявлять, что мужской и женский мозг функционируют и работают по разному. Точно так же, как и судить о способностях к программированию, базируясь на гендере.

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

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

Почему я не использую SharedViewModel для фрагментов?

Reading time3 min
Views13K
Хабр, привет!

Задача организации взаимодействия между фрагментами встречается очень часто. На первый взгляд, ShareViewModel отлично подходит для этого. Мы создаем ViewModel с owner = наша activity, в которой отображаются наши фрагменты, и получаем эту ViewModel внутри каждого фрагмента. Т.к. владелец ViewModel — активити, то фрагменты получают один и тот же экземпляр ViewModel, что и позволяет им обмениваться данными, вызывать методы и т.д. Вот ссылка из документации.

На рисунке ниже представлена схема взаимодействия 3-х фрагментов.

image

Т.е. что мы делаем: в каждом фрагменте мы достаем SharedViewModel тех фрагментов, с которыми нам нужно взаимодействовать…

И это не самое лучшее решение, на мой взгляд. Потому что:
Читать дальше →

Давайте обсудим лицо отечественного краудфандинга

Reading time4 min
Views6.6K


Привет, Хабр. Я долго не хотел писать на эту тему, в силу явно негативного окраса поднимаемых аспектов. Однако вижу, что вопросы, которые меня волнуют, в сообществе никто почему-то не озвучивает. Под катом постараюсь описать, что не устраивает лично меня в топовом отечественном краудфандинг-проекте, а также ожидаю услышать мнение сообщества — прав я, либо заблуждаюсь.
Читать дальше →

Контроль пульса во время пробежки через музыкальную обратную связь — или «ищутся тестировщики, любящие бегать»

Reading time6 min
Views14K
Все началось с того, что мне подарили пульсометр. Точнее, сначала я решил, что надо бы как-то бороться с возможными последствиями сидячей работы, и начал бегать. Как любой гик, начавший бегать, тут же поставил себе соответствующее приложение, чтобы отслеживать пробежки и делиться ими с друзьями. И вот уже после этого, когда мне подарили пульсометр и я несколько раз пробежался, замеряя пульс, товарищи попытались мне объяснить, что себя надо беречь и стараться, чтобы пульс во время пробежки не зашкаливал за 180. Я по неопытности думал, что в беге — чем быстрее, тем лучше. Но в процессе изучения матчасти выяснилось, что результат тренировки сильно зависит от того, с каким пульсом ты бегаешь — и для некоторых целей нужен низкий пульс (и, соответственно, низкий темп).

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

Kinda Heroes — devstory милой RPG с чибиками

Reading time3 min
Views4.4K
Привет! Имея за плечами довольно серьезный опыт разработки игр и приложений, я долгое время боялся браться за RPG. Я имею ввиду полноценную ролевую игру, а не казуальный кликер или айдлер (idle). Итак, я поделюсь с вами историей о том, как по-быстрому за 1 месяц сделать свою RPG, с блэкджеком и всем остальным.


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

Как создать вирусное видео

Reading time3 min
Views3K
image

Вирус на то и вирус, что распространяется непредсказуемо. )) Как телережиссер, создавший за 30 лет в системе ВГТРК множество экранных произведений разных форматов и как медиа-тренер, обучающий людей создавать видеоконтент, могу с полной уверенностью сказать, что предсказать результат, реакцию зрителей и тем более гарантировать создание именно вирусного ролика нельзя. Это, конечно, мое мнение, но я неоднократно видела, как те, кто утверждали, что умеют это делать, стабильных результатов не получали.

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

Вот моя подборка таких вирусных распространителей.

  1. Люди делятся тем, что им близко именно сегодня, тем, что на злобу дня.
  2. Люди делятся смешным, забавным и трогательным. Это позволяет им подбодрить другого или рассказать о своих чувствах.
  3. Люди делятся тем, что их удивило и поразило. Покажите им что-то невероятное, и они обязательно перешлют это другу.
  4. Люди делятся тем, что доставило им эстетическое удовольствие, когда они по-настоящему восхитились мастерством. Это тот вариант, когда не нужно экономить на воплощении по высшему разряду. В остальных случаях дорогостоящая реализация может уступить снятому смартфоном ролику, который задел за живое даже без крутого монтажа.
  5. Люди делятся тем, что неоднозначно, что хочется обсудить.
  6. Люди делятся видео, когда видят известную личность в непривычной роли.
  7. Люди поделятся, если узнали что-то очень полезное.
  8. Люди поделятся, если это короткое видео, которое не отнимет много времени у их друзей.

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

Немного подробнее о том и другом.
Читать дальше →

Как я сгенерировал на Python тысячу лиц для своей игры

Reading time3 min
Views32K
На определённом этапе разработки своей игры я осознал, что мне нужна система диалогов с лицами-аватарами.

Поэтому я решил создать генератор лиц на основе знаменитой игры Papers, Please.


Генератор лиц Dukope (из Papers, Please)

Сбор данных


Я скачал примерно 50 портретов с pixabay.com (все изображения имеют лицензию CC и не требуют указания авторства).

Затем я вырезал фон каждого изображения в Photoshop (просто выбрал всё инструментом выделения многоугольника и нажал на Delete). В дальнейшем я планировал воспользоваться эффектом cutout , чтобы скрыть все недочёты.


Изображения с удалённым фоном
Читать дальше →

Сервисы, которые стали бесплатными на время карантина: курсы, радио, книги, кино и сериалы

Reading time5 min
Views387K
image

Кажется, на ближайший месяц почти все мы более или менее на карантине — сидим дома в самоизоляции. Грустно, конечно, но есть и плюсы. Не нужно тратить время на дорогу в офис и обратно, а сэкономленное время можно потратить на обучение, например. Ну или сериал посмотреть, который давно хотелось. Хорошие ребята вроде bang bang и GeekBrains на месяц открывают бесплатный доступ к своим материалам. А мы будем собирать здесь ссылки на такие аттракционы неслыханной щедрости.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity