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

Оператор ЭВМ

Send message

Директор Linux Foundation: не нужно обижать Microsoft

Reading time2 min
Views3.2K
Линус Торвальдс начал разработку ядра операционной системы в апреле 1991 года, с тех пор прошло ровно двадцать лет — и вот сейчас битва окончена, сказал в интервью по поводу грядущего юбилея Джим Землин (Jim Zemlin), исполнительный директор Linux Foundation.

За исключением только десктопов, операционная система Linux уже вышла в лидеры на всех рынках, включая серверы, мобильные системы, суперкомпьютеры и т.д. «Я думаю, больше нам не нужно так сильно опасаться Microsoft, — говорит Землин. — Раньше они были серьёзным соперником, но сейчас это словно пинать щенка».
Читать дальше →

Идея. Бесплатный государственный хостинг

Reading time1 min
Views2.4K
Ввиду того, что Дмитрий Анатольевич активно занимается развитием информационных технологий в России, у меня встал вопрос — почему бы не создать бесплатный государственный облачный хостинг?

Расходы ничтожно малы (относительно того же проекта «Сколково»), а эффект каков!

Создаётся три шаблона: «Студент», «Малый бизнес», «Для дома».
«Студент» и «Для дома» — запрещается использовать для коммерческих целей, только для экспериментов, личных сайтов и бесплатных сервисов. Вырос во что-то большее — переезжай.
«Малый бизнес» — ограничение ставится по трафику. Например, если трафик перешёл за 1ТБ в месяц, значит фирма легко может позволить себе сервер.

Домен в зоне .ru/.su/.рф бесплатно каждому.

Идентификация по паспорту или по этим новым карточкам.

Ну, основная цель, на мой взгляд, не фирмы, а студенты.
Получить хороший инструмент для реализации своих идей бесплатно — это же здорово!

За последние годы я общался со многими ребятами, которые откладывали запуск своих маленьких стартапов из-за проблем с размещением. Мол, нет средств на нормальный хостинг/сервер.
Ради Бога, вспомните, сколько полезных сайтов начинали жизнь с бесплатных хостингов!

Простите за сумбур. Давайте обсудим :)

Bundler — менеджер для управления gem'ами

Reading time5 min
Views79K

Что такое Bundler?


Это менеджер для управления зависимостями gem'ов в ruby приложениях. Эта утилита позволяет легко устанавливать необходимые gem'ы для вашего приложения, при этом вовсе не зависеть от установленных в системе. Если вы использовали Rails для своих разработок, то вы вспомните, как задавали зависимости gem'ов c помощью config.gem в enviroment.rb, Bundler решает эту задачу намного удобнее и проще. Его включили в Rails 3.0 по умолчанию и теперь, именно он используется для управления зависимостями gem’ов в данной версии фреймворка. Эту утилиту можно использовать для любого ruby фреймворка.
Читать дальше →

Определите свое местоположение по WiFi сети

Reading time1 min
Views7.6K
Простой скрипт. Определяет местоположение. Вы должны работать через Wifi.

iwlist wlan0 scan | sed -n 's/.* Address: //p;T;s/ //g;q' |
sed 's/.*/{version:1.1.0,host:maps.google.com,request_address:true,address_language:'${LANG/.*/}',wifi_towers:[{mac_address:"&",signal_strength:8,age:0}]}/' |
curl -sX POST -d @- www.google.com/loc/json |
sed -e 'h;s/.*latitude":\([^,]*\).*/\1/;G;s/\n[^\n]*longitude":\([^,]*\).*/,\1\n/;s|^|http://maps.google.com/maps?q=|;x;s/[,{]/\n/g;s/["}]//g;s/:/\t/g;s/\n//;G'

Не забудьте поставить curl.

В моем случае правильно определил город и улицу, ошибся с номером дома на 4.

Как это работает? Google собирает информацию о том, где расположены какие точки доступа (по MAC).
Первая часть (iwlist wlan0 scan | sed -n 's/.* Address: //p;T;s/ //g;q' ) — это просто определение мака.

Переписываем проект с Zend Framework на Rails

Reading time9 min
Views7.9K
Около пяти месяцев назад я завязал с zend framework и пересел на рельсы. Тогда же начал переписывать свой проект www.okinfo.ru. Сейчас он уже закончен и sloccount показал что количество строк в проекте уменьшилось с 15000 до 4000. Мои знакомые php разработчики попросили success story и в итоге родилась эта статья. В ней я опишу как оно было, а так же немного расскажу о своем переходе на ruby.
Читать дальше →

Как хороший договор спасает нервы и монетку

Reading time14 min
Views62K
Договоры, отчеты, акты — кому охота заниматься этой скукотой, когда вокруг бьет ключом и фонтанирует идеями креативная жизнь? Особенно, если заказчик снисходительно хлопает творческого подрядчика по плечу: «Да ладно, зачем какие-то договоры. Мое слово — закон!» Остается только радостно согласиться и приступить к работе.

На заре существования нашего агентства мы вообще не стремились формализовать отношения с дорогими клиентами. Типовой договор умещался на двух машинописных листах. Содержал он минимум информации: предмет договора, сроки, цена. Если заказчиков немного, и все они — старые знакомые, то в известной степени можно положиться на их добропорядочность. Но когда клиентская база активно растет, то и проблемы множатся: задерживают выплаты, не выполняют обязательства, злоупотребляют лояльностью исполнителя. Столкнувшись с ними в полном объеме, мы собрались, подумали и составили новый типовой договор.
Читать дальше →

Ускоряем логин через SSH в Ubuntu в 100 раз

Reading time2 min
Views42K
Долгое время я мучился ужасно медленным удаленным логином на свои Ubuntu сервера (все 2 ). Ужасно медленно в данном случае — 2-3 секунды. Не то чтобы это было совсем фатально, но когда логин через ключ — хочется чтобы все работало мгновенно — в конце концов, у нас не 486SX.

Длительное гугление приводило только к стандартным решениям:
  1. UseDNS no в /etc/ssh/sshd_config — ускоряет логин в случае тормозного DNS. В моём случае стоял локальный кеширующий DNS, потому и так все было быстро.
  2. Принудительное указание IPv4 в SSH клиенте — особо не помогло, видимо не у всех тормозит
И на askubuntu.com вопрос c bounty уныло провисел долгие недели без ответа…

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

Сайт, автомобиль — никакой разницы!
Простые ответы на 7 популярных вопросов по сайтостроительству.

Reading time2 min
Views944
Я работаю в компании занимающейся разработкой сайтов. Порой бывает очень сложно объяснить что, почему и сколько. Самый простой и быстрый путь найти общий язык с потенциальным заказчиком — это перевести все на простые и понятные большинству аналогии. Я в этих целях обычно использую автомобиль.
Читать дальше →

Мой опыт открытия бесплатного хостинга

Reading time2 min
Views5.7K
Два с половиной года назад я открыл бесплатный хостинг.

Благодаря отличным условиям и небольшому пиару, на пике своего существования хостинг имел 3500 активных юзеров! Все они содержались на одном оптимизированном выделенном сервере.

Обычно, бесплатный хостинг создаётся по следующим бизнес-моделям:
— Заработок средств на размещении рекламы и платных дополнительных услугах (пример: ucoz.ru).
— Привлечение клиентов на свой же платный хостинг (пример: jino-net.ru)
Читать дальше →

Новый программерский жаргон

Reading time7 min
Views52K
Посетителям сайта stackoverflow.com был задан вопрос: «Какие программерские термины вы придумали, так чтобы они стали популярны в ваших кругах (то есть вы слышали, что кто-то их повторяет)?

Ниже — вольный перевод самых популярных ответов.

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

У вас много идей стартапов? — Забудьте!

Reading time2 min
Views1.2K
У меня есть друг, давайте я буду звать его Гарри. Возможно, он прочтет это, поэтому я постараюсь быть очень дипломатичным. Итак, Гарри — идиот, который постоянно говорит и думает об одной и той же идее стартапа
в последние четыре года.

Почему Delphi «умирает» или «программист – не читатель, программист – писатель»

Reading time4 min
Views50K
Здравствуйте, уважаемые хабражители! С наступившим Новым годом! Желаю вам удачного кодинга, безбажного кода, понимающих руководителей, понятливых подчиненных и терпения при разборе кода, написанного предшественником.

Хочу поделиться некоторыми мыслями по поводу уменьшения популярности горячо любимого мною языка программирования — Delphi. Итак, не будем тянуть кота за яйца, а возьмем быка за рога.

В эпоху, когда родился Delphi, персональный компьютер начинал внедряться везде, где только могла привидеться выгода от его внедрения. Но одного компьютера не достаточно для извлечения выгоды. Есть еще пользователь оператор, который работает как посредник между бизнес-данными и информационной системой, и собственно сама информационная система — программы которые хранят, обрабатывают и выдают эти самые данные.

Значит, чтобы получить как можно больше профита, требуется уменьшить затраты на
Читать дальше →

Впечатления от TechCrunch Moscow

Reading time6 min
Views2K
13 декабря мне довелось побывать на первой российской конференции ТехКранчаTechCrunch Moscow 2010.

Главной темой конференции стало обсуждение привлекательности отечественных IT-продуктов для инвесторов и специфики российского Интернет-рынка в целом.

Формат мероприятия был очень оригинален — интервью. Все гости на сцене отвечали на вопросы ведущих, Майка Бутчера и Эммы Барнетт, тем самым заменив привычные доклады живой дискуссией в режиме «вопрос-ответ».

image

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

Настройка nginx

Reading time5 min
Views300K
Тема правильной настройки nginx очень велика, и, боюсь, в рамки одной статьи на хабре никак не помещается. В этом тексте я постарался рассказать про общую структуру конфига, более интересные мелочи и частности, возможно, будут позже. :)

Неплохой начальной точкой для настройки nginx является конфиг, который идёт в комплекте с дистрибутивом, но очень многие возможности этого сервера в нём даже не упоминаются. Значительно более подробный пример есть на сайте Игоря Сысоева: sysoev.ru/nginx/docs/example.html. Однако, давайте лучше попробуем собрать с нуля свой конфиг, с бриджем и поэтессами. :)
подробности

База всех населенных пунктов и регионов России

Reading time2 min
Views7.5K
Мне для одного проекта понадобилось создать базу географических наименований России. Из всех источников подобной информации наиболее авторитетными мне показались 2:

Последняя показалась мне более простой, полной и менее избыточной, хотя наименований населенных пунктов там в четыре раза больше. Я выбрал ОКАТО, поскольку нашел хотя бы какое-то описание базы на википедии, а в почтовых индексах присутствовала совсем непонятная информация. В этой базе предстояло отсеять ненужные административные единицы от требуемых мне географических.
Читать дальше →

Проверяем отказоустойчивость сайта

Reading time4 min
Views36K
Результаты тестирования. Время ответа сервераЭто очередной пост их уже традиционной предновогодней серии про проверку отказоустойчивости сайта и готовности его принять всех ваших посетителей, озадаченных выбором подарков или предновогодними скидками. В этом выпуске я рассмотрю создание тестов в расширенном режиме с использованием записи действий (Proxy recorder), что позволяет почти полностью эмулировать поведение реальных пользователей из реального браузера у вас на сайте. Также немного будет затронута тема анализа самих графиков по отказоустойчивости.
Итак, поехали.
Читать дальше →

Tips & Tricks

Reading time9 min
Views5.1K
Практически во всех языках программирования одну и ту же задачу можно решить несколькими способами. Однако какие-то из них лучше, какие-то хуже. Для некоторых требуется написать 10 строк кода, для других можно обойтись и одной.

Совершенствование кода и его оптимизация порой отнимает больше времени, чем заняло написание первой версии. Вы часто встречали новый для вас код или интересную реализацию, и говорили себе: «Оказывается, это можно сделать стандартными средствами, а я изобретал велосипед»? Лично я — да. Поэтому в этой статье я собрал свою коллекцию «велосипедов», и рассказал, как от них можно избавиться.

Методы массивов


Простой пример — допустим, у вас имеется массив объектов класса User. У них есть свойство activated, которое выставляется на 1, если юзер активировал свою учетную запись. Вам нужно проверить, все ли юзеры из массива активированы. Не берем во внимание ActiveRecord (там можно и по-другому сделать), моя цель — показать работу с массивами.

Способ первый, самый примитивный:
  1. @users = User.find(:all)
  2. activated_users = 0
  3. foreach user in @users
  4.   activated_users += 1 if user.activated == 1
  5. end
  6.  
  7. # если количество совпадает, значит все юзеры активированы
  8. activated_users == @users.size
Читать дальше

Немного о прелестях NetBeans + php

Reading time3 min
Views39K
Я, как человек, связанный университетом с Java, следил за развитием NetBeans практически с момента его становления изначально меня принудил ей пользоваться мне показал эту IDE мой учитель — Вадим Монахов (с гордостью обнаружил, что ссылка на него ведет с wikipedia, раздел литература). Сейчас часто сталкиваюсь с тем, что программисты PHP пишут говнокод ссылаясь на недоразвитость IDE не умеют делать Refactoring и многих из них останавливает отсутствие автоматизированных средств. Собственно, я решил отобрать у них этот аргумент: средства есть и сегодня я рассмотрю NetBeans как среду разработки для PHP и продемонстрирую заложенную в нее мощь.
Читать дальше →

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