• «Три девицы под окном» или вспоминаем как выглядели Windows Mobile 2003 SE, WM 6, WM 6.5

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

      Ностальгия взяла верх и о чудо! Два раритета включились, а для третьего трудолюбивые граждане КНР еще производили аккумуляторы и его тоже можно было реанимировать. Перестав «пускать слезу» на СМСки 5-ти летней давности, я подумал, что просто обязан напомнить вам как выглядела ОС для смартфонов от Microsoft более чем 10 лет назад.

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

      Если вы решили вместе со мной в честь субботника протереть запылившиеся «Мобильные окна», милости прошу под кат.


      Читать дальше →
    • «…Желают знать, что будет» или пишем гадальный шар в САПР NanoCAD на C# (MultiCAD .NET API)

      • Tutorial
      Если верить одной старой песне из советского кинофильма, то люди всегда интересуются вопросами будущего в трудной ситуации. Кто-то подбрасывает монетку, кто-то мучает осьминога Пауля, а совсем уж зверски настроенные люди — ощипывают ромашки. Мы с вами поступим куда как гуманней и найдем для САПР NanoCAD, весьма нетрадиционное применение, а именно сделаем свой аналог гадального шара (почти как на картинке ниже).

      В статье мы еще раз потренируемся создавать пользовательские примитивы NanoCAD с помощью MultiCAD.NET API, а также прикрутим к нашему объекту взаимодействие с Windows.Forms.

      Код сегодня будет только на C#, писать его будем для платной версии (NC 8.5) и для бесплатной (NC 5.1), ну и естественно пользователи Linux смогут его собрать в Mono и запустить под Wine, поэтому милости прошу под кат…



      Читать дальше →
    • «Письмо турецкому султану» или линейная регрессия на C# с помощью Accord.NET для анализа открытых данных Москвы

      • Tutorial
      Когда речь идет об освоении самых основ машинного обучения, чаще всего предлагается изучить соответствующие инструменты на Python или R. Мы не будем обсуждать их плюсы и минусы, а просто зададимся вопросом, что делать если вы знакомы только с экосистемой .NET, но при этом вам очень любопытно окунутся в мир науки о данных? Ответ прост, не отчаиваться и посмотреть в сторону F#, а если вы также, как и я из .NET знаете только азы C#, то попробовать изучить Accord.NET Framework.

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

      Несмотря на то, что в заголовке статьи указан C#, мы попробуем собрать код и на VB.NET.

      Мне осталось только пригласить вас под кат!


      Читать дальше →
      • +15
      • 8.1k
      • 4
    • «Здравствуй елка — Новый Год!» или программируем NanoCAD с помощью Visual Basic .NET

      • Tutorial
      Намедни просматривая документацию к NanoCAD API идущую в комплекте с SDK неожиданно обратил внимания на то, что описание членов классов для .NET API и MultiCAD.NET API дано, как на C# так и на Visual Basic. И я подумал: «А ведь это здорово, что есть описание и для VB!»

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

      Надо сказать, что на «Хабре» уже есть хорошая статья по применению VB для NanoCAD, там рассматривается связка NanoCAD с Excel и то как она в итоге может облегчить строительное проектирование.

      Мы же с Вами решим другую, более простую и праздничную задачу, начертим ёлочку и поздравим пользователя с новым годом. Несмотря на то, что статья посвящена VB, код на C# тоже будет.

      А поскольку «Новый год» – праздник затратный то ориентироваться мы будем на бесплатную для коммерческого использования версию NanoCAD 5.1 (но по идее без проблем должно работать и под NC 8.X).

      Также не обойдем стороной и пользователей Linux поскольку код на C# с помощью Mono и Wine можно будет на нём скомпилировать и запустить.

      Если честно я сам только недавно начал осваивать API NanoCAD и поэтому моя последняя в этом году предпраздничная статья по сложности кода чем-то напоминает теплый ламповый графический исполнитель «Кенгуренок (ROO)», но если вас это не останавливает, то милости прошу под кат…



      P.S. Это первая буква слова «Habrahabr» — на большее меня не хватило =)
      Читать дальше →
      • +11
      • 4.6k
      • 2
    • «Истина в вине» или пробуем программировать NanoCAD под Linux (MultiCAD.NET API)

        Практически со времени выхода первой «дееспособной» версии NanoCAD, среди сообщества пользователей остро встал вопрос о необходимости реализации данной САПР под Linux

        Наверное, вы подумали, что эта статья родилась, потому что разработчики наконец-то «сделали это!». Спешу вас успокоить — все осталось на своих местах. О версии NanoCAD под Linux лично мне по-прежнему ничего не известно. Поэтому мы будем пытаться использовать Wine.

        Так что эта короткая заметка будет не столько об использовании NanoCAD в Linux, сколько о программировании для Nanocad в системе отличной от Windows, а если еще точнее, то о том, как я вооружился Linux Mint, MonoDevelop и попытался собрать библиотеку (.dll) для бесплатной версии NanoCAD с применением MultiCAD.NET API.

        Если вам интересно, что же из этого получилось, милости прошу под кат!

        image
        Читать дальше →
      • «3 класса приходской школы» или учимся в Microsoft Virtual Academy (MVA)

          Возможно многие люди, интересующиеся разработкой под .NET и другие решения от Microsoft что-то, да слышали про Microsoft Virtual Academy — бесплатные онлайн курсы преимущественно по технологиям Microsoft или тесно связанными с ними.

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

          Я предлагаю вам свой независимый и субъективный взгляд на данный обучающий ресурс. Сразу отмечу, поскольку большая часть контента MVA рассчитана на новичков, так что, наверное, и этот материал скорее для начинающих или любителей, профессионалы думаю этим ресурсом особо не пользуются.

          В данном обзоре мы кратко рассмотрим: описание портала, плюсы и минусы, сравнение с другими платформами. Если вам все еще интересно – милости прошу под кат!


          Читать дальше →
        • «Я слежу за тобой» или как из CADa сделать SCADA (MultiCAD.NET API)

          • Tutorial
          Сразу честно признаюсь, у этой статьи просто — «броский многообещающий» заголовок :)
          Но на самом деле, на этой неделе у меня было мало свободного времени и поэтому в этот раз заметка будет короткой и совсем уж концептуальной. Поэтому до настоящей SCADA естественно дело не дойдет.

          В прошлой статье мы разбирались как сделать свой пользовательский объект в отечественной САПР NanoCAD с помощью MultiCAD.NET API (как для платной, так и для бесплатной версии программы), в этот раз мы воспользуемся ранее разработанным объектом (дверью) и научим его отслеживать состояние текстового файла.

          Зачем нам это надо? Милости прошу под кат.


          Читать дальше →
        • «Пишите письма…» или тренируемся работать с данными по обращениям граждан в правительство Москвы (DataScience)

          • Tutorial
          Приветствую коллеги! Пришло время продолжить наш спонтанный мини цикл статей, посвящённый основам машинного обучения и анализа данных.

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

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

          Напомню, что наша статья рассчитана в первую очередь на начинающих любителей Python и его распространённых библиотек из области DataScience. Готовы? Тогда, милости прошу под кат.


          Читать дальше →
        • «Как баран на новые ворота» или пользовательские «псевдо-3D» объекты в NanoCAD с помощью MultiCAD.NET API

          • Tutorial
          На мой взгляд, один из лучших способов научится чему-то это поделится знаниями с другими людьми.

          В этот раз мне понадобилось понять, как создаются пользовательские объекты в NanoCAD с помощью MultiCAD.NET API. В блоге компании Нанософт есть статья от 2013 года, в которой объясняются базовые вопросы создания пользовательских примитивов. Но согласитесь было бы не интересно, просто воспроизвести эту статью, поэтому мы ее немного дополним.

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

          Под понятием «псевдо-3D» в данном случае я имею ввиду, что наши объекты не будут обладать свойствами модели твёрдого тела, то есть это будет просто набор связанных геометрических примитивов в трёхмерной системе координат. Может это не совсем корректный термин, но я пока лучше ничего не подобрал.

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

          Так или иначе если вы интересуетесь: проектированием, САПР, NanoCAD, разработкой под .NET и в частности на C#, а также овцами и Улицей Сезам, то возможно эта статья как раз для вас.

          Вам тоже интересно причем тут овцы и Улица Сезам? Тогда милости прошу под кат.


          Читать дальше →
        • «Лицо без шрама» или первые шаги в Multicad.NET API 7 (для Nanocad 8.1)

          • Tutorial
          Волею судеб сложилось так, что для одного из моих хобби, мне понадобилось ковыряться в API к отечественной САПР Nanocad, при этом, не имея каких-то практических навыков в разработке для САПР.

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

          В память и со всем уважением к Михаилу Николаевичу, можно сказать: «Наберите воздуха в грудь…» эти американцы разместили у себя на сайте в открытом доступе… инструкцию по началу работы! Какие же они там все ту… в общем вы поняли, это вам не «лук в колготках хранить».

          Но мы с вами как порядочные люди не будем ругать людей, которые дали нам бесплатно вполне вменяемый продукт и доступ к средствам разработки, просто попробуем им немножко помочь, тем более что последняя публикация по MultiCad. NET API была в блоге Nanosoft на Хабре, почти два года назад и надо немного заполнить вакуум.

          К сожалению, как полный новичок в этом вопросе я не смогу дать вам материал действительно достойного качества, но по крайней мере мы рассмотрим те вопросы, на которых у меня сразу случился «затык». Получится, как и в прошлом цикле по Data Science статья от новичка – новичкам.

          План примерно такой: пару слов о Нанокад, немного в целом о программировании под Нанокад и в конце написание примитивной команды с помощью MultiCAD .NET API 7 (для Nanocad 8.X).

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


          Читать дальше →
        • «4 свадьбы и одни похороны» или линейная регрессия для анализа открытых данных правительства Москвы

          • Tutorial
          Несмотря на множество замечательных материалов по Data Science например, от Open Data Science, я продолжаю собирать объедки с пиршества разума и продолжаю делится с вами, своим опытом по освоению навыков машинного обучения и анализа данных с нуля.

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

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

          С чего начать? Конечно с открытых данных правительства РФ, там же ведь целое министерство есть. Мое знакомство с открытыми данными правительства РФ, было примерно, такое же как на иллюстрации к этой статье. Нет ну не то чтобы мне совсем не был интересен реестр Кинозалов города Новый Уренгой или перечень прокатного оборудования катка в Туле, просто для задачи регрессии они не очень подходят.

          Если порыться думаю и на сайте ОД правительства РФ можно найти, что-то путное, просто не очень легко.

          Данные Минфина я тоже решил оставить, на потом.

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

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



          UPD: Добавлен раздел – «Бонус»
          Читать дальше →
        • «Используй Силу машинного обучения, Люк!» или автоматическая классификация светильников по КСС

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

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

            В прошлых двух статьях мы решали задачу классификации источников света по их спектру (на Python и C# соответственно). В этот раз попробуем решить задачу классификации светильников по их кривой силе света (по тому пятну которым они светят на пол).

            Если вы уже постигли путь силы, то можно сразу скачать dataset на Github и поиграться с этой задачей самостоятельно. А вот всех, как и я новичков прошу подкат.

            Благо задачка в этот раз совсем несложная и много времени не займет.

            Читать дальше →
          • «Как по нотам!» или Машинное обучение (Data science) на C# с помощью Accord.NET Framework

              Вчера после публикации статьи zarytskiy «Какой язык программирования выбрать для работы с данными?» я понял, что .net в целом и C# в частности не рассматривается, как инструмент для машинного обучения и анализа данных. Не то, чтобы для этого совсем не было объективных причин, но все же надо восстановить справедливость и потратить пару минут на рассказ о фреймворке Accord.NET.

              Итак, в прошлой статье цикла, посвящённого обучению Data Science с нуля, мы с вами разбирали вопрос создания своего собственного набора данных и обучение моделей из библиотеки scikit-learn (Python) на примере задачи классификации спектров излучения ламп и дневного света.

              В этот раз, чтобы набор данных не пропадал мы рассмотрим и сопоставим нашей прошлой статье маленький кусочек задачи машинного обучения, но в этот раз реализованный на C#
              Милости прошу всех под кат.


              Читать дальше →
              • +18
              • 20.1k
              • 8
            • “Восстание МашинLearning” или совмещаем хобби по Data Science и анализу спектров лампочек

              • Tutorial
              В завершающей статье цикла, посвящённого обучению Data Science с нуля, я делился планами совместить мое старое и новое хобби и разместить результат на Хабре. Поскольку прошлые статьи нашли живой отклик у читателей, я решил не откладывать это надолго.

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

              Данная статья написана в стиле от новичка-новичкам, поэтому опытные читатели вряд ли, почерпнут для себя, что-то новое и если есть желание решить задачу классификации источников света по спектрам, то им есть смысл сразу взять данные из GitHub

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

              Мы пройдем с вами путь от попытки понять где можно применить даже небольшие знания по ML (которые можно получить из базовых книг и курсов), до решения непосредственно самой задачи классификации и мыслей о том «что теперь со всем этим делать?!»

              Милости прошу всех под кат.


              Читать дальше →
            • «Паровозик, который смог!» или «Специализация Машинное обучение и анализ данных», глазами новичка в Data Science

                Ранее в моей прошлой статье, посвящённой обучению Data Science с нуля, я обещал записаться на специализацию «Машинное обучение и анализ данных», на Coursera и поделиться моими впечатлениями о доступности этих знаний для практически абсолютного новичка в области науки о данных. Сказано – сделано! Хотя безусловно, на Хабре уже есть упоминания об этой и аналогичных специализациях, но думаю мои «пять копеек» не помешают.

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


                Читать дальше →
              • «Айсберг вместо Оскара!» или как я пробовал освоить азы DataScience на kaggle

                • Tutorial
                В моей прошлой статье посвящённой освоению науки о данных (или по заграничному — Data Science) с абсолютного нуля (даже ниже чем -273 градуса по Кельвину) я обещал, что подготовлю материал о том, как я осваивал kaggle (буду писать с маленькой буквы, как у них на логотипе).

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

                Если вам интересно что же в итоге у меня из всего это вышло прошу под кат.

                UPD: На свежую голову добавил небольшие пояснения про вкладку «данные» и про переобучение модели.


                Читать дальше →
                • +13
                • 15.6k
                • 3
              • «Теперь он и тебя сосчитал» или Наука о данных с нуля (Data Science from Scratch)

                  Не так давно я рассказывал о том, как случайно познакомился с понятием Data Science, благодаря курсам от Cognitive Class. Кратко резюмируя ту статью скажу, что по результатам курса я толком ничему не научился, но мне стало любопытно, поэтому спустя какое-то время я побежал в магазин и купил книгу, которой и посвящён данный материал.

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


                  Читать дальше →
                  • +13
                  • 22.7k
                  • 5
                • Ловись Data большая и маленькая! (Краткий обзор курсов по Data Science от Cognitive Class)

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


                    Итак, Cognitive Class, он же Big Data University от IBM (иногда сокращенно BDU) – портал с бесплатными курсами по тематике близкой к BIG Data и соответственно Data Science.


                    Хотите узнать, чему он может или не может вас научить, тогда милости прошу под кат.



                    Читать дальше →
                  • Сказ о том как спектральные характеристики освещения влияют на нашу жизнь

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

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

                      А вот, что же там Василия ждало, спрятано под катом, всех любознательных милости просим.

                      Статья будет большая и по смыслу делиться на три части
                      1 – Спектральные характеристики источников света
                      2 – Как можно померить спектр с помощью прямых рук и «синей изоленты»
                      3 – Кратко о воздействии света на человека


                      Читать дальше →
                    • “Солнышко для Планктонушка” – основы светототехнического моделирования в DIALux

                      • Tutorial
                      Здравствуй Хабр, сегодня уже пятница а значит я могу сдуть пыль со своей старой традиции публиковать по пятницам, что-нибудь «о вкусной и здоровой пище» полезное и интересное из мира науки и техники.
                      Близится новый год и мне хотелось бы всем подарить этот мини туториал по Dialux (бесплатной программе для светотехнического 2D и 3D моделирования).
                      Посмотрев эту короткую статью и покрутив в руках проект прилагаемый к ней вы получите самые начальные представления о светотехническом моделировании. Дерзайте светотехнические расчеты это совсем не страшно.

                      Сегодня мы будем обеспечивать комфортные нормативные условия труженикам дисплея и бумаги.
                      За подробностями под кат.
                      (Внимание! Под катом трафик)

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



                      Читать дальше →
                      • +10
                      • 14.1k
                      • 3