Pull to refresh
71
0
Алексей @foxweb

Оператор ЭВМ

Send message

Программирование: Практики которые я возьму с собой

Reading time3 min
Views4.3K
Я имею довольно небольшой опыт работы в сфере разработки программного обеспечения (всего 6 лет), но я уже накопил ряд полезных и правильных практик (по моему скромному мнению), которые можно использовать при создании программного обеспечения.

В основном описаны моменты которые касаются поддержки процесса разработки программного обеспечения, не затрагиваются темы планирования хода выполнения работ. Также не затронут процесс программирования и полезные плюшки для него (например расслоение системы на уровни, использование шаблонов проектирования). Но все ниже приведенное было и остается полезным для меня лично, и я буду рад если и вам на что нибудь сгодится :)
Читать дальше →

Стив Макконнелл

Reading time3 min
Views146K
Стив МакконеллВ прошлый раз мы познакомились с выдающимся человеком Пол Грэмом, который написал одни из лучших статей о стартапах, программировании и бизнесе. Сегодня я хочу рассказать вам о такой выдающейся личности, как Стив Макконнелл.

Интересно, что в далеком 1998 году читатели журнала «Software Development» признали Стива одним из трех наиболее влиятельных людей в отрасли разработки ПО наряду с Биллом Гейтсом и Линусом Торвальдсом.

Если говорить коротко, то Steven C. McConnell — программист и автор книг по разработке ПО.

Он написал книги «Rapid Development» (1996), «Software Project Survival Guide» (1998), «Professional Software Development» (2004). Журнал «Software Development», кстати, дважды удостоил его книги премии Jolt Excellence как лучшие книги года о разработке ПО.

Кстати, вы наверняка слышали фразу «Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете». Так вот, эту фразу приписывают именно Стиву.

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

Создаем робота в домашних условиях

Reading time8 min
Views204K

Наверняка, насмотревшись фильмов про роботов, тебе не раз хотелось построить своего боевого товарища, но ты не знал с чего начать. Конечно, у тебя не получится построить двуногого терминатора, но мы и не стремимся к этому. Собрать простого робота может любой, кто умеет правильно держать паяльник в руках и для этого не нужно глубоких знаний, хотя они и не помешают. Любительское роботостроение мало чем отличается от схемотехники, только гораздо интереснее, потому что тут так же затронуты такие области, как механика и программирование. Все компоненты легкодоступны и стоят не так уж и дорого. Так что прогресс не стоит на месте, и мы будем его использовать в свою пользу.

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

ProFORMA: Объекты в 3D через Веб-камеру

Reading time1 min
Views9.2K
ProFORMA: Probabilistic Feature-based On-line Rapid Model Acquisition
Пан Ки(Pan Qi), аспирант Университета Кембриджа, разработал интересный метод моделирования объектов с помощью веб-камеры.
image
Слева направо: (A) Вращаем объект рукой перед камерой. (B) Образование облака точек полученного из структуры оценки движения. (С) Триангуляция Делоне из облака точек, образование выпуклого объёма из тетраэдров. (D) Сетка покрытия получаемая из возможной рекурсии тетраидальной разметки. (E) Текстурирование отображенной поверхности сетки.
Читать дальше →

Micro Men — история Клайва Синклера как памятка новым поколениям

Reading time2 min
Views2.2K
imageПомнишь ZX-Spectrum, хабрачеловек?

Вот и англичане тоже помнят, да так помнят, что сняли художественный фильм по мотивам великого бума домашних ПК в UK, случившегося в период 1980-1984 г.

Заказ на производство от BBC, анонс в таблоиде The Guardian, премьера 8 октября 2009 г. на канале BBC Four (с охватом аудитории 1.4 млн. зрителей) и последующие одобрительные рецензии (тысячи их), как бы четко намекают нам: «Смотреть немедля!».

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

Дополненная реальность на обложке газеты «F5»

Reading time1 min
Views1.2K
Привет!

Я работаю в небольшой, но очень амбициозной и прогрессивной российской компании REDMADROBOT. Совсем недавно, на этой неделе был завершен проект по разработке дополненной реальности для обложки не менее прогрессивной газеты про интернет — «F5».

image

В этом посте хочется рассказать побольше про этот проект.

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

Дао Вебсервиса. (Или да хватит же изобретать велосипеды!)

Reading time12 min
Views59K
image Недавно на Хабре была опубликована статья под провокационным заголовком и призывом к прекращению изобретений велосипедов в API-строении. Поскольку тема мне интересна, то я просто не мог пройти мимо.
Увы, реальность за хабракатом меня сильно разочаровала — я увидел очередной велосипед, да еще и с квадратными колесами. (Коллеги, ничего личного, только техническое обсуждение.) Правда, авторы честно сказали, что увидели на нескольких сайтах модное слово REST и решили сделать по нему. Только вот поняли они этот «РЭСТ» по-своему, примерно как Дед Щукарь читал и понимал толковый словарь.
В этом топике я призываю по-настоящему покончить с велосипедами в API сайтов. Ведь получается какой анекдот: АПИ разрабатывается для упрощения доступа к сайту и легкости подключения внешних систем, а получается такой, что с ним еще сложнее, чем без него :)

Чуть ниже под катом я подпишу смертный приговор всем велосипедам в универсальных API. Чтобы не быть голословным, я все проиллюстрирую примерами.
Но должен предупредить сразу — после прочтения статьи вы не сможете без рвотного рефлекса смотреть на очередной велосипед Васи Пупкина под гордым названием «универсальное API сайта».

В повествовании будут рассмотрены следующие вопросы:
  1. Базовые технологии: XML-RPC, REST, SOAP и краткое сравнение
  2. Дао вебсервиса
  3. Просветленные API
  4. Как отличить сайтовое API от говна
  5. Выводы

Кто не испугался суровых реалий - вперед

Униполярный двигатель

Reading time1 min
Views39K
image
Для создания простейшего униполярного двигателя нам понадобятся:
  • Батарейка «АА»
  • Плоский круглый неодимовый магнит (например, можно из наушников вытащить)
  • Медная проволока

Под катом инструкция и видео демонстрирующее процесс сборки и результат.
Читать дальше →

PHP модуль — это просто

Reading time3 min
Views20K
Недавно мы опубликовали визард для VisualStudio, с помощью которого можно создать экстеншн в пару кликов мыши. Теперь с помощью него мы напишем наши два первых расширения: «Привет, мир» и «вытащим иконку из exe».
Сразу прошу прощение, что очень сильно задержал статью, но жизненные обстоятельства вынудили это сделать, но они исключительно уважительные.



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

Пользовательские расширения для Extjs

Reading time1 min
Views1.7K
imageКаждый раз, когда я ищу информацию в сети по extjs, нахожу что-то новенькое и интересное, что можно с легкостью интегрировать в проект на extjs.
Сегодня день особенный, так как я нашел не инструмент, а целый репозиторий пользовательских расширений. Появился он еще в 2008 году*. Может я его и замечал раньше, но видимо он тогда еще не обладал таким изобилием расширений, какое можно наблюдать сейчас.

Что бы все были в курсе, приведу список мест, где потенциально могут прятаться пользовательские расширения, которые могут вам пригодиться.
Огласите весь список, пожалуйста...

15 советов по Ubuntu для опытных пользователей Linux (перевод)

Reading time7 min
Views40K
Оригинал статьи на английском. Перевод: Boten, Deniska, MaxElc

Несколько дней назад я (здесь и далее — автор оригинальной статьи — Прим. пер.) написал о книгах, которые могут скачать начинающие пользователи, и прочитать их, чтобы изучить Linux самостоятельно. Сегодня в секции о Linux у нас есть кое-что и для опытных пользователей. Перед вами несколько советов, которые вы должны попробовать, если вы опытный пользователь Ubuntu Linux
Читать дальше →

Ностальгия: «Ящеры» на батнике

Reading time3 min
Views6.5K
Все мы помним свой первый компьютер, а если вы программист, то и первую программу. Первым компьютером у меня был ZX-Spectrum, а первой написанной под него программой была игрушка «Ящеры» на Бейсике. Ну, если быть честным, то я ее просто переписал из одной книги1, попутно разбираясь в коде и исправляя допущенные автором ошибки :)

2.jpg - Picamatic - upload your images

Решил я дать вторую жизнь вышеуказанной игрушке. Но переписать ее на любом из известных мне языков было бы слишком просто. А так как я люблю писать батники, то переписал я ее на последних :)

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

Как сделать сайт более iPhone-совместимым за 5 шагов

Reading time2 min
Views55K
Тот факт, что iPhone предлагает наиболее развитый мобильный браузер среди мобильных платформ, пожалуй, ни у кого не вызовет сомнений. Однако не все знают, что довольно небольшими усилиями можно сайт сделать еще более дружественным к тем, кто смотрят его на iPhone или iPod Touch.

Ниже предлагаются простые 5 шагов, с которых можно начать, на примере сайта WHOIS Digger.

Шаг 1. Аналог favicon.ico

Когда пользователь создает ссылку на ваш сайт в виде иконки в SpringBoard, iPhone автоматически формирует картинку из скриншота страницы. В результате почти всегда получается неразборчивая каша, которая на гордое звание «иконки для iPhone» никак не тянет. Пропишите этот тег в заголовке страницы:

<link rel="apple-touch-icon" href="res/iphone_icon.png" />

и добавьте соответствующую картинку res/iphone_icon.png размером 57х57 пикселов. iPhone сам добавит скругленные углы и полукруглый блик, сделав вашу иконку похожей на остальные.

Вот так выглядит исходная картинка и иконка на рабочем столе iPhone:


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

Wi-Fi точка доступа с WPA на базе EEE 701

Reading time3 min
Views6.5K
Решил подыскать себе беспроводной роутер с возможностью установки дополнительного ПО. Сразу же вспомнил про ASUS WL-500gP и ему подобные. Но т.к. 3к не лишние, да и зуд в одном месте имелся, взялся настраивать все на базе нетбука ASUS EEE 701 (он у меня остался без дисплея, поэтому его нежалко использовать в качестве роутера).
Начал я с того, что припаял внешнюю антенну, вместо одной из внутренних в ЕЕЕ.

Я выбрал FreeBSD 8.1, т.к. в плане поддержки железа, не требовалась установка дополнительных драйверов, в отличие от предыдущих версий фряхи.
Читать дальше →

Полноценный доступ ко всем Linux-файловым системам в Windows 2000/XP/Vista/7 с помощью coLinux

Reading time5 min
Views116K
В данной статье я расскажу вам, как получить практически полноценный доступ для чтения и записи ко всем файловым системам, используемым в Linux (Ext2/3/4, ReiserFS, XFS, JFS, etc) из-под сабжевых операционных систем. Статья является вольным переводом данного руководства, причем написано оно уже довольно давно, но догуглился я до него только сейчас. :)
Читать дальше →

Работа с базовой анимацией на iPhone

Reading time5 min
Views2.1K
Одна из привлекательных особенностей интерфейса Cocoa Touch — упрощенная работа с анимацией. В этом уроке я покажу пару простых примеров создания анимации для iPhone. Наша анимация будет выполнять две задачи: перемещать объект на экране и менять его размеры в зависимости от точки касания его пользователем.

Тем, кому еще не приходилось заниматься программированием на iPhone, полезно будет ознакомится с азами здесь, здесь и здесь. В качестве примера приведу также урок из серии Stanford iPhone Development (английский язык), где рассматривались основы анимации движения.

Ниже выложено короткое видео приложения, которое нам предстоит создать. Как уже упоминалось выше, с ним можно делать две вещи. Один щелчок будет перемещать внутреннее представление к точке касания. При двойном касании представление будет перемещаться с изменением размеров. Ориентируясь на точки касания, приложение создавать прямоугольник с фреймом для представления.



Что ж, приступим…
Читать дальше →

Кручу-верчу, взлететь хочу

Reading time1 min
Views1.1K
Создать эту сборную солянку меня частично сподвиг вчерашний пост про кубика Рубика. Думаю, для развития темы и продвижения в массы пойдет…

image

Я не понимаю, что сподвигает людей на ТАКИЕ действа — может быть излишки свободного времени, или желание выделиться из серой толпы, или… но в любом случае, смотрится это действительно крайне впечатляюще!!!
Читать дальше →

MySQL Profiler: простой и удобный инструмент профилирования запросов

Reading time2 min
Views47K
Сегодня был неожиданно удивлен, какие удобные штуки таит в себе MySQL. ;-)

Хочу представить вашему вниманию фичу MySQL — профайлинг.
Появилась она начиная с версии 5.0.37.

Всего парой запросов можно узнать, какими запросами формируется страница (для веб-девелоперов)
и почему она тормозит.

И раньше подобный функционал был доступен, но пользоваться журналом запросов не в пример сложнее.

Итак, как пользоваться:


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

Пример построения неблокирующего веб-приложения

Reading time7 min
Views5.7K
За последнее время видел пару хабратопиков (раз, два), в которых описывается использование неблокирующих сокетов и событийно-ориентированного программирования в вебе. Хочу поделиться своим опытом создания веб-приложения на этой технологии.

Недавно захотел создать свой сервис проверки номеров ICQ на невидимость. Алгоритм проверки старый и известный, но до сих пор работающий — отправка специально сформированного служебного сообщения и анализ ответа сервера. Необходимо было держать несколько постоянных подключений к серверу ICQ, а также иметь веб-интерфейс для запросов на проверку. Очевидное решение — создание демона, который создает несколько потоков для ICQ-соединений, и как-либо получает команды от веб-приложения, использующего несколько процессов-воркеров (или на preforked архитектуре) — для возможности обрабатывать http-запросы от нескольких клиентов. Но я решил освоить новую для себя технологию и сделать приложение, поддерживающее несколько соединений и отвечающее клиентам, используя всего лишь один поток.
Читать дальше →

Вахтёр: на страже системы

Reading time2 min
Views4.1K
«Однажды, в студёную зимнюю пору,
Залили на сервер бэкдорчиков гору...»


Народное админское творчество



Вобщем как то раз на одном из серверов обнаружился php-shell, через который злобные хакеры поломали уютный дневничок™ хорошего человека.
После двухчасового ковыряния в логах Апача нашлась дыра, через которую залили шелл.
Дыру прикрыли, дневничок вернули к жизни из бэкапов, и сели думу думать.
Ну, рассказывай уже, чего удумал...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Database Developer
Senior
From 5,000 $
Ruby
Ruby on Rails
PostgreSQL
Git
Linux
OOP
Docker
RabbitMQ
Elasticsearch
Apache Kafka