Рубрика «Программирование» - 10

Стандартизация JS перешла на годичный цикл обновлений, а начало года — отличное время для того чтобы узнать, что нас ждёт в юбилейной — уже десятой редакции EcmaScript!

ES9 — актуальная версия спецификации.

ES10 — всё ещё черновик.

На сегодняшний день в Stage 4 # — всего несколько предложений.

А в Stage 3 # — целая дюжина!

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

 
КДПВ: Жёлтый магнит с надписью «JS ES10» на экране монитора —  от kasper.green & elfafeya.art
        Автор фото: kasper.green; Жёлтый магнит: elfafeya.art & kasper.green

Читать полностью »

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

Государственный университет Адамс. Как взламывать веб-сайты. Часть 1 - 1

Сьюзен Лавленд: в начале презентации я хочу упомянуть, что хакеры бывают всех оттенков черного и белого цветов. Сегодня я буду играть роль хакера в Черной Шляпе и выступать на темной стороне взлома потому, что быть плохой доставляет намного больше удовольствия, чем хорошей. Есть и хакеры в Белых Шляпах, которые выполняют работу для компаний компьютерной безопасности и занимаются расследованиями в области компьютерной криминалистики. Они пытаются найти уязвимости системы безопасности прежде, чем плохие парни ими воспользуются в своих целях.

Задача таких хакеров – найти уязвимость, не причиняя вреда приложению, составить отчёт о прорехе в системе безопасности и направить его компании. Сама я никогда не думала о том, чтобы взломать сайт, поэтому привела с собой содокладчика, который подготовил слайды нашей презентации (надевает на себя Чёрную Шляпу).Читать полностью »

Hi. My name is Michael Kapelko. I've been developing software professionally for more than 10 years. Recent years were dedicated to iOS. I develop games and game development tools in my spare time.

Overview

Today I want to share my experience of teaching kids to program. I'm going to discuss the following topics:

  • organization of the learning process
  • learning plan
  • memory game
  • development tools
  • lessons
  • results and plans

Читать полностью »

Многие считают, что в 9-10 лет можно программировать максимум на Scratch’е. Но это не так. В 9 лет можно и на C# Windows Forms программки пилить. Главное – желание.

С чего все началось

Все началось тогда, когда я захотел сделать полноценный компьютер в Minecraft.

Я устроил DDoS атаку на Яндекс Я искал информацию, как работает компьютер. Во время поиска, мне на глаза попался видеокурс по шарпу. И началось…
Читать полностью »

Автоматизация квартиры с HomePod, Raspberry Pi и Node.js - 1

Перевели для вас статью Криса Хокинса, в которой он рассказывает о превращении своей квартиры в умный дом. В качестве базы используется HomePod от Apple, но, конечно, можно применять и другие системы.

У меня дома работает Apple HomePod, который помогает контролировать определенные системы в доме (к примеру, умные лампы) при помощи обычного запроса к Siri. Работает система как из дома, так и вне его (умный помощник есть на телефоне).
Читать полностью »

Сжимаем список IP-адресов наилучшим образом - 1

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

26 рекомендаций по использованию типа var в Java - 1

The Java Local Variable Type Inference (LVTI) или кратко — тип var (идентификатор var — это не ключевое слово, а зарезервированное имя типа) был добавлен в Java 10 с помощью JEP 286: Local-Variable Type Inference. Являясь 100% функцией компилятора, она не влияет на байт-код, время выполнения или производительность. В основном компилятор проверяет правую часть от оператора присваивания и, исходя из нее, определяет конкретный тип переменной, а затем заменяет им var.

Кроме того, это полезно для сокращения многословности шаблонного кода, а так же позволяет ускорить сам процесс программирования. Например, очень удобно писать var evenAndOdd =... вместо Map<Boolean, List<Integer>> evenAndOdd =... .

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

В этой статье мы рассмотрим 26 ситуаций, с примерами того, когда можно использовать var, а когда этого делать не стоит.

Читать полностью »

Некоторое время назад ссылка на статью "Modern dining philosophers" распространилась по ресурсам вроде Reddit и HackerNews. Статья интересная, она показывает несколько решений этой известной задачи, реализованных на современном C++ с использованием task-based подхода. Если кто-то это статью еще не читал, то имеет смысл потратить время и прочесть ее.

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

При этом task-based подход не является единственным возможным для решения подобных задач. Почему бы не посмотреть, как задача "обедающих философов" решается посредством моделей Акторов и CSP?

Посему попробовал посмотреть и реализовал несколько решений этой задачи как с использованием Акторов, так и с использованием CSP. Код этих решений можно найти в репозитории на BitBucket-е. А под катом пояснения и объяснения, так что кому интересно, милости прошу под кат.

Читать полностью »

Piter GraphQL: видеозаписи с митапа в Wrike - 1

24 января в офисе Wrike прошел первый в Петербурге митап по GraphQL. Чтобы разобраться в жизнеспособности хайповой технологии мы, во-первых, суммировали результаты своих исследований в этой теме, во-вторых, позвали в гости Павла Черторогова, опенсорс-мейнтейнера, который с конца 2015 года разрабатывает изоморфные приложения. Летом 2016 Павел начал разработку graphql-compose в опенсорсе.

Для тех, кто не смог прийти, мы публикуем видеозаписи докладов.
Читать полностью »

image

PHP — один из самых популярных языков программирования. А ещё это язык, для изучения которого не так просто найти качественную книгу. Что ж, мы вместе с командой GeekBrains заглянем в интернет-магазин и посмотрим, что стоящего можно найти сегодня по PHP на русском языке.
Читать полностью »