Pull to refresh
-1
0
Send message

.NET зоопарк под призмой NET Core

Reading time3 min
Views14K
Всем привет! Сегодня мы рассмотрим разные фишки и изменения, которые появились в .NET Core платформе и сравним их с Framework. Я разбил статью на модули для более лучшего понимания. Эта статья будет интересна тем кто собирается переходить на .NET Core или уже использует его.

Stack technology


В данный момент у нас есть три платформы: .NET Framework, Mono и .NET Core. Каждая платформа включает в себя следующие технологии:

NET Framework — WPF, WinForms, ASP.NET (DNX реализация), WCF
NET Core — UWP, ASP.NET Core, WA, Xamarin (.NET Standard), Avalonia and other
Mono — Xamarin (PCL, Share project), Unity, ASP.NET, WinForms (cross platform)
NET Core (3.0) — Всё тоже самое, что и у .NET Core выше + WPF и WinForms, ML.NET

NET Standard


Ещё есть .NET Standard. Это набор классов, методов и интерфейсов, которые позволяют писать и использовать общий код под все перечисленные выше платформы. Ещё на ней можно писать консольные приложения. Вкратце это тот же PCL, но работает на всех перечисленных выше платформах.

Cross Platform


Читать дальше →
Total votes 36: ↑26 and ↓10+16
Comments27

Unity: знакомство со Scriptable Objects

Reading time9 min
Views96K
image

В этом туториале вы узнаете, как создавать и использовать Scriptable Objects в Unity. Scriptable Objects помогут усовершенствовать ваш рабочий процесс, снизить объём занимаемой памяти и даже позволят разделить архитектуру кода.

Согласно документации Unity, ScriptableObject — это код класса, позволяющий создавать в игре Scriptable Objects для хранения больших объёмов общих данных, не зависящих от экземпляров скриптов.

Существует множество причин для использования Scriptable Objects в Unity. Они могут снизить объём используемой под каждый дополнительный префаб памяти, потому что по своей сути Scriptable Object следуют паттерну разработки Flyweight.

Ещё одно преимущество Scriptable Objects, которое будет основной темой этого туториала, заключается в их использовании для удобной пересылки данных. Мы рассмотрим это свойство на примере создания лавки торговца мечами, в которой будут отображаться параметры, цены и описания различных мечей.
Читать дальше →
Total votes 12: ↑11 and ↓1+10
Comments11

7 практических уроков по UX

Reading time9 min
Views9.6K
Эта статья будет представлять собой анализ нескольких уроков по UX/UI, которые мы получили, внимательно наблюдая на выставке за парой сотен людей, занимавшихся плейтестингом ранней сборки нашей игры Steamhounds.


Для понимания контекста скажу, что Steamhounds — это пошаговая игра, смесь JRPG и тактического боя на сетке. Игроки могут сражаться против ИИ, но мы по возможности стремились мотивировать их играть друг против друга, сидя рядом за разными мониторами.

В целом, перед проведением этого эксперимента основная схема и представление информации в нашей игре не были абсолютно ужасными. Опытные игроки и знакомые с жанром пользователи обычно без проблем разбирались с игрой без нашего вмешательства. Но на таких живых мероприятиях бывают люди, которые никогда не видели раньше подобных игр, и эти игроки очень помогают нам, показывая те скрытые странности и допущения, которые мы внесли в дизайн игры.
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments6

«Жёсткий тайм-менеджмент». Рассказываем о книге Дэна Кеннеди

Reading time7 min
Views45K


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

Рассказываем об основных идеях из книги Дэна Кеннеди «Жёсткий тайм-менеджмент».
Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments10

Создание вредоносных программ. Ответственность

Reading time12 min
Views34K
Я не работаю по RU и СНГ в частности, а значит, чист перед законом. Не надо меня тыкать в УК РФ, его знаю отлично и не нарушаю. Такое у нас УПК, что не считает нарушением 272/273, если не причинило вред Российской Федерации. Таким образом, я отказываюсь от ответственности от сказанного мною тут, а также не несу никакой ответственности за причиненные действия после прочтения этой статьи. И вообще — я завязал. Я добрый, хольте и лелейте.

Данная цитата, размещенная в ныне удаленной статье, вызвала в комментариях достаточно широкое обсуждение вопросов связанных с ответственностью за написание вредоносных программ и эксплойтов. В том числе в ходе исследовательских работ.
Читать дальше →
Total votes 31: ↑28 and ↓3+25
Comments71

Французский политик использовал голограмму, чтобы выступить в двух городах одновременно

Reading time3 min
Views14K

Жан-Люк Меленшон, кандидат в президенты Франции, выступает перед избирателями под Лионом (Франция) 5 февраля 2017 года

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

Например, Жан-Люк Меленшон (Jean-Luc Melenchon), кандидат в президенты Франции. В прошлое воскресенье он решил воспользоваться объемным изображением, чтобы показать свое выступление сразу в двух городах. Очевидно, видеозапись потенциальные избиратели вряд ли одобрили бы. А вот голограмма способна привлечь внимание даже людей, далеких от игр слуг народа. В итоге он побывал как в центре Лиона, так и в Париже, в 450 км от Лиона. То, что это голограмма, было понятно по прозрачности изображения и приглушенности голоса.
Total votes 21: ↑16 and ↓5+11
Comments23

Может ли компьютер думать за архитектора, или Что такое параметрическое проектирование

Reading time5 min
Views13K


Недавно тут была статья о параметрических зданиях Захи Хадид, но из текста не слишком понятно, что же такое параметрическая архитектура в принципе. Параметры — это что-то, имеющее отношение к уравнениям, описывающим “модные, стильные, молодёжные” линии современных зданий? Нет, всё интереснее. На самом деле параметрическое проектирование — не столько красиво изогнутые трёхмерные объекты, сколько генетические алгоритмы, полиморфизм, мобильность, анализ комплексных систем и прочий матан. Если вам интересно, что сейчас происходит на стыке архитектуры и информационных технологий, читайте дальше.
Total votes 21: ↑20 and ↓1+19
Comments22

Мозг с препятствиями. Открываем глаза и заглядываем в лабиринты своего сознания

Reading time7 min
Views33K
image


Самое простое определение успеха: постановка, стремление и достижение цели.



Доля людей, успешно добивающихся задуманного — менее 10%. Только 8% новогодних обещаний выполняются.

Продажа продуктов по самореализации и мотивации — многомиллиардный рынок. Эти семинары и тренинги помогают достигать миллионную прибыль своим авторам, но не помогают добиваться целей. К успеху приходят все те же 10%.

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

Главный ключ к успеху — человек, который его достигает

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

Основное отличие тех 10% победителей не в генах или воспитании: они не сходят с пути, работают над достижением цели и не опускают руки, если что-то не получается. Они действуют.

Действие — неотъемлемая часть успеха

Любая задача требует действий, а их начало и конец — в мозге. Наш мозг работает над достижением целей и задач, но в нем существует множество барьеров. О них, а точнее о том как ими управлять, и рассказывает книга.
Читать дальше →
Total votes 27: ↑18 and ↓9+9
Comments28

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

Reading time6 min
Views14K
image

Слово «мультивселенная» используют многие люди, но не все подразумевают под ним одно и то же понятие. Читатель Крис Олсон спрашивает о двух разных значениях этого слова:

Каким образом идеи Эверетта о квантовой механике и вечная инфляция связаны друг с другом, если они вообще связаны? Можно ли провести различия между мультивселенными, о которых говорят эти идеи?

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

1) Вселенная за пределами нашего поля зрения. Говоря «Вселенная», мы часто подразумеваем её наблюдаемую часть. Поскольку известная нам Вселенная началась с события, которое мы знаем, как горячий Большой взрыв – когда горячая, плотная Вселенная, наполненная веществом и излучением, впервые появилась 13,8 млрд лет назад и начала расширяться, охлаждаться и собираться в комочки под воздействием гравитации – мы ограничены тем, что можем наблюдать. Даже сигналы, появившиеся в тот же момент, и беспрепятственно путешествовавшие со скоростью света в постоянно расширяющейся Вселенной, способны были пройти с тех пор лишь конечное расстояние. В нашей Вселенной, где есть нормальная материя, тёмная материя, тёмная энергия, нейтрино, излучение и всё то, что нам ещё известно, это расстояние равно 46,1 млрд световых лет с центром в точке нашего пребывания.
Читать дальше →
Total votes 15: ↑13 and ↓2+11
Comments18

Первый компьютер нашей эры. История Apple Macintosh

Reading time10 min
Views36K
Ровно 32 года назад вышел Apple Macintosh — первый из линейки маков, в которую сейчас входят ноутбуки, моноблоки, настольные компьютеры, системные блоки и серверы. Бандеролька подробно изучила историю Macintosh, без которого мир компьютеров был бы совсем-совсем другим, а еще сравнила Macintosh-1984 и MacBook-2017. Читайте, что получилось ➔


Total votes 22: ↑11 and ↓110
Comments9

С нуля до Upper Intermediate

Reading time4 min
Views224K
image
В этом посте вы узнаете, как я сама, без репетиторов и курсов, не потратив ни копейки, выучила аглийский за год почти с полного 0 до Upper Intermediate.

Итак, все довольно просто: Мотивация! Именно она дала толчок к саморазвитию и жажде познания английских правил, слов и букв. Согласитесь, вас мало что остановит, если у вас есть мотивация…

У каждого мотивация может быть своя: у одних это уехать заграницу в поисках лучшей жизни/работы/учебы, у других смотреть фильмы в оригинале и получать удовольствие от голосов актеров, а не слушать наши крутые, ущербные переводы, у третьих, понимать англоязычные лекции, тем самым убивая двух зайцев: изучая английский, пополняя свой словарный запас, и, развиваясь в той области, которая вам интересна. (Чисто для справки, почти в каждой области, будь то анатомия, программирование, рисование или еще чего, полно разных курсов и материалов, и их еще больше на английском, они круче и качественнее. Т. е. у вас есть больше вариантов что посмотреть и почитать.
Читать дальше →
Total votes 58: ↑48 and ↓10+38
Comments100

Различия между искусственным интеллектом, машинным обучением и глубоким обучением

Reading time4 min
Views82K
Искусственный интеллект, машинное обучение и глубокое обучение уже сейчас являются неотъемлемой частью многих предприятий. Часто эти термины используются как синонимы.

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

Часто термины искусственный интеллект, машинное обучение и глубокое обучение используются бессистемно как взаимозаменяемые, но, на самом деле, между ними есть различия. Чем именно различаются эти термины будет рассказано далее.
Читать дальше →
Total votes 12: ↑8 and ↓4+4
Comments5

Создание собственной View под Android – может ли что-то пойти не так?

Reading time28 min
Views45K
«Дело было вечером, делать было нечего» — именно так родилась идея сделать вью с возможностью зума, распределяющую юзеров по рангам в зависимости от кол-ва их очков. Так как до этого я не имел опыта в создании собственных вьюшек такого уровня, задача показалась мне интересной и достаточно простой для начинающего… но, *ох*, как же я ошибался.

В статье я расскажу о том, с какими проблемами мне пришлось столкнутся как со стороны Android SDK, так и со стороны задачи (алгоритма кластеризации). Основная задача статьи – не научить делать так называемыми “custom view”, а показать проблемы, которые могут возникнуть при их создании.

Тема будет интересна тем из вас, кто имеет мало (или не имеет вовсе) опыта в создании чего-то подобного, а также тем, кто хочет словить лулзов с автора в сто первый раз уверовать в «гибкость» Android SDK.
Читать дальше →
Total votes 26: ↑24 and ↓2+22
Comments11

Детектим виртуальную машину на C#: 1 уровень

Reading time14 min
Views25K

Одним жуть каким прохладным январским утром от знакомого прилетел вопрос — как на C# определить, не запущена ли программа в ОС (оконное приложение в ОС Windows 7 или новее) на виртуальной машине.


Требования к такому детектору были достаточно жёсткими:

  1. Должен быть полностью в исходных кодах,
  2. Должен собираться с помощью Visual Studio,
  3. Должен работать из-под аккаунта непривилегированного пользователя (нельзя использовать методы, требующие, к примеру, установки драйверов устройств, или иных операций, для которых нужны права администратора),
  4. Разрешено использовать .NET Framework 4.5 и никаких лишних зависимостей (типа Visual C++ Redistributable Package).


Под катом описание реализованного детектора на C# (в следующей части — с некоторыми элементами C++) и приличным количеством неприличного кода с использованием Visual Studio 2015 Community.


Структура публикации


  • 1 уровень. Изучение матчасти и простейших существующих решений:

    • немного теории касательно виртуализации,
    • реализация проверки ВМ с помощью данных из Windows Management Instrumentation (WMI).

  • 2 уровень. Поиск статей и публикаций про детектирование запуска в виртуальных машинах:

    • допиливаем реализацию с WMI,
    • работа с инструкцией CPUID.

  • 3 уровень. Поиск материалов с хакерских конференций:

    • допиливаем работу с CPUID,
    • делаем сводную таблицу параметров и результатов тестирования.
Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments27

Снесите это немедленно

Reading time22 min
Views18K


Андрей Аксенов делится трудностями в подготовке слайдов для доклада. Это — расшифровка выступления Highload++.



Если видите этот слайд – я не очень успел картинки. Пришел Бунин, убедился, что у него докладчик не пропал и задал подлый вопрос. Мы заранее готовим конференцию, 1 сентября приём докладов. Я тоже хотел заранее подготовиться. Вчера в 6 вечера начал рисовать слайды для другого доклада, а для этого в 11, поэтому вот так.

Придется делать чистый стендап – а слушать ухом, но это, наверное, к лучшему, потому что можно спокойно тупить в телефон.

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

Возможно это федеральное преступление и меня ФСБ заметёт сразу после того как я со сцены выйду. Рискнем, заодно познакомлюсь, поехали.

Про что доклад?

Total votes 58: ↑34 and ↓24+10
Comments13

Оптимизация анимаций в Unity3D

Reading time2 min
Views22K

Использование покадровых анимаций в Unity3D


Наверняка вы заметили, что создав новую анимацию в Unity 5 сразу размещается ссылка на спрайт компонента SpriteRenderer. Unity так и зовёт выделить заготовленные кадры и перетащить их в окно Animation.



Пара движений мышкой и новая анимация украшает вашу игру. Но на 1 секунду ролика нужно 12 — 30 кадров. А если персонаж выполняет десяток различных движений: бегает, читает, сажает, поливает, играет, загорает, и т. д. то продолжительность всех анимаций переваливает за минуту, а кадров за тысячу. А персонаж не единственный анимированный объект на уровне. Вот мы и получили что не особо сложная сцена грузится дольше минуты, а Unity начинает слетать из-за перерасхода оперативной памяти. Да, конечно можно используя встроенный в Unity SpritePacker упаковать спрайты в атласы, но это даёт лишь незначительный результат и улучшение производительности на 10 — 20%.
Читать дальше →
Total votes 17: ↑14 and ↓3+11
Comments18

Книга «Основы Data Science и Big Data. Python и наука о данных»

Reading time4 min
Views44K
imageData Science — это совокупность понятий и методов, позволяющих придать смысл и понятный вид огромным объемам данных.

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

Обработка и анализ данных — одна из самых горячих областей IT, где постоянно требуются разработчики, которым по плечу проекты любого уровня, от социальных сетей до обучаемых систем. Надеемся, книга станет отправной точкой для вашего путешествия в увлекательный мир Data Science.
Читать дальше →
Total votes 25: ↑22 and ↓3+19
Comments24

Обзор материалов по машинному обучению (13 — 20 февраля 2017 года)

Reading time3 min
Views9K
Представляю вашему вниманию подборку материалов по машинному обучению и анализу данных за прошедшую неделю, которые показались мне интересными.
image

События предстоящей недели

1. image image Deep Learning: Now and Future of Robotics. Skolkovo-Skoltech-NVIDIA workshop. 21 февраля.
2. image Data Science кейс-клуб. 21 февраля.
3. image Data science завтрак. 22 февраля.
4. image Тренировка по машинному обучению. 25 февраля.

Учебные курсы, конференции

1. image Онлайн-курс «Введение в обработку естественного языка» с середины марта на stepik. Страница прошлого года.
2. image Перезапуск курса «Neural Networks for Machine Learning» G.Hinton.
3. image Видео с конференции TensorFlow Developer Summit.
4. image Видео с конференции DataFest. Часть 1. Часть 2. Часть 3. Часть 4.
5. image Семинар Practical Machine Learning от Яндекса (видео). Тема: чат-боты. Запись ноябрьская, но попалась недавно.
Читать дальше →
Total votes 23: ↑21 and ↓2+19
Comments5

Как основать стартап и не сломать собственную жизнь

Reading time16 min
Views72K
Участие в стартапе по эмоциям напоминает езду по американским горкам, когда в какой-то момент вы чувствуете, что владеете миром, а через секунду — что всё рушится. Это руководство может помочь в запуске стартапа.

Данная статья является обновлением моей предыдущей статьи, написанной в 2014 году. Прошло уже почти три года с той поры, и я хотел бы дать улучшенную информацию посвежее.

В течение 6 лет я работал исключительно в стартапах. Я был «программистом» — специалистом, которого нанимали для преобразования идей в «реальный» бизнес. У меня никогда не было желания запустить моё собственное дело: стоит ли рисковать комфортной жизнью ради идеи, которая может не сработать?

Затем 4 года назад я взялся за трудное дело, основав стартап — 5-дневные курсы обучения программированию в Лондоне под названием Steer. Через два года я оставил Steer, запустив SuperHi.

Прежде чем я начну рассказ, хотел бы обратить, что я не эксперт по стартапам. Вообще, не думаю, что кто-то может быть таким экспертом, поскольку опыт, получаемый при запуске стартапов, сильно различается. Однако множество людей является новичками как в вопросах самих стартапов, так и информационных технологий, поэтому я адресую настоящее руководство всем, кто интересуется возможностью погружения в тёмные воды этого бизнеса.
Читать дальше →
Total votes 40: ↑31 and ↓9+22
Comments4

Telegram-бот, webhook и 50 строк кода

Reading time5 min
Views174K
Как, опять? Ещё один туториал, пережёвывающий официальную документацию от Telegram, подумали вы? Да, но нет! Это скорее рассуждения на тему того, как построить функциональный бот-сервис используя Python3.5+, asyncio и aiohttp. Тем интереснее, что заголовок на самом деле лукавит…
Читать дальше →
Total votes 31: ↑21 and ↓10+11
Comments19
1

Information

Rating
5,131-st
Registered
Activity