Теги → язык программирования
Быстрый переход

Huawei разрабатывает собственный язык программирования — его представят в 2022 году

Компания Huawei поделилась подробностями о собственном языке программирования, разработкой которого занимается в рамках проекта Harmony OS Cangjie. Сообщается, что совершенно новый язык программирования будет запущен в 2022 году. Первые слухи о работе Huawei над этим проектом появились в феврале этого года.

cnews.ru

cnews.ru

Huawei не уточнила, почему выбрала название Cangjie для своего языка программирования. Однако компания сообщила, что он должен стать связующим звеном между операционными системами Huawei HarmonyOS и OpenEuler. Язык должен позволить писать универсальный код, подходящий для обеих платформ. Об этом рассказал Дэн Тайхуа (Deng Taihua), президент подразделения вычислений Huawei, который заявил, что запуск языка программирования состоится в следующем году, но не сообщил, когда именно.

cnews.ru

cnews.ru

Open Euler является менее известной операционной системой Huawei, предназначенной для облачных вычислений. Она дебютировала в январе 2020 года и представляет собой проприетарный дистрибутив Linux, который базируется на коммерческой EulerOS, берущим начало от CentOS. OpenEuler оптимизирована для работы с Arm-процессорами. HarmonyOS, в свою очередь, является потребительской операционной системой, которая работает на смартфонах и огромном количестве другой умной электроники.

Стоит отметить, что Huawei не одинока в своём стремлении представить собственный язык программирования. У Google есть Go, который, как оказалась, очень приглянулся хакерам, а Apple ещё в 2014 году представила Swift, хотя Objective-C по-прежнему остаётся основным для macOS и iOS.

Разработчики вредоносного софта всё чаще стали использовать экзотические языки программирования

Исследователи из подразделения BlackBerry Research & Intelligence опубликовали отчёт, согласно которому создатели вредоносного ПО в настоящее время стали всё чаще обращаться к экзотическим языкам программирования, чтобы затруднить последующий анализ и обнаружение зловредов.

Источник: freepik.com

Источник: freepik.com

Среди экзотических для написания вредоносного ПО языков программирования перечислены Go (Golang), D (DLang), Nim и Rust. Как правило, эти языки используются для создания злонамеренного софта, направленного на крупные организации и использующего слабые места в защите корпоративной инфраструктуры. Речь идёт о вредоносах, реализующих многоэтапные, тщательно спланированные и организованные кибератаки.

Оказавшись на компьютере жертвы, эти программные модули обходят традиционные системы защиты, чтобы впоследствии загрузить, декодировать и запустить троянские программы для удалённого доступа, чаще всего Remcos и NanoCore, а также маяки Cobalt Strike.

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

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

Четверть века: языку Java исполнилось 25 лет

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

Свою историю Java ведёт с 1991 года. Именно тогда группа разработчиков компании Sun Microsystems (впоследствии поглощённой корпорацией Oracle) под руководством Джеймса Гослинга (James Gosling) приступила к созданию языка Oak для использования в цифровых бытовых устройствах. Спустя год участники проекта представили первый прототип, демонстрирующий возможности нового платформенно-независимого языка программирования, ключевую роль в последующем развитии которого сыграли интернет-технологии.

В 1995 году язык Oak был переименован в Java и приобрёл широкую известность благодаря включению виртуальной машины Java Virtual Machine (JVM) в браузер Netscape. С этого момента популярность Java, который мог работать совершенно одинаково на разных аппаратных платформах вне зависимости от используемой в них машинной архитектуры, стала расти огромными темпами, а сам язык нашёл применение практически во всех областях IT-индустрии. Java работает и в марсоходах NASA, и в большом адронном коллайдере. А в повседневной жизни нас окружают компьютеры, мобильные устройства, медиаплееры и даже смарт-карты, также работающие на Java.

Спустя четверть века Java продолжает оставаться востребованным в профессиональной среде инструментом для создания приложений и до сих пор прочно удерживает позиции одного из самых популярных языков программирования.

Автор объектно-ориентированного и кроссплатформенного языка программирования Java Джеймс Гослинг (источник фото: liquid-robotics.com)

Автор объектно-ориентированного и кроссплатформенного языка программирования Java Джеймс Гослинг (источник фото: liquid-robotics.com)

«Полезно оценить достигнутое за 25 лет, но мы двигаемся вперёд и нацелены развивать инновации Java и в будущем. А миллионы Java-разработчиков продолжат создавать приложения, формирующие мир вокруг нас, — от развлечений до ядерной физики, социальных сетей и поиска жизни на Марсе,говорится в заявлении компании Oracle.  Спустя четверть века мы видим огромные позитивные изменения в нашей жизни, которые произошли благодаря Java. И ожидаем, что следующие 25 лет — и далее — будут такими же яркими и насыщенными. Наш мир становится лучше благодаря Java».

В честь юбилея компания Oracle разработала специальный сайт oracle.com/java/moved-by-java, повествующий об истории, настоящем и будущем языка Java.

Язык программирования C вновь стал самым популярным среди разработчиков

Компания TIOBE Software опубликовала обновлённый рейтинг популярности языков программирования, формируемый на основе анализа статистики поисковых запросов в Google, Google Blogs, Yahoo!, Wikipedia, MSN, YouTube, Bing, Amazon, Baidu и других интернет-сервисах.

В майском отчёте, отражающем динамику изменения интересов профессионального сообщества к средам разработки ПО, язык программирования C вновь перехватил пальму первенства у языка Java, занимавшего лидирующую позицию в течение достаточно продолжительного срока и сместившегося на вторую строчку в списке. Третье место прочно удерживает Python.

Что касается остальных представленных в списке языков программирования, то неплохую динамику роста и всплеск интереса со стороны заинтересованной аудитории в течение года продемонстрировали языки R, Swift, Go, PL/SQL и Scratch. Реже в Интернете стали упоминаться ассемблер, Perl и Objective-C.

С полным отчётом TIOBE Software можно ознакомиться по ссылке tiobe.com/tiobe-index.

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

Slashdata: 60 % разработчиков ПО вносят свой вклад в проекты с открытым исходным кодом

Компания Slashdata провела исследование, в рамках которого были опрошены 17 000 разработчиков из разных стран мира, чтобы понять, что думают программисты об открытом исходном коде, будущем языка Kotlin и тенденциях развития новых технологий.

JavaScript продолжает оставаться наиболее популярным языком программирования среди разработчиков. Это неудивительно, поскольку экосистема JavaScript огромна. Кроме того, в тройку наиболее быстрорастущих языков программирования разработчики мобильных приложений включили Python и Kotlin. При этом Java продолжает лидировать в сфере разработки мобильных приложений.

Язык Kotlin доказывает свою состоятельность, когда речь заходит о разработке Android-приложений, а также всё чаще становится заменой Java. В отчёте отмечается, что за последние два года разработчики стали использовать Kotlin в два раза чаще. Согласно имеющимся данным, JavaScript лидирует среди веб-разработчиков, Python активно применяется в широком спектре направлений, в том числе в сфере машинного обучения, а языки Go и Ruby используются при разработке софтверных решений для облачных систем.

Отмечается первостепенная важность программного обеспечения с открытым исходным кодом. Проведённый Slashdata опрос показал, что разработчики положительно относятся к программному обеспечению с открытым исходным кодом и принимают участие в его развитии. В отчёте сказано, что 60 % участников опроса сообщили о том, что участвуют в разработке ПО с открытым исходным кодом. При этом 29 % разработчиков участвуют в таких проектах для улучшения собственных навыков кодирования, 22 % программистов вносят свой вклад, поскольку им просто нравится это, и только в 3 процентах случаев специалисты работают из-за денег.

«Rust — будущее системного программирования, С — новый Ассемблер» — выступление одного из ведущих инженеров Intel

На недавно прошедшем Саммите по технологиям с открытым исходным кодом (Open Source Technology Summi — OSTS) Джош Триплетт (Josh Triplett), ведущий инженер Intel, рассказал о том, что его компания заинтересована в том, чтобы в ближайшем будущем Rust достиг «паритета» со всё ещё доминирующим в области системной и низкоуровневой разработки языком C. В своём выступлении под заголовком «Intel и Rust: будущее системного программирования» он также рассказал об истории системного программирования, о том, как C стал языком системного программирования «по умолчанию», какие возможности Rust дают ему преимущество над C и как в ближайшем будущем он сможет полностью заменить C в данной области программирования.

Ведущий инженер Intel Джош Триплетт выступил на Открытом саммите по технологиям с открытым исходным кодом с потрясающим докладом о том, как, по его мнению, Rust в ближайшем будущем заменит C как язык для системного программирования, и Intel готова в этом поучаствовать

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

Сам Триплетт определяет системное программирование как «всё, что не является приложением». Оно включает в себя такие вещи, как BIOS, прошивки, загрузчики и ядра операционных систем, различные виды встроенного низкоуровневого кода, а также реализации виртуальных машин. Интересно, что Триплетт считает, что веб-браузер — это тоже системное программное обеспечение, поскольку браузер давно стал бóльшим, чем «просто программой», превратившись в самостоятельную «платформу для веб-сайтов и веб-приложений».

В прошлом большинство системных программ, в том числе BIOS, загрузчики и прошивки, писались на языке ассемблера. В 1960-х годах начались эксперименты по обеспечению аппаратной поддержки языков высокого уровня, что привело к созданию таких языков, как PL/S, BLISS, BCPL и ALGOL 68.

Затем, в 1970-х годах, Деннис Ритчи (Dennis Ritchie) создал язык программирования C (Си) для операционной системы Unix. Созданный на языке программирования B, не имевшим даже поддержки типизации, C был наполнен мощными высокоуровневыми функциями, которые лучше всего подходили для написания операционных систем и драйверов. Несколько компонентов UNIX, включая его ядро, были в конечном итоге переписаны на C. В дальнейшем многие другие системные программы, включая базу данных Oracle, большую часть исходного кода Windows и операционную систему Linux, были также написаны на C.

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

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

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

Триплетт на конференции Rustconf 2019, проходившей в Портленде, штат Орегон, США.

Триплетт на конференции Rustconf 2019, проходившей в Портленде

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

«Любой язык, который хочет быть лучше, чем C, должен предлагать гораздо больше, чем просто защиту от переполнения буфера, если он действительно хочет стать убедительной альтернативой. Разработчики заинтересованы в удобстве использования и производительности, в написании кода, который не требует пояснений и выполняет больше работы за меньшее количество строк. Также необходимо решить проблемы безопасности. Простота использования и производительность неразрывно с нею связаны. Чем меньше кода вам нужно написать для достижения чего-либо, тем меньше у вас возможностей, чтобы допустить какие-либо ошибки, связанные с безопасностью или нет», — объясняет Триплетт.

Сравнение Rust и C

Ещё в 2006 году Грейдон Хоар (Graydon Hoare), сотрудник Mozilla, начал писать Rust как личный проект. А в 2009 году Mozilla начала спонсировать разработку Rust для собственных нужд, а также расширила команду для дальнейшего развития языка.

Одна из причин, по которой Mozilla заинтересовалась в новом языке, заключается в том, что Firefox был написан на более чем 4 миллионах строк кода C++ и имел довольно много критических уязвимостей. Rust был создан с учетом требований безопасности и параллелизма, что делает его идеальным выбором для переписывания многих компонентов Firefox в рамках проекта Quantum по полной переработке архитектуры браузера. Также Mozilla использует Rust для разработки Servo, движка рендеринга HTML, который в будущем заменит текущий движок рендеринга Firefox. Многие другие компании начали использовать Rust для своих проектов, включая Microsoft, Google, Facebook, Amazon, Dropbox, Fastly, Chef, Baidu и многие другие.

Rust решает одну из наиболее важных проблем языка C. Он предлагает автоматическое управление памятью, поэтому разработчикам не нужно вручную выделять, а затем освобождать её для каждого объекта в приложении. Что отличает Rust от других современных языков, так это то, что он не имеет сборщика мусора, который автоматически удаляет из памяти неиспользуемые объекты, а также среды выполнения, необходимой для его работы, как, например, Java Runtime Environment для Java. Вместо этого у Rust есть концепции владения, заимствования, ссылок и времени жизни. «В Rust есть система декларирования вызовов объекта, позволяющая указать, использует ли его владелец или это просто заимствование. Если вы просто заимствуете объект, компилятор будет следить за этим и гарантировать, что оригинал останется на месте, пока вы ссылаетесь на него. А также Rust проследит, что объект будет удалён из памяти сразу по завершении его использования, вставляя соответствующий вызов в код во время компиляции без дополнительных затрат времени», — рассказывает Триплетт.

Отсутствие собственной среды выполнения также можно считать положительной чертой Rust. Триплетт считает, что языки, которые выполняются с её помощью, сложно использовать в качестве инструмента для системного программирования. Как он поясняет: «Вы должны инициализировать эту среду выполнения, прежде чем сможете вызвать любой код, вы должны использовать эту среду выполнения для вызова функций, и сама среда выполнения может запускать дополнительный код за вашей спиной в неожиданные моменты времени».

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

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

Триплетт собирается создать специальную рабочую группу, которая займётся внедрением в Rust необходимых функцией, чтобы он смог полностью сравняться, превзойти и заменить C в области системного программирования. В теме на Reddit, посвящённой его выступлению, он сообщил, что «группа FFI/ C Parity находится в процессе создания и ещё не начала работу», пока что он готов ответить на любые вопросы, а в будущем обязательно опубликует ближайшие планы по развитию Rust в рамках его инициативы для всех заинтересованных лиц.

Можно предположить, что в первую очередь группа FFI/ C Parity займётся улучшением поддержки многопоточности в Rust, внедрением поддержки BFLOAT16, формата представления чисел с плавающей запятой, который появился в новых процессорах Intel Xeon Scalable, а также стабилизацией вставок кода на Ассемблере.

Python стал политкорректным и избавился от схемы Master-Slave

В последнее время политкорректность приобретает совсем уж удивительные очертания. Некоторое время назад Виктор Штиннер (Victor Stinner) из Red Hat предложил вычистить код Python от упоминания слов «master» (хозяин) и «slave» (раб). По его словам, эти термины неполиткорректны и ассоциируется с рабством и неравноправием. Это раскололо сообщество разработчиков.

Точку в споре поставил бывший великодушный пожизненный диктатор Гвидо ван Россум (Guido van Rossum). За время дискуссии было подано пять коммитов, из которых примут четыре. Обновления появятся в Python 3.8. Последнее изменение отклонили, поскольку оно затрагивало устоявшуюся терминологию UNIX ptys, а через неё и ряд других проектов.

Изменений предложено довольно много, однако суть их в следующем: в разных случаях слово «master» заменяется на «parent», «main», «server», а «slave» — на «child» или «worker» в зависимости от контекста. В ходе дискуссии сторонники переименования аргументировали свою позицию положениями политкорректности и негативных коннотаций в этих словах. А противники заявляли, что не следует смешивать политику и программирование, поскольку термины уже устоялись в среде разработчиков. При этом они никак не оскорбляют и не оправдывают рабство. А вот проблемы в виде путаницы и невозможности обратной совместимости вполне могут быть. Впрочем, учитывая, что вторая и третья ветви Python не полностью совместимы между собой, последний вопрос явно не считался приоритетным.

При этом отметим, что несколько лет назад в Drupal «master» и «slave» заменили на «primary» и «replica», а в Django и CouchDB — на «leader» и «follower» соответственно. Подобные изменения могут ждать и СУБД Redis.

Отметим также, что маркеры «master» и «slave» до определённого времени применялись и в «железной» среде, когда там использовались жёсткие диски стандарта IDE. Сейчас это уже не настолько актуально.

Java и C продолжают удерживать лидерство в рейтинге языков программирования

Компания TIOBE Software опубликовала очередной рейтинг популярности языков программирования, формируемый путём подсчёта количества их упоминаний при поиске в Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube, Baidu и других интернет-сервисах.

По оценкам аналитиков TIOBE Software, самыми востребованными в профессиональной среде инструментами для создания приложений в настоящий момент являются Java и C, за которыми со значительным отрывом следует C++. Четвёртым по популярности среди разработчиков является язык Python, замыкает пятёрку лидеров C#.

Рейтинг популярности языков программирования (источник: TIOBE Software)

Рейтинг популярности языков программирования (источник: TIOBE Software)

Проведённые специалистами TIOBE Software исследования зафиксировали рост интереса со стороны разработчиков к языкам программирования MATLAB и R. Реже в Интернете стали упоминаться Perl, Visual Basic и язык ассемблера. Что касается почётного титула «язык года», то главными кандидатами на эту награду являются Kotlin и C. Победитель в этой номинации станет известен в январе. Для справки: в 2016 году столь высокого звания был удостоен разработанный компанией Google язык Go, а годом ранее — Java.

С полным отчётом TIOBE Software можно ознакомиться здесь.

3 модных игровых технологии, которые вы можете реализовать

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

Игровые тренды 2017 года

Голосовое управление. Этот тренд существует не первый год, но теперь игры от реагирования на отдельные команды переходят к полностью голосовому управлению. В японском платформере Yasuhati герой двигается, когда вы произносите что-то в микрофон. На каком языке — не важно: учитывается высота и громкость звука. В другом платформере — Resonance: The Lost Score — нужно силой голоса разбивать ледяные глыбы на своём пути.

Игры на запястье. Часы и очки «поумнели» в борьбе за внимание геймера. Разработчики игр для «яблочных» и Android-часов учитывают специфику платформы. В тренде: тамагочи, головоломки на 10 минут, игры на реакцию, квесты на push-уведомлениях (Lifeline, Spy_Watch) и даже адаптации карточных RPG (Rune Blade).

Виртуальная реальность. 2017 год принёс оживление в нишу VR-игр. В августе начали выпускать шлемы Oculus Rift с новыми контроллерами Oculus Touch вместо прежнего от Xbox. Обновлённый набор можно опробовать на вышедшем 1 марта шутере Robo Recall или в игре Arktika, которую 10 октября 2017 выпустили создатели Metro. Любители квестов и шлемов HTC Vive в этом году играют в Essence и VR-адаптированный Fallout 4.

Хотите использовать это в своей игре?

Создание VR-игры проще, чем кажется — необходимые инструменты есть в популярном движке Unity. В нём имеется и класс DictationRecognizer для распознавания речи. Конечно, для работы с Юнити потребуется изучить C#, но он лаконичнее и проще, чем C++. Язык «Си шарп» удобен в отладке, имеет множество встроенных библиотек и не путает вас множественным наследованием классов. А ещё c Юнити и С# можно создавать игры для Xbox и Apple Watch, не говоря уже о настольных платформах и Android.

Тем, кто хотел бы написать игру для часов, также стоит присмотреться к языку Swift. По простоте он близок к Python, а по скорости исполнения его превосходит.

Если вы ещё не программируете, а идея игры уже требует воплощения, вам необходимо ускоренное погружение в разработку. Онлайн-курсы игростроя на русском языке — хороший вариант. В этом году на IT-портале GeekBrains открылся факультет игростроя, где за год можно разработать несколько проектов под руководством наставника и начать карьеру в команде единомышленников.

Python-искуситель: выбираем первый ЯП для изучения

Массачусетский технологический институт и открытый при поддержке «Яндекса» факультет компьютерных наук ГУ ВШЭ знакомят студентов с программированием на примере Python.Почему Питон рекомендуют новичкам, как с ним поладить, а потом — найти работу?

На Питоне были написаны ранние версии поисковика Google, а сейчас его используют в составе сервисов YouTube, Instagram, DropBox и Pinterest. Язык применяют в приборостроении и космической отрасли. Он не игрушка, но так прост, что в некоторых российских школах его учат с 7 класса.

Сила минимализма

  • Короткий путь от идеи к результату — одна из главных черт Питона. Студенты и школьники пишут на нём приложения для любых платформ без глубокого знания «железных» нюансов. Профессионалы с его помощью быстро создают и тестируют прототипы программ.
  • Python учит ясно выражать сложное и умещать в одной строке то, что на других языках заняло бы четыре.
  • Python — это приглашение в мир, где код программ очень похож на разговорный английский. Создатель языка Lisp и директор по исследованиям в Google Питер Норвиг зовёт тексты на Питоне псевдокодом — настолько они близки к естественному языку.

«Батарейки прилагаются»

Питон по умолчанию установлен в MacOS и включен в большинство дистрибутивов Linux. Стандартная библиотека языка включает более 250 модулей. Самое необходимое под рукой — это часть философии языка. А ещё у Python большое сообщество, в том числе в России. Новичку легко найти помощь.

В чем подвох?

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

Кем быть, где работать?

Веб-разработчики используют Python в связке с фреймворками Django и Flask, чтобы создавать устойчивые к нагрузкам сайты и онлайн-приложения. Базовые функции, в том числе регистрация и авторизация пользователей, в Django доступны «из коробки». А ещё на Питоне есть готовые шаблоны для написания Telegram-ботов.

С Python вам открыта карьера аналитика Big Data — «больших данных», без которых не мыслят себя Apple, Сбербанк и крупные ретейлеры. Благодаря библиотекам pandas и scikit-learn, Питон оттесняет языки R и Ruby на поприще статистического анализа и машинного обучения.

На странице Google Jobs язык Python перечислен среди требований к программным инженерам. Эти специалисты совершенствуют создание и сопровождение ПО.

По востребованности у российских работодателей Java и C опережают Питон, особенно в регионах. Большая часть вакансий Junior-разработчика на Python сосредоточена в Москве и Санкт-Петербурге. В других городах чаще нужны кодеры с опытом. Поэтому новичку есть смысл выбрать курсы со стажировкой и трудоустройством. Mail.Ru Group и обучающий портал GeekBrains создали в России онлайн-университет для программистов Geek University. Оттуда выпускников берут на работу в Тинькофф, МТС, Avito или компании поменьше, но с возможностью сразу занять middle-позицию.

Если программирование — ваше хобби, а трудоустройство пока не приоритет, можете выводить свои Python-игры в Steam через Greenlight или разрабатывать бесплатный софт за пожертвования. Собрав портфолио, вы сможете удалённо сотрудничать со столичными и зарубежными компаниями. В Москве Python-программисты получают в среднем 105 000 рублей в месяц. 

Google наняла известного инженера Apple для работы над ИИ

У весьма известного в узких кругах программиста Криса Латтнера (Chris Lattner) этот год оказался довольно необычным. Вначале он покинул Apple (где прежде разработал язык программирования Swift), чтобы помочь Tesla в создании автопилота — и всё для того, чтобы спустя несколько месяцев покинуть компанию Элона Маска (Elon Musk), осознав, что это не его стихия.

Тем не менее, господин Латтерн, возможно, нашёл своё пристанище на более длительный срок. Он сообщил, что присоединяется к компании Google (а если точнее, к её команде Brain), чтобы сделать искусственный интеллект общедоступной технологией. Хотя программист не сообщает, чем именно он будет заниматься внутри поискового гиганта, источники Bloomberg утверждают, что он будет трудиться над развитием открытой программной библиотеки TensorFlow, созданной для упрощения программирования ИИ.

Это назначение не меняет особенно положение дел для самой Apple, которая уже несколько месяцев обходится без Криса Латтнера, а вот для Google это определённо ценное приобретение. Господин Латнер сыскал известность благодаря созданию языка программирования Swift, который оказался не только быстрым и современным, но и (важнее всего) доступным и удобным инструментом для любых разработчиков, от начинающих до опытных профессионалов.

Google, вероятно, собирается использовать этот успешный опыт с целью превращения библиотеки TensorFlow в более простой и доступный инструмент, а также, возможно, желает снизить её системные требования, чтобы алгоритмы на базе искусственного интеллекта исполнялись лучше на относительно слабых смартфонах и компьютерах. Разумеется, нет никакой гарантии, что в Google Крис Латтнер добьётся тех же успехов, что и в Apple, но потенциал определённо есть.

Семь причин изучать Java

Мир стоит на пороге четвёртой промышленной революции. Индустрия 4.0. ознаменуется массовым внедрением искусственного интеллекта в нашу жизнь. Человеческий труд уступит место машинному: по прогнозам в ближайшие 20 лет более 40 % рабочих мест будет автоматизировано. Но появятся и новые специальности, связанные с обслуживанием работы машин. Наступает эра IT, где владение языками программирования — гарантия стабильности. Какой язык выбрать? Эксперты уверены: Java будет востребован ещё не одно десятилетие. 

Семь перспективных направлений, в которых без Java не обойтись:

1. Android-приложения

Хотите писать под Android? Учите Java.

2. Финансовые услуги

Мировые инвестиционные банки используют Java для обработки данных, написания серверных приложений, создания фронтэнда и бэкенда.

Так же поступают трейдеры. Например, на этом языке написано популярное приложение «Murex».

3. Веб-приложения

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

4. Программные средства

Такие приложения, как Eclipse, IntelliJ Idea, Netbeans IDE воплощены в жизнь благодаря Java.

5. Встраиваемые системы

Эта сфера — «родина» Java. Язык разрабатывался для встраиваемых систем под лозунгом: «пиши один раз, запускай где угодно». Люди стремятся упрощать жизнь, и Java делает это возможным. Сфера применения широка: от мобильных телефонов и бытовой техники до систем управления предприятиями. Директор по маркетингу компании Microtec уверен: Java только набирает обороты на рынке встраиваемых систем и вскоре получит широкое распространение.

6. Большие данные

Пока Java не доминирует в этой области, но у него есть все шансы вырваться вперёд. Это случится, если Hadoop или ElasticSearch расширятся.

7. Наука

В научных приложениях Java используется по умолчанию. Одно из направлений работы — обработка естественных языков: устной и письменной речи. Помните притчу о Вавилонской башне и возникновении разных языков, разобщивших народы? Программисты решили исправить ситуацию и создали синхронный переводчик.

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

Для достижения целей потребуются разные языки программирования: кроме Java, эксперты делают ставку на R, Erlang, Go и Swift. Вероятно, появятся и новые языки, но они ещё долго будут играть вспомогательную роль. История Java началась ещё в 1990 году и всё это время язык совершенствовался. Сегодня Java — самый востребованный язык программирования в мире.

Писать на Java не только интересно, но и выгодно: в 2017 г. зарплата такого специалиста в Москве колеблется от 25 000 до 175 000 р. Ценно, что программирование позволяет зарабатывать во время обучения, поэтому «отбить» вложенные средства реально уже в первые месяцы. Как быстро вам удастся это сделать, зависит от выбранного метода обучения: важно не зацикливаться на теории, а сразу переходить к практике. Профессиональные курсы позволяют это сделать. Преподаватели уровня «senior» доступно объяснят материал и помогут влиться в новую среду. Кроме того, здесь вы найдете единомышленников и полезные контакты, что неоценимо в начале карьеры.

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

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

«Яндекс» и МФТИ помогут получить навыки программирования на C++

«Яндекс» и Московский физико-технический институт (МФТИ) объявили о запуске онлайнового курса «Основы разработки на C++: белый пояс», который поможет получить навыки программирования на популярном языке.

Курс посвящён знакомству с языком программирования С++. Занятия ориентированы на тех пользователей, которые обладают базовыми понятиями программирования — знают, что такое переменные, циклы, условные операторы, — но не имеют опыта написания программ на C++.

Курс разработан ведущими специалистами «Яндекса» и преподавателями Школы анализа данных. Слушатели познакомятся с основами C++ и научатся базовым приёмам, с помощью которых можно решать практические задачи.

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

Базовые материалы курса доступны бесплатно, но чтобы открыть доступ ко всем практическим заданиям и получить по окончании курса сертификат, нужно приобрести полную версию — она стоит 1680 рублей.

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

Google добавила Kotlin в качестве официального языка программирования для Android

Google сообщила, что отныне официально поддерживает Kotlin на Android в качестве «первоклассного» языка. Kotlin — новый язык программирования от компании JetBrains, созданной Сергеем Дмитриевым, Евгением Беляевым и Валентином Кипятковым. Котлин — это остров в Финском заливе, на котором расположен Кронштадт. Такое название намекает на некоторое родство нового языка с Java, как острова Котлин с островом Ява. Официальный инструмент разработки Android Studio от Google, к слову, основан на JetBrains IDE.

Как и Java, который является стандартным языком разработки окружения Android, Kotlin работает поверх JVM (Java Virtual Machine). При этом Kotlin (как и другие JVM-языки) и ранее можно было интегрировать в Android с помощью Gradle, а благодаря полной совместимости с Java разработчики могли использовать его преимущества без необходимости переписывания всего приложения.

Android не использует JVM в чистом виде, но корни Java в современной виртуальной машине этой ОС весьма сильны, а удобство и совместимость Kotlin с Java сделали его популярным среди разработчиков. Официальная поддержка со стороны Google должна дать большой толчок и сделать более естественной работу с по сути зарождающимся языком: хотя публично он был представлен в июле 2011 года, лишь 15 февраля 2016 года состоялся выход финальной версии 1.0.

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

Инструменты Kotlin будут включены в Android Studio 3.0 по стандарту, а Google и JetBrains обещают поддерживать его и далее. В отличие от языка программирования Swift, который был внутренним проектом Apple, а затем стал открытым, Google не владеет Kotlin. Он будет продолжать развиваться компанией JetBrains и распространяться на другие платформы: язык создавался с тем, чтобы на нём, среди прочего, можно было разрабатывать ПО для iOS и Mac, а также компилировать код JavaScript для веб-приложений.

Разработчики на iOS отдают предпочтение языку программирования Swift

Язык программирования Swift от компании Apple существует уже не первый год, однако разработчики на iOS и macOS по-прежнему могут создавать приложения с помощью Objective-C, автором которого также является купертинский гигант. Тем не менее, если верить новому исследованию площадки для фрилансеров Upwork, технологические компании испытывают всё большую нужду в разработчиках, не понаслышке знакомых со Swift.

Upwork является крупнейшим рынком фрилансеров в США, поэтому компания вполне способна определять тренды на этом рынке. В её исследовании сравниваются самые быстрорастущие в плане востребованности навыки в четвёртом квартале 2016 и 2015 годов.

Примечательно, что пять самых востребованных навыков являются технологическими. Это обработка естественного языка, разработка на Swift, работа с аналитическим программным обеспечением Tableau, использование Amazon Marketplace Web Services для автоматического размещения продуктов на Amazon и интеграция Stripe.

Apple представила Swift в июне 2014 года на мероприятии WWDC. Он позиционировался как современный язык программирования, который должен заменить Objective-C. Однако такой переход не мог быть мгновенным, поэтому Apple постаралась сделать его как можно более плавным. В приложениях для iOS, macOS, tvOS и watchOS вполне могут присутствовать элементы обоих языков программирования. Тем не менее, Swift набрал огромную популярность, исходный код его был опубликован компанией в декабре 2015 года.

С тех пор Swift стал более зрелым и разносторонним. И исследование Upwork ещё раз доказывает, что многие компании теперь отдают предпочтение именно этому языку программирования, а не Objective-C, который появился ещё в 80-е годы прошлого века.

window-new
Soft
Hard
Тренды 🔥
Microsoft может стать крупнейшим игроком на рынке мобильных игр после покупки Activision Blizzard 7 ч.
Глава Activision Blizzard Бобби Котик покинет компанию после завершения сделки с Microsoft 7 ч.
Главы Xbox и Microsoft обратились к сотрудникам по поводу приобретения Activision Blizzard 8 ч.
Глава Activision Blizzard: сделка с Microsoft — это шаг на пути к созданию метавселенной 9 ч.
Количество подписчиков сервиса Game Pass превысило 25 млн 10 ч.
Музыкальное приключение The Artful Escape посетит новые платформы до конца января 11 ч.
Более 3 млн пользователей Steam добавило Dying Light 2 в свой список желаемого 11 ч.
Патенты Meta рассказали, как компания будет зарабатывать на метавселенной — реклама и продажа виртуальных вещей 11 ч.
Эксклюзивами Microsoft станут не все франшизы Activision Blizzard — как минимум некоторые на PlayStation останутся 12 ч.
Анимационный сериал по мотивам Cuphead дебютирует в следующем месяце 12 ч.
Стоимость подписки на автопилот Tesla не изменилась после повышения цены самой опции 7 мин.
Появление на борту Tesla Model 3 процессоров AMD Ryzen сократило пробег без подзарядки 2 ч.
США начали проверку облачного сервиса Alibaba на предмет угрозы национальной безопасности 7 ч.
Arctic выпустила бракованную термопасту MX5 — проблемная партия отозвана, покупателям заменят товар 7 ч.
Nestle переведёт все фабрики в России на ветряную электроэнергию 7 ч.
Новая статья: Обзор PCIe 4.0-накопителя Transcend MTE240S: графеновый радиатор и богатырский ресурс 7 ч.
OneWeb снова отложила запуск услуг спутникового интернета 9 ч.
Intel Core i3-12300 стал самым быстрым 4-ядерником в Y-cruncher благодаря разгону, который формально не поддерживает 9 ч.
Volkswagen и Bosch будут вместе выпускать оборудование для производства электромобильных аккумуляторов в Европе 9 ч.
SK hynix представит в феврале память HBM3 с пропускной способностью до 896 Гбайт/с и новые скоростные чипы GDDR6 10 ч.