Search
Write a publication
Pull to refresh
56
0
Илья @WST

Инженер-программист

Send message

PayPal получил российскую лицензию НКО

Reading time1 min
Views31K
В продолжение темы.

ООО «ПэйПал», российское представительство международной платежной системы PayPal получило лицензию небанковской кредитной организации. 14 мая российское ООО оплатило уставной капитал в размере 18 млн рублей, после этого компания получила лицензию ЦБ РФ.

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

via Известия.

HTML и CSS безумие [перевод]

Reading time6 min
Views107K

или Создаем 3D миры при помощи HTML, CSS и JS


image
В прошлом году, я сделал демо, которое показывает как можно использовать CSS 3D transforms для создания 3D пространства. Демо было технической демонстрацией того, чего можно достичь при помощи CSS на то время, но я хотел увидеть насколько далеко я могу зайти, поэтому последние несколько месяцев я работал над новой версией с еще более сложными моделями, реалистичным освещением, тенями и определением столкновений. Этот пост документирует то, как я это делал и какие техники применял.

Демо Демо2
Читать дальше →

PHP создан, чтобы умирать

Reading time8 min
Views157K
Дисклеймер: у меня за спиной более десяти лет разработки на PHP. Я начал использовать его, когда PHP4 был совсем малышом, а PHP5 — только мечтой компании Zend. С помощью него я сделал многое, я любил его, проклинал и не без стыда наблюдал за тем, как он растёт и развивается. Я всё ещё использую его в некоторых доставшихся по наследству проектах, но предпочитаю больше его не применять. Также хочу отметить, что я не сотрудничаю с создателями фреймворков или инструментов, упомянутых в статье.

TL;DR (англ. too long; didn't read. Так, в частности, говорят, когда лень читать статью целиком — прим. пер.): если ваш проект основан на функциях фоновых процессов (фоновых служб, демонов — прим. пер.), избегайте PHP.

По-моему, в большинстве случаев ненавистники PHP упускают один весьма важный момент: PHP создан, чтобы умирать. Это не значит, что довольно способный (в какой-то степени) язык программирования исчезнет в никуда; это всего лишь означает, что ваш PHP код не может выполняться вечно. В настоящее время, спустя 13 лет после первого официального релиза в 2000 году, эта мысль до сих пор кажется мне вполне обоснованной.
Читать дальше →

Не бывает «чистых» программистов

Reading time3 min
Views29K
С появлением Ruby on Rails уровень технических знаний необходимых для создания веб-приложений понизился. Становятся ли знания и опыт менее критичными?

Я думаю, Ruby on Rails очень сильно понизил планку в терминах «что нужно для того, чтобы запустить веб-приложение». Некоторые видят в этом только отрицательную сторону. В духе, «Ой, варвары у ворот» или «Ну вот, сейчас все эти немытые дикари хлынут в наши замечательные программистские сообщества». Я уже не раз слышал такое. Многие ругали Visual Basic за что, что он открыл двери для, так называемых, «не чистых» программистов. Я думаю, все это — чушь собачья.

Читать дальше →

Разработчик ядра Windows NT объяснил причины низкой производительности ОС

Reading time3 min
Views158K
Один из программистов компании Microsoft анонимно выступил на форуме Hacker News и выдал интересные подробности о процессе разработки ядра NT. Своим сообщением он хотел подтвердить тезис о том, что ядро неэффективно и во многом уступает по производительности другим ОС: см. оригинальное сообщение (автор удалил его, испугавшись резких формулировок) и копию.

Причина проблем, по словам сотрудника Microsoft, социальная. Дело в том, что разработчики не вносят в ядро таких оптимизаций, которые мы видим в мире Linux. В компании Microsoft никто не будет хвалить программиста, если он оптимизировал какой-то процесс на 5%, если это не входит в сферу его основных обязанностей. Такая оптимизация никому не интересна. Только в случае какого-то очень существенного прогресса работу программиста могут заметить в соседних командах разработки, что положительно отразится на его карьере. Но это скорее исключение, чем правило. Нет никакого стимула принимать изменения из-за пределов своей команды разработки.
Читать дальше →

КТ315 — рабочая лошадка отечественной электроники

Reading time3 min
Views140K
Хоть я и опоздал на день Радио — но о КТ315 я все-же напишу. Этот транзистор видели и паяли многие, но сегодня мы увидим, чем отличаются КТ315 выпущенные в разные годы, какова его конструкция, и сравним его конструкцию с современными зарубежными аналогами.

О производстве


КТ315 — первый транзистор, произведенный по последнему писку моды конца 60-х годов — это планарно-эпитаксиальной транзистор, т.е. коллектор, эмиттер и база изготовляются последовательно на одной пластине кремния: берется пластина кремния, легированная в тип n (это будет коллектор), затем выполняется легирование на некоторую глубину в тип p (это будет база), и затем — сверху еще раз легирование на меньшую глубину в тип n (это будет эмиттер). Далее пластину нужно разрезать на кусочки, и упаковать в пластиковый корпус.
Читать дальше →

SimplePHPEasyPlus: Складываем числа на PHP

Reading time2 min
Views39K
На ранних стадиях развития интернета, разработчикам приходилось использовать бедные, убогие языки программирования. Приходилось использовать только функции и операторы. Никаких объектов, никаких интерфейсов, никакого dependency injection!

Скажем, чтобы выполнить простую операцию сложения, нашим отцам приходилось писать: 1+1. Да, серьезно.

Но теперь-то у нас есть PHP 5.3 с отличной имплементацией ООП! Представляем библиотеку SimplePHPEasyPlus! SimplePHPEasyPlus позволит вам складывать два числа современным способом, с использованием ООП. Он быстрый, простой, гибкий и оттестированный. Чтобы добавить 1 к 1, нужно всего лишь выполнить следующее:
Читать дальше →

Почему Erlang?

Reading time6 min
Views20K
Оригинал статьи: smyck.net/2012/04/22/why-erlang

Шансы, что вы читаете эту статью на устройстве с многоядерным процесcором, растут каждый день, вот почему все постоянно говорят про параллелизм (concurrency). Параллелизм для наших web приложений и API бэкендов, это когда вывод htop выглядит примерно как на картинке:

Concurrente htop

Я недавно был на великолепной Ruby конференции и три или четыре доклада были про параллелизм. Сообщество Ruby достаточно открыто и обсуждалось достаточно много возможностей: использовать потоки, использовать различные среды выполнения Ruby, чтобы обойти GIL, использовать больше процессоров, использовать модель акторов через библиотеки как Celluloid или даже использовать Akka через JRuby.

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

Читать дальше →

Вышла вторая бета elementary OS Luna

Reading time2 min
Views32K
Round 2, Fight!

elementary OS дистрибутив основанный на Ubuntu, разрабатываемый в соответствии с концепцией минимализма интерфейсов. Целью проекта является предоставление максимально простого и удобного окружения. На практике это означает, что множетсво твиков, которые вы привылки делать сразу после установки Ubuntu тут вы найдете «из коробки».

Round 2, Fight!


Прошло долгих пять месяцев с момента релиза первой беты elementary OS Luna и мы усердно работали, чтобы сделать для вас следующую бета-версию. Elementary получил массу положительных отзывов от счастливых пользователей по всему миру. Кроме того, мы получили отзывы тестеров и их баг-репорты. Мы рады сообщить, что готовы выпустить нашу вторую бета-версию с более чем 300 исправлениями! написал в официальном блоге Cassidy James

Ссылки: 32-bit Beta 2 via Torrent или 64 bit Beta 2 via Torrent

Читать дальше →

Почему HTML считает, что «chucknorris» — это цвет?

Reading time1 min
Views124K
image

Вы никогда не пробовали задавать цвет фона в HTML при помощи разных строк? Например, строка

<body bgcolor="chucknorris"> test </body>

сделает фон документа кроваво-красным во всех браузерах и на всех платформах (jsfiddle).

Кстати, если слово chucknorri тоже приводит к красному цвету, то chucknorr дает желтый!

Стало интересно, почему так происходит? Добро пожаловать под кат.
Читать дальше →

С чего начинается устройство

Reading time5 min
Views26K
Когда смотришь различные статьи радиолюбителей о изготовлении устройств, то там обычно устройство выполняет различные функции, делает это красиво и изящно. Но в 90% случаев само устройство представляет собой сколхоженное на коленке непонятное нечто с кучей проводов. Всё это связанно как правило с тем, что люди даже не задумываются как будет выглядеть их будущее устройство.




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

Как нельзя зарядить смартфон

Reading time6 min
Views409K

Пытаемся зарядить телефон от кроны через микросхему КРЕН5А

Не так давно на хабре проскакивал пост “Когда садится батарейка”, поражающий своей неграмотностью. Всё бы ничего, но этот пост даже умудрился оказаться на главной странице, в результате его прочитало множество людей, и автор преступным образом ввёл их в заблуждение. Чтобы показать неправильность поста эксперимент был повторен с максимальной дотошностью: регистрацией токов, напряжений. Так же объясняется почему это невозможно, и что делать, если уж очень хочется заряжать телефон от батареек.
Добро пожаловать под кат.
Читать дальше →

Хостинг картинок за полчаса

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

imageНасколько просто сейчас сделать такой сервис, как хостинг изображений? В принципе, его и раньше было несложно сделать. Но прогресс не стоит на месте, и за то же самое время теперь можно учесть больше нюансов. Я уже рассказывал о проекте Uploadcare. Это сервис, позволяющий облегчить работу с файлами: загрузку, хранение, обработку и раздачу конечному пользователю. Его и будем использовать в качестве основного блока.

Пример будет написан на Питоне. Во-первых, потому что Питон я знаю лучше всего, во-вторых библиотека pyuploadcare обновляется в первую очередь. На самом деле, для Uploadcare есть библиотеки под разные языки, и все они в open source. Если в нужном вам модуле отсутствует какая-то функциональность, можно дождаться, когда она появится, или дописать самому.
Читать дальше →

За что HTML-верстальщики так не любят веб-дизайнеров

Reading time4 min
Views117K
За время своей работы верстальщиком, мне довелось иметь дело с кучей разных макетов как от новичков дизайна (или порой просто левых людей), так и до профессионалов. И за это время я успел набрать приличную выборку наиболее типичных багов в макетах, которых не в состоянии избежать даже маститые специалисты. Сразу оговорюсь — в некоторых организациях есть внутренние «требования к дизайн-макетам», и по идее, при несоответствии дизайна этим требованиям, он должен без вопросов отправляться на доработку, но реалии таковы, что зачастую проще самому внести нужные правки, чем гонять документ туда-сюда по трекеру. Но даже в этих «требованиях» упомянуты далеко не все очевидно возможные «косяки». Постараюсь привести наиболее популярные и универсальные (без личностной привязки). Да, кстати, все баги привожу под использование фотошопных psd — ну уж де-факто это стандарт в веб-макетах. Да и не попадались мне ещё макеты в векторе (и надо сказать, слава богу).
Читать дальше →

Простейший измеритель ESR электролитических конденсаторов

Reading time3 min
Views101K
Собственно, как я уже когда-то очень давно обещал, расскажу про простейший измеритель ESR. В дальнейшем буду писать не ESR, а ЭПС(эквивалентное последовательное сопротивление), поскольку лень переключать раскладку. И так, кратко, что же такое ЭПС.
Читать дальше →

Новое расширение PHP под старым названием: event

Reading time1 min
Views12K
В PEСL как-то перестали поддерживать расширения для libevent. В частности, libevent версии 2 не поддерживался ни одноимённым расширением libevent, ни расширением event(последний релиз был в 2004 году). Поэтому было решено переписать завалявшееся с 2004 года расширение «event».
Читать дальше →

Ejabberd. Защита на костылях

Reading time3 min
Views15K
image
Пролог. Я долго не решался написать эту статью. Потому как даже не являясь программистом понимаю, что приведенный код может быть проще и изящнее. Но надеюсь что статья поможет тем, кто столкнулся с такой же дилеммой, а может быть и побудит кого — то на написание более достойного скрипта. Итак, в одном городе, в некоторой компании появился джаббер сервер…
Читать дальше →

Использование моделей в Qt

Reading time4 min
Views103K
За последний год пришлось довольно много работать с Model/View фреймворком Qt. Приходилось как писать собственные модели, так и переделывать существующие. И вот, после созерцания очередного творения, решил представить общественности некоторые наработки.

Начнем с очевидного:

Не используйте виджеты

Все эти QTableWidget, QListWidget и QTreeWidget — не для вас.

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

Одни плюсы, а минусов, при этом, не замечено.
Читать дальше →

Создаем автарки в браузере с помощью вебкамеры

Reading time4 min
Views9.1K

Здравствуйте. Не так давно на одном из веб-проектов, мне понадобилась возможность получить фото с веб-камеры. Через некоторое время, на другом проекте, появилась такая же необходимость, и опять же замаячил на горизонте третий проект, с похожей функциональностью. Дабы не ходить каждый раз на html5 Rocks, и смотреть, «как там и чего», решил написать плагин.
Собственно, в данной статье я хочу представить результат своего труда: html5-webcam-avatar — jquery плагин для создания аватарок с веб-камеры.

Читать дальше →

Библиотека для упрощения HTTP-запросов

Reading time1 min
Views151K
Requests — библиотека Python, которая элегантно и просто выполняет HTTP-запросы. Теперь не нужно осваивать urllib2 с излишне сложными программными интерфейсами.

Вот как выглядит HTTP-запрос с авторизацией с помощью requests:

>>> r = requests.get('https://api.github.com', auth=('user', 'pass'))
>>> r.status_code
200
>>> r.headers['content-type']
'application/json'
Читать дальше →

Information

Rating
Does not participate
Location
Красногвардейское, Адыгея, Россия
Date of birth
Registered
Activity