Я знаю PHP. Не просто знаю, а действительно знаю. Не только синтаксис, или идиомы и особенности, но еще и почему — почему что-то работает именно так как оно работает, понимаете, под капотом. И скорее всего я тем или иным образом принимал участие в принятии того или иного решения. Все таки, тринадцать лет с языком — это долгий срок. Но я работал не только с PHP.
Рубрика «Программирование» - 987
Изучая Rails (ну, и Ruby)
2013-05-12 в 12:37, admin, рубрики: learning, php, ruby, ruby on rails, Программирование, разработкаБыстрый перевод больших списков на примере регионов мира
2013-05-12 в 10:07, admin, рубрики: php, Программирование, метки: PHP Понадобилось мне перевести список регионов мира на русский. Подобные списки с ISO-кодами встроены во многие CMS и интернет-магазины, и их перевод вручную — занятие зело неблагодарное. На русском я ничего подобного не нашел, да это не сильно помогло бы, поскольку нужно сопоставить названия на английском с названиями на русском. В итоге родилась простенькая идея быстрого перевода подобных списков, которой я хочу поделиться — вдруг кому-то тоже пригодится.
Читать полностью »
Чему ИТ-индустрия научилась у Линуса Торвальдса?
2013-05-12 в 8:39, admin, рубрики: linux, linux foundation, open source, джим землин, Линус Торвальдс, Программирование, ядро Linux 
Джим Землин (Jim Zemlin), исполнительный директор Linux Foundation, наверное, один из тех немногих людей, кто был в гуще событий при появлении и развитии Linux, крупнейшей совместной разработки в истории вычислительной техники. Он понимает, что скорость инноваций и качество разработки ПО диктуется теми, кто смотрит вперёд и работает в сотрудничестве друг с другом. Вот почему он был пригашен на недавний TEDx, с рассказом о том, чему ИТ-индустрия научилась у Linuх и особенно у основателя этого проекта Линуса Торвальдса (Linus Torvalds). Читать полностью »
Как я писал робота для квазиарбитражной торговли биткоинами
2013-05-11 в 22:58, admin, рубрики: bitcoin, BTC-E, MtGox, ruby, алгоритмическая торговля, Программирование, Финансы для всех, метки: bitcoin, BTC-E, MtGox, алгоритмическая торговля 
Месяц назад, когда цена биткоина достигла 250 долларов, а затем упала до 50, у меня появилось желание поучаствовать в этом веселье, написав торгового бота, который бы зарабатывал на подобных изменениях.
Выяснилось, что две наиболее популярные биржи, на которых торгуют биткоинами — это MtGox и BTC-e. Я положил деньги на одну из них и принялся думать, как предсказать изменение цены, а также, как это автоматизировать. Дело осложнялось тем, что на этих биржах можно покупать и продавать только на свои средства, поэтому нельзя играть на понижение, занимая короткую позицию, потому что, как говорил Матроскин: «Чтобы продать что-нибудь ненужное, нужно сначала купить что-нибудь ненужное».
Читать полностью »
Не бывает «чистых» программистов
2013-05-11 в 10:53, admin, рубрики: ruby, ruby on rails, говнокодеры, новички, Программирование, профессионализм, разработка, разработка сайтов
С появлением Ruby on Rails уровень технических знаний необходимых для создания веб-приложений понизился. Становятся ли знания и опыт менее критичными?
Я думаю, Ruby on Rails очень сильно понизил планку в терминах «что нужно для того, чтобы запустить веб-приложение». Некоторые видят в этом только отрицательную сторону. В духе, «Ой, варвары у ворот» или «Ну вот, сейчас все эти немытые дикари хлынут в наши замечательные программистские сообщества». Я уже не раз слышал такое. Многие ругали Visual Basic за что, что он открыл двери для, так называемых, «не чистых» программистов. Я думаю, все это — чушь собачья.
Отличный способ научиться оценивать работу на проекте
2013-05-10 в 13:30, admin, рубрики: agile, оценки, Программирование, разработка, метки: оценкиНи для кого не секрет, что лучший способ научиться что-то хорошо делать — это постоянная практика. Так же обстоят дела и с оценками работы на проекте. Но мало просто оценивать. Надо потом отслеживать реальный результат, анализировать его и делать выводы, чтобы ваша методика оценивания постоянно совершенствовалась. Без этого важного компонента вы никогда не научитесь оценивать классно. Но что если найти некий способ тренироваться в оценках «на кошках»? Причем, как можно чаще и интенсивнее. О таком способе и пойдет речь в статье...Читать полностью »
Почем оптимизация или «бесплатных завтраков не бывает»
2013-05-10 в 11:16, admin, рубрики: javascript, ненормальное программирование, оптимизация, Программирование, профит, метки: javascript, оптимизация, профитToday's software engineering word is «farpotshket.» This is a Yiddish word meaning, «broken, because someone tried to fix it.»
(с) Andr Zerozero
Схлеснулись мы тут на днях на работе по вопросу «А хорошо бы закешировать регулярку», в совершенно банальной функции
uncached = function(data_in) {
return /_(d)+(?:#(d)+)?$/.exec(data_in);
};
сделав как-то так
cached = (function() {
var pattern = /_(d)+(?:#(d)+)?$/;
return function(data_in) {
return pattern.exec(data_in);
};
})();
Идея популярная, но многие ли задумывались о реальном профите и накладных расходах?
Читать полностью »
Как упростить жизнь программисту при отрисовке графиков в прямоугольной система координат
2013-05-10 в 6:35, admin, рубрики: Delphi, новичкам, Песочница, Программирование, метки: Delphi, новичкам, ПрограммированиеХабрет, читателям!
Не долго думая решил поделиться очень простым способом облегчить себе программерскую жизнь.
Иногда математические знания заложенные в школе запутывают начинающего программиста, что открыв исходник написанный несколько недель назад с трудом вспоминаешь что к чему.
Например, нам нужно нарисовать график какой нибудь функции на элементе Image1 с помощью Canvas. Для определения координат пикселя в современных языках программирования отсчет начинается из верхнего левого угла холста. А что, если нужно отрисовать точку на плоскости используя прямоугольную систему координат (далее ПСК). Система координат имеет горизонтальную ось абсцисс, вектор луча которой направлен слева направо и вертикальную ось ординат — снизу вверх. Это очень усложняет определение привычных для нас координат точек на графике, особенно при кодинге с большим количеством взаимозависимых переменных.
Дабы не запутаться в коде я решил написать функцию…
Читать полностью »
Apache Thrift RPC Server. Дружим C++ и Java
2013-05-10 в 6:05, admin, рубрики: c++, java, linux, thrift, Программирование, метки: c++, java, linux, thrift Привет, коллеги.
Хочу в этом топике выложить инструкцию, как быстро прикрутить Thrift, к своим поделкам.
Thrift — технология для организации межпроцессного взаимодействия между компонентами системы. Была разработана где то в недрах Facebook. Посути это кросс-языковой фреймворк для создания RPC сервисов, на бинарном протоколе. С помощью этого решения можно «подружить» компоненты написанные на разных языках C#, C++, Delphi, Erlang, Go, Java, PHP, Python, Ruby, итд. Описание сигнатур сервисов и данных осуществляется с помощью специального IDL — языка. Технология, по своей сути, похожа на COM, но без всей этой обвязки с регистрацией компонент. Так же не будем забывать, что COM это технология только для Windows, в то время как Thrift — кросплатформенна.
Вобщем решил поэкспериментировать, попробовать вынести часть нагруженной-вычислительной логики из Java в С++, в надежде что нативный С++ код будет немного производительней, и за одно опробовать Thrift RPC, в надежде что это быстрее чем REST.
Как и положено, без бубнов и граблей не обошлось!
Читать полностью »
Программисты не пишут программы день напролет
2013-05-10 в 5:04, admin, рубрики: coding, Блог компании Intel, Программирование, разработка 
Недавнее исследование показало то, что и так не является секретом для большинства разработчиков: написание кода занимает лишь часть рабочего времени.
Например, помимо разработки, они пьют кофе :)
Недавнее исследование на тему того, как разработчики тратят свое рабочее время, показало, что программисты проводят большую часть времени НЕ занимаясь написанием кода. Компания Eric Cloud опросила 443 разработчика ПО и выяснила, что в среднем, они расходуют менее половины рабочего времени на «разработку и кодирование». Большая же часть времени расходуется на такие вещи, как: брейнcторминг, административные задачи, управление окружением и тестирование.
Читать полностью »
