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

Привет!

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

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

Думаю многие знают, как работает CGI взаимодействие между клиентом и сервером: клиент получает от сервера и отдает серверу данные через стандартные stdin и stdout. Многие наверное даже сами писали CGI клиентов, ведь по сути — любой скрипт для веб-сервера это и есть CGI-клиент.
А многие ли задавались вопросом, как именно происходит эта «магия»? Каким образом стандартные функции для ввода/вывода вместо экрана взаимодействуют с сервером?

Результаты поиска ответа в сети меня не удовлетворили и я решил сам написать простейший CGI сервер, который сможет:

  • Запускать дочерний процес — CGI скрипт
  • Передавать скрипту переменные окружения и переменные командной строки
  • Принимать от скрипта ответ
  • Завершаться, когда завершится процесс клиента

Кроме этого, мне хотелось, чтобы клиент и сервер компилировались как в Windows, так и в Linux.
Читать полностью »

Компания Google на 1 апреля (Fool's Day) поздравила с одной стороны ожидаемым от гугла, в принципе — дудлом (doodlers), а с другой весьма любопытным в истории коммерческого интернета — фактом.

А именно, запустив стартовую страничку поиска в корневом домене .google

Google поздравил с 1 апреля запуском в корневой зоне .google - 1

Под катом скрины в натуральную величину, а также еще один дудл от Google в этот день.

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

Приглашаем на третью встречу IT-специалистов Hack Weekend - 1 Приглашаем всех желающих на третью встречу IT-специалистов Hack Weekend, которая пройдёт в Калуге с 3 по 4 апреля. Здесь собираются представители самых разных профессий — разработчики, дизайнеры, проектировщики и т.д. В течение суток они будут обмениваться опытом и тут же применять полученные знания. Самые стойкие смогут заниматься разработкой без перерыва на сон, все 24 часа. Причём с участниками, создающими свои продукты, будут работать менторы.

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

Недавно мы уже узнали о принципе прямых инжекции и эффективном связывании вью-моделей с представлениями, а также о том, каким образом создавать расширения привязки. Продолжим исследование библиотеки Aero Framework и рассмотрим ещё один архитектурный вопрос.

Навигация между представлениями (экранами) в xaml-ориентированных приложениях довольно важная и интересная задача. Особенно это касается её реализации в рамках паттерна MVVM. В идеале вью-модели не должны содержать никаких прямых ссылок на представления, чтобы быть кросс-платформенными и сохранялась возможность повторного их использования в нескольких проектах. Сегодня мы узнаем, как этого достичь.
Командно-ориентированная навигация в xaml-приложениях - 1
Читать полностью »

Простой DICOM клиент на GO с балансировщиком задач и веб-интерфейсом - 1
Привет! В последнее время я очень сильно увлекся разработкой на языке GO. Изящный и выразительный язык программирования. Мне давно хотелось сделать что-нибудь полезное. По специфике своей работы мне приходится работать с медицинскими архивами DICOM-изображений PACS.
Читать полностью »

Наступает один из самых веселых народных праздников – День дурака, или более политкорректно – День смеха. Соответственно, встает насущный вопрос – как подшутить над коллегами на работе, не нажив себе дополнительных врагов.

Можно, конечно, воспользоваться классическими приколами типа:
• спросить подопытного, как расшифровывается слово «ДУНЯ»; предложить свой вариант «Дураков У нас Нет»; и дождаться недоуменного «А Я?»;
• напихать в фотодатчик мышки испытуемого ворсинок или просто заклеить его скотчем (в смысле, датчик)…

Но можно применить и более высокотехнологичные и изощренные способы «сноса крыши» с помощью программ-шуток.

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

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

image

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

Ruby

Определение значения по умолчанию или мимика губами:

foo ||= []
foo ||= {}
foo ||= ''
foo ||= 0

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

Доброго дня, %username%!

В очередной раз, к первому апреля выходит любительская UNIX-like система PonyOS.

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

    В Caché есть несколько различных способов пройтись по коллекции и выполнить какие-нибудь действия с ее элементами. Самым простым является while-цикл. Такой способ позволяет решить поставленную задачу в императивном стиле. Разработчику приходиться явно заботиться об итераторе, о переходе к следующему элементу и о проверке выхода за пределы коллекции.
    Но разве это то, о чем должен заботиться разработчик?! Разработчик должен решать поставленную перед ним задачу, за максимально короткое время с максимально хорошим качеством кода. Было бы очень здорово просто взять коллекцию и применить к ней функцию, которая выполняет необходимые действия на каждом элементе этой коллекции. Не проверять границ, не создавать итератор, не вызывать вручную функцию на каждом элементе. Такой способ решения задач называется декларативным программированием.

Declarative programming is when you write your code in such a way that it describes what you want to do, and not how you want to do it.

(c) 1800-information
Давайте подумаем, как же решить поставленную задачу декларативно, используя средства и возможности Caché.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js