Обновить
92
0
Сергей @SkyManPHP

Пользователь

Отправить сообщение

50 цитат о программировании всех времён

Время на прочтение6 мин
Просмотры164K
Перевёл после прочтения комментариев к статье «О ненависти к C++». В цитатах можно найти ответы на большинство возникших там вопросов.

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

49. Lisp — это не язык, а строительный материал.
— Alan Kay

48. Ходить по воде и разрабатывать программы, следуя спецификации, очень просто… если они заморожены.
— Edward V Berard
Читать дальше →

VLC Media Player 1.1.6 увидел свет

Время на прочтение1 мин
Просмотры749
Два месяца спустя после выхода предыдущей версии VLC 1.1.5 и после ее более, чем 58-милионного скачивания состоялся минорный релиз отличного кроссплатформенного свободного мультимедиаплеера VLC 1.1.6.

Для начала хотелось бы ознакомить с маленькими нововведениями и важными исправлениями, касающихся так же и безопасности (в частности, переполнение буфера в демультиплексоре Real). Итак, что же нового в версии 1.1.6:
список багфиксов и PPA под катом

Эволюция Python-программиста

Время на прочтение3 мин
Просмотры2.9K

Начинающий


  1. def factorial(x):
  2.     if x == 0:
  3.         return 1
  4.     else:
  5.         return x * factorial(x - 1)
  6. print factorial(6)


Программирующий уже год (Ранее изучавший Pascal)


  1. def factorial(x):
  2.     result = 1
  3.     i = 2
  4.     while i <= x:
  5.         result = result * i
  6.         i = i + 1
  7.     return result
  8. print factorial(6)

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

Что стоит за номером «кредитки»

Время на прочтение1 мин
Просмотры9.6K
Прежде всего о терминологии. То, что в России часто называют кредиткой — является банковской (чаще всего) платёжной картой. Карты выпускать может не только банк. Карты могут быть не только кредитные. Вобщем, теорию вы и сами сможете найти.

А теперь, собственно, инфографика о том, как устроены номера банковски карт (600*1800px 280KB):

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

Выпуск Wine 1.3.11

Время на прочтение1 мин
Просмотры622
Wine — это свободное программное обеспечение, позволяющее пользователям UNIX-подобных систем исполнять приложения Microsoft Windows.
Что нового в версии Wine 1.3.11:
  • для перевода используются теперь PO-файлы
  • некоторые улучшения в обработке JavaScript
  • некоторые исправления отладчика Wine
  • обновления перевода
  • другие различные исправления (см. ниже).

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

Определение местоположения по mac адресу роутера

Время на прочтение1 мин
Просмотры172K
image

1. Узнаем MAC–адрес WiFi роутера, через который вы выходите в интернет. (Через веб–интерфейс, дать arp–запрос «arp -a», посмотреть на обратной стороне девайса.)

2. Заходим по адресу samy.pl/mapxss

3. Вбиваем в текстовое поле MAC–адрес и жмем «Search MAC».

Как это работает?
Читать дальше →

Мошенничество с использованием пластиковых карт

Время на прочтение3 мин
Просмотры504K
Ещё один сценарий мошенничества с использованием пластиковых банковских карт. Наиболее уязвимы карты Сбербанка, пригодные для платежей в интернете — начиная от Visa Classic и MasterCard Standard. Владельцы «зарплатных» Maestro и прочих Momentum данному приёму не подвержены.
Читать дальше →

Еще один вид СМС-мошенничества — доведение до белого каления

Время на прочтение1 мин
Просмотры1.9K
Всплыл сегодня еще один вид смс мошенничества, основанный на социальной инженерии

Ситуация развивается по следующему сценарию:
— с некоего номера (не короткого, простого сотового номера, в случае о котором я веду речь — "+7 916 100 09 73") начинают приходить СМС;
— СМС с одним и тем-же текстом — конкретно «значение датчика объёма больше нормы». Вроде безобидный текст, наводящий на мысль что кто-то где-то ошибся и вбил номер жертвы в какой-то системе уведомления;
— Но! СМС приходит день, два, три каждые минут 10-15, что с вероятностью 100% доводит владельца телефона до белого каления

Что сделает владелец телефона в данной ситуации? Позвонит по обратному номеру или отправит туда СМС с текстом «сколько можно!», верно? Думаю да. Так вот либо после звонка на этот номер (на том конце — тишина), либо после смски в его сторону (безответной, естественно) итог — минус 500 рублей на счету!

UPD: значит так, ситуация разъяснилась, я сейчас наверно соберу всю плохую карму с форума но все же наберусь смелости сказать как есть:
Читать дальше →

Визуализация работы веб-сервера Apache — logstalgia

Время на прочтение1 мин
Просмотры15K
image

Logstalgia скорее порадует разработчиков и системных администраторов, которые много времени проводят на «заднем дворе» сайтов, но сам результат работы программы очень красив и видео будет интересно посмотреть всем. Данная программа визуализирует работу веб-сервера Apache используя log-файлы. По ссылке видео, а саму программу можно скачать по здесь.

Linux против Windows в школьном образовании

Время на прочтение1 мин
Просмотры5.5K

Кстати, этот «лучший преподаватель», заявляет, что Linux не пойдет на оборудовании.
На видео видно, что школьники работают на iMac'ах. На которые установлена Windows.
Какая проблема в инсталляции Linux на iMac и почему там не оставили оригинальную MacOS — вопрос остается открытым.

Google запустил русскоязычный голосовой поиск

Время на прочтение1 мин
Просмотры30K
Сегодня компания Google анонсировала запуск русскоязычного голосового поиска.
Поиск доступен во всех основных сервисах: основной поиск, поиск организаций, поиск картинок.
Система распознает слитную русскую речь.



«Какова длина трансиба».
Пробуем. Оставляем отзывы.

PS. Скоро Google обещает корректную работу с акцентами, а пока… — «eleven»

Восстанавливаем флешки

Время на прочтение4 мин
Просмотры907K
Хотя со временем флешки становятся все дешевле и объемнее это не значит, что при любом сбое ее можно выбросить и приобрести другую. Хотя многие именно так и делают, даже на задумываясь о том, что ситуацию еще можно спасти. В свое время мы тряслись за каждую флоппи-дискету, почему же не поковыряться и с флешкой, чтобы дать ей вторую или даже не третью жизнь. Думаю, у многих в столе рядом с компьютером найдется какая-нибудь «мертвая» флешка-брелок, которую выбросить жалко из-за того, что она красивая или, хотя бы потому, что какое-то время назад она была полезна. Конечно, иногда флешки «умирают» раз и навсегда, но зачастую они находятся в состоянии «клинической смерти», а как известно, такое состояние обратимо.

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

CS5. Русские хелпы

Время на прочтение1 мин
Просмотры4.3K
На сайте Адоби потихоньку появляются русские хелпы. Вот что нащупал:

dreamweaver_cs5_help.pdf
fireworks_cs5_help.pdf
flash_cs5_help.pdf
illustrator_cs5_help.pdf
indesign_cs5_help.pdf
photoshop_cs5_help.pdf

Спать мало, но правильно?

Время на прочтение7 мин
Просмотры906K
Навеяно этим постом от юзера case. Пост не новый, и на главную он не попал.
Но я вот наткнулся на него сегодня и решил написать кое-что о сне. Уверен, что это будет полезно многим хабравчанам, да и случайным читателям тоже.
Читать дальше →

Скан-код: Ремаппинг клавиш на клавиатуре

Время на прочтение3 мин
Просмотры110K

Предыстория


Всю свою жизнь был фанатом бесшумных, тонких, и красивых клавиатур и к моему удивлению обнаружил что таковых не так уж и много, из доступных в свободной продаже, — их единицы. Пришлось пользоваться «Genius SlimStar Pro», и все равно она меня угнетала, как и мысль о том, что я никогда не найду клавиатуру которая бы удовлетворяла меня на все 100%. Я такую нашел и по рекомендации товарища Boomburum, приобрел "Illuminated Keyboard", которая стала достойной подругой моей "MX Revolution", и я окончательно порвал отношения с Genius, а последние рассказы о поддержке пользователей со стороны Logitech, убедили меня, что вложенные (не малые деньги) себя оправдают за 3 гарантийных года.
image
Но есть небольшая беда в клавиатурах этой компании, — "Не стандартные, не удобные, или не нужные расположения некоторых кнопок". В случае с Illuminated, это две одинаковые кнопки "\", левая из которых пошла в ущерб клавише «LShift», Кстати на картинке вы можете заметить что раньше эти клавиатуры имели стандартный размер «LShift». Под катом, я расскажу как вернуть «стандартную длину» этой кнопки, так как в слепой печати и в силу привычки, я нажимаю именно / вместо шифта. А заодно расскажу как без дополнительного установленного ПО, на примере, вы сможете менять назначения любых клавиш ваших клавиатур (в том числе и функциональных/медийных) при помощи Реестра и Скан-кода клавиш.
Читать дальше →

IT-Украина: Осторожно, двери закрываются!

Время на прочтение2 мин
Просмотры2.6K
Действующая власть планирует с нового года поставить вне закона фриланс в Украине, сделать рынок аутсорсинга неконкурентоспособным, и заодно поставить жирный крест на всяких там интернет-стартапах. С помощью проекта Налогового Кодекса, который задумано ввести в действие уже с января следующего года.

Планируется вывести из упрощенного режима налогообложения очень широкий список видов деятельности, в частности:
  • деятельность в сети интернет
  • внешнеэкономическую деятельность
  • рекламную деятельность
Читать дальше →

Как не надо покупать на Ebay

Время на прочтение6 мин
Просмотры212K
В связи с обещанием открыть полноценный русскоязычный сайт EBay на хабре появились хорошие посты о том, как покупать надо, например:

Советы из личного опыта от olyapka,
Как правильно покупать от darbin.

У людей был удачный опыт покупок, и они им делятся. Я делюсь своим негативным опытом, чтобы другие пользователи поняли: сложного в покупках ничего нет, но лишняя осторожность все-таки не повредит. Всегда ведь лучше учиться на чужих ошибках, а не на своих!
Семь ошибок по порядку

Мой удобный дом

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

То есть, умный дом — это дом, который может все. А удобный дом — это дом, который все, что может, делает сам.

Давайте сначала я просто похвастаюсь тем, что умеет мой дом сейчас, а вы решите, имеет ли смысл читать про мой местами горький (а местами очень даже ничего) опыт дальше, ок?
Читать дальше →

Пишем, собираем и запускаем HelloWorld для Android в блокноте

Время на прочтение10 мин
Просмотры131K


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

По-сути эта статья является переводом и переработкой статьи Building Android programs on the command line под современные на данный момент JDK (7) и Android SDK (API level 19). Кроме того, я многое упростил и добавил кое-что от себя.

Используя только блокнот, мы напишем совсем маленькое учебное Android-приложение. А затем скомпилируем его, соберём и запустим на устройстве — и всё через командную строку. Заинтересовало? Тогда прошу.
Читать дальше →

Отказываемся от коллбэков: Генераторы в ECMAScript 6

Время на прочтение6 мин
Просмотры34K
Я постоянно слышу людей, ноющих об асинхронных коллбэках в JavaScript. Держать в голове порядок исполнения в этом языке немного трудно (это тот случай, который называют «Callback Hell» или «The Pyramid of Doom»), если до этого ты имел дело с синхронным программированием. Моим обычным ответом было «тебе придется как-то с этим обходиться». В конце концов, ожидаем ли мы, что все языки программирования будут выглядеть и ощущаться одинаково? Конечно нет.

Все поменял недавний обзор черновика ECMAScript 6, в котором описываются генераторы — возможность языка, которая целиком изменит наш способ написания и серверного, и клиентского JavaScript. С помощью генераторов мы можем превратить вложенные коллбэки в похожий на синхронный код без блокирования нашей единственной event loop.
Например, этот код:
    setTimeout(function(){
        _get("/something.ajax?greeting", function(err, greeting) {
            if (err) { console.log(err); throw err; }
            _get("/else.ajax?who&greeting="+greeting, function(err, who) {
                if (err) { console.log(err); throw err; }
                console.log(greeting+" "+who);
            });
        });
    }, 1000);

может быть написан так:
    sync(function* (resume) {
        try (e) {
            yield setTimeout(resume, 1000);
            var greeting = yield _get('/something.ajax?greeting', resume)
            var who = yield _get('/else.ajax?who&greeting=' + greeting, resume)
            console.log(greeting + ' ' + who)
        }
        catch (e) {
            console.log(e);
            throw e;  
        } 
    });

Интересно, не правда ли? Централизованная обработка исключений и понятный порядок исполнения.
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Украина
Зарегистрирован
Активность