• N+1 полезных книг о бизнесе

      В топике блиц-обзор книг, которые будут полезны IT-специалистам, бизнесменам и тем, кто собирается открыть своё дело. Рядом с каждой — короткие пояснения, почему и зачем стоит прочесть.

      Отобраны лучшие 10% из примерно 200 прочитанных книг о маркетинге, продажах и всем связанном — самые «пробивные» вещи, которые помогут вам не тратить время на всякий шлак, а сразу начать с главного.

      В конце — суммация книг, которые хабровчане рекомендуют в комментариях помимо основного списка.

      Читать дальше →
    • Как посчитать всё на свете одним SQL-запросом. Оконные функции PostgreSQL


        Я с удивлением обнаружил, что многие разработчики, даже давно использующие postgresql, не понимают оконные функции, считая их какой-то особой магией для избранных. Ну или в лучшем случае «копипастят» со StackOverflow выражения типа «row_number() OVER ()», не вдаваясь в детали. А ведь оконные функции — полезнейший функционал PostgreSQL.
        Попробую по-простому объяснить, как можно их использовать.


        Читать дальше →
      • Ещё один формат хранения архивов: dar

          Введение



          Есть известная поговорка, что системные администраторы делятся на три типа: тех, кто не делает бэкапы; тех, кто уже делает бэкапы и тех, кто делает и проверяет, что бэкапы рабочие.

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

            Рано или поздно к каждому из нас приходит понимание необходимости в денежном «буфере» про запас. На чёрный день, так сказать. Кто-то может насобирать скромную сумму, ежемесячно откладывая по чуть-чуть с зарплаты, кому-то достался приличный «буфер» от дядюшки… Как бы то ни было, встаёт вопрос хранения имеющихся средств, а ещё лучше — их задействования! Совсем не хочется, чтобы имеющиеся деньги просто таяли вместе с инфляцией.
            Не так давно я проводил опрос, с надеждой открыть что-то новое для себя и с целью узнать где хранят деньги уважаемые хабражители, пускают ли их «в дело». И, из результатов опроса и комментариев к нему, понял, что мне есть что рассказать по этому поводу.
            Под катом небольшой обзор самых популярных инструментов для самых начинающих от инвестора-любителя :) Я вкратце расскажу о банковских вкладах, индексируемых депозитах, ПИФах, ПАММ и ТМА-счетах.
            Вопросы мотивации на накопление средств и вопросы выбора валюты в данном посте не рассматриваются.
            Читать дальше →
          • Домашняя бухгалтерия с использованием Google Docs

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

            Прежде всего всё что написано не мою — написано другим. Это очевидно. Но следствие из этого — это другой разрабатывал логику, исходя из собственных представлений об удобстве и функционале. А значит нет уверенности в том что чужие представления на 100% совпадут с моими. На хабре эта тема уже звучала.

            Второй важный момент — если системой будут пользоваться двое (не говоря уже о большем количестве), то вероятность ошибок возрастает многократно. Многие системы подразумевали наличие счёта, отображающего количество денег в кошельке. Ах, как мне нравилась программа GnuCash… Но каждый месяц я должен был добавлять транзакции для корректировки счета по кошельку жены. И на что она тратила деньги оставалось только догадываться потому как сама она не могла вспомнить, а чеки благополучно терялись.

            Исходя из вышеописанных проблем я породил ещё одну домашнюю бухгалтерию на Google Docs. Методом проб и ошибок, анализируя чужие решения и исходя из собственных потребностей я пришёл к следующим выводам.
            Читать дальше →
          • Постиндустриальное общество: ценности, семья, мораль и право

              Disclaimer. Написать этот топик меня побудил комментарий nail84 к предыдущему бестселлеру про порнографию.

              Современное западное общество является, с социологической точки зрения, совершенно уникальным. Перечислю вкратце: эмансипация женщин; либерализация права (легализация наркотиков, проституции, однополых браков, et cetera); либерализация морали, в т.ч. сексуальной; распад традиционной семьи; длинное детство и длительное образование; деградация института брака; снижение рождаемости и повышение фертильного возраста; консюмеризм — все эти явления в совокупности никогда не встречались в человеческой истории.

              В предыдущем топике я писал, что не приемлю объяснений вида "(что-нибудь имеет место), потому что таково западное общество", поскольку такие объяснения ничего не объясняют. В этом топике я постараюсь показать, что все эти процессы объяснимы со вполне рациональных позиций.

              P.S. Топик в персональных блогах, не хочешь — не читай. Писать в комменты «это не для Хабра!!! одынодын» не надо.

              Поехали
            • Поддержка формы айтишника

                После прочтения статьи Ghetto workout товарища papa_justify, а так же изучения обширных и разнообразных комментариев к ней, решился написать свой первый пост на схожую тематику. Сразу скажу, что я не достиг феноменальных успехов в построении рельефного тела, не добился мировых рекордов и не был занесен в книгу рекордов Гиннеса.

                Эта статья — попытка обобщить, поделиться и обсудить с товарищами по несчастью информацию, накопленную на протяжении 3 лет тренировок.

                Предыстория


                Вопрос поддержания собственной физической формы остро стал после поступления в ВУЗ. До этого спортом, как таковым, я не занимался (за исключением шахмат в 5-ом классе, полугодовалого хождения на каратэ-до и физкультуры в школе). После первого семестра активной учебы и сдачи лаб, вольготного отношения к физкультуре и веселого распития пива, стал замечать, что потихоньку начинаю терять форму и обрастать жиром. Начал задумываться как комплексно подойти к решению сложившейся проблемы. Решительно и бодро проштудировал многочисленные сайты и руководства для юных качков и уверенно пошагал в зал (благо он был бесплатен). Естественно без тренера и естественно без какой-либо системы начал таскать все, что попадалось под руки. С разным количеством подходов и упражнений в них. Естественно, ожидаемого эффекта накачаться мои отчаянные попытки не дали. Далее я снова углубился в литературу и начал открывать для себя все новые и новые горизонты.
                Думаю, не стоит описывать все мои попытки достичь высот, ибо это займет слишком много моего и вашего времени. Попытаюсь вкратце рассказать, что я извлек для себя из всего этого.
                Читать дальше →
              • Пробежки: хороший спорт для айтишника или как начать бегать

                  Всем известно что IT специалисты, в большистве своём, ведут сидячий образ жизни. Практически все рабочее время они проводят на своей 5-й точке. Это явно не идёт на пользу здоровью. А если учесть тот факт, что рацион среднестатистического ITшника достаточно вреден для организма, то в результате всех ждут: избыточный вес, атрофирование мышц, и еще всякие «мелкие неприятности» (вроде геморроя и импотенции). В этой статье я раскажу о пользе регулярных физических нагрузок, о беге трусцой, чем он хорош, и главное — как начать им заниматься.

                  Регулярные физические нагрузки нужны и полезны. Среднестатистический ITшник недополучает физических нагрузок на работе, это факт. Он не таскает холодильники на 9й этаж без лифта, не носит мешки с цементом на стройке, не бегает за мамонтом в надежде на вкусный ужин. Так что со временем он только «хиляет» и «сдувается». Думаю, это ощущает каждый, кто еще не занимается спортом по какой-либо причине, будь то нехватка времени, лень, или растеряность. Если же желание всё же возникает, то вместе с ним возникает и вопрос — какой же спорт выбрать?
                  П.С. Регулярный бег позволяет эффективно сбросить вес.
                  Читать дальше →
                • Разработка интранет-портала в гос.организации: итоги года

                    Добрый день, друзья!
                    Общая тенденция на Хабре говорит о том, что народ соскучился по хорошим ИТ-шным статьям. Поэтому разрешите сегодня внести свой посильный вклад.

                    Итак, примерно год в нашей организации [Управление Росреестра по Курганской области] мной был заложен первый байт кода :-) в систему электронных заявок. Прошло время, и все это выросло (не буду скромничать) во внутренний интранет-портал организации. Сегодня – время смахнуть трудовой пот с лица, крошки – с клавиатуры, и подвести некоторые итоги работы.

                    Читать дальше →
                  • Битва за трудочасы. Как надо считать зарплату?

                      История «успеха».

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

                      Казалось бы — простая и хорошая схема: рассчитать примерный фонд зарплаты (а это расходная статья) можно на год вперёд.
                      Но, как и следовало ожидать, в отчетах все сотрудники исправно отрабатывали 40 часов в неделю. Всегда. Все.
                      Было несколько «партизан», которые иногда забывали там отмечаться, но, в целом, в отчетах царила райская идиллия.

                      Наконец кому-то из руководства пришла в голову долгожданная мысль, что так быть не может…
                      Читать дальше →
                    • 31 тезис

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

                        Читать дальше →
                      • Краткая, неполная и вымышленная история языков программирования

                        • Translation
                        1801 — Иосиф Мария Жаккард с помощью перфокарт вышивает «hello world» на ткани. Хабровчане тех времен недовольны отсутствием хвостовой рекурсии, многопоточности и заглавных букв.

                        1842 — Ада Лавлейс пишет первую программу. Её успехам препятствует маленькая проблемка — компьютера для исполнения этой программы ещё не изобрели. Через полтора века архитекторы корпоративных приложений переймут технику Ады по написанию неисполняемых программ и назовут этот метод UML.
                        Что случилось дальше?
                      • 10 безусловных «Нет!» для фрилансера

                        • Translation
                        Впервые я начал заниматься фрилансом еще будучи студентом, тогда я ужасно хотел создавать веб-сайты и ответил бы «Да» на абсолютно любое предложение, независимо от уровня моих способностей и требуемого времени. Мне просто нравилось знать, что кто-то нуждается во мне для выполнения задания, которое требует опыта и определенных навыков. К сожалению, очень быстро оказалось, что я все время в работе, питаюсь полуфабрикатами и вечно не успеваю рассчитаться с университетскими долгами. Ситуация становилась еще хуже от того, что мои заказчики передавали мои контактные данные своим знакомым (например, даме, которая хотела заниматься продажей свитеров для собак он-лайн, но при этом имела для целей электронной коммерции бюджет в 100$; и это все за создание сайта, 1000 брошюр, гарантированный результат №1 в Google по запросам «собака», «свитер» и «любовь»).

                        В любом случае, теперь, спустя 4 года, мое мировоззрение (и мой финансовый успех) свидетельствуют в пользу более частого использования ответа «Нет». Ниже приведены десять вопросов, на которые теперь я почти всегда отвечаю «Нет»:
                        Читать дальше →
                      • Уехать жить в село

                          Есть у меня мечта. Уехать из города (живу в Днепропетровске) в село на ПМЖ. Друзей всех я этой темой задолбал уже наверное, хотя есть товарищи, разделяющие эту идею ;) Решил поделиться с интернет-сообществом, и, возможно, найти единомышленников. Буду рад критике, предложениям, советам.


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

                            Добрый день, друзья!

                            Так или иначе, всем нам приходится обращаться в государственные органы. Взять справку, поставить на учет, снять с учета, зарегистрировать и т.д. И каждый раз приходится выстаивать многочасовые очереди ради одной-двух заветных бумажек или печатей. В сегодняшней статье я хотел бы рассказать о том, как лично мы боремся с проблемой очередей (в нашем Управлении [УФРС по Курганской области] довольно большой поток посетителей, так что задача довольно актуальна).

                            Сразу хочу оговориться о целях статьи:

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

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

                            Читать дальше →
                          • Ruby Science: руководство по созданию качественных приложений на Ruby on Rails от thoughtbot

                              thoughtbot (с маленькой буквы) — одна из ведущих американских консалтинговых фирм, ориентированных на веб разработку с помощью Ruby on Rails. thoughtbot эксплуатирует распространенную в этой среде бизнес-модель, и зарабатывает не только за счет консалтинга, но и за счет своих больших вкладов в Open Source, активного участия в жизни сообщества (например, подкаст Giant Robots Smashing into Other Giant Robots), образовательной деятельности (воркшопы, менторство), внутренних продуктов и литературы.

                              На их счету до сегодняшнего дня числилось две полноценных книги: The Playbook — исчерпывающий справочник по внутреннему распорядку и трудовым хитростям thoughtbot (бесплатна для изучения на их сайте), и Backbone.js on Rails — не менее исчерпывающее руководство по использованию JS фреймворка Backbone вместе с Ruby on Rails.

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

                              Сегодня они объявили о начале работы над новой книгой, под названием «Ruby Science. The reference for writing fantastic Rails applications». Более того, начать чтение книги и принять участие в её развитии можно уже сейчас.

                              Читать дальше →
                              • +26
                              • 12.4k
                              • 2
                            • 27+ ресурсов для онлайн-обучения


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

                                Статья содержит перечень ресурсов для онлайн-обучения, представляющих интерес преимущественно для программистов.

                                Читать дальше →
                              • Памятка пользователям ssh

                                  abstract: В статье описаны продвинутые функций OpenSSH, которые позволяют сильно упростить жизнь системным администраторам и программистам, которые не боятся шелла. В отличие от большинства руководств, которые кроме ключей и -L/D/R опций ничего не описывают, я попытался собрать все интересные фичи и удобства, которые с собой несёт ssh.

                                  Предупреждение: пост очень объёмный, но для удобства использования я решил не резать его на части.

                                  Оглавление:
                                  • управление ключами
                                  • копирование файлов через ssh
                                  • Проброс потоков ввода/вывода
                                  • Монтирование удалённой FS через ssh
                                  • Удалённое исполнение кода
                                  • Алиасы и опции для подключений в .ssh/config
                                  • Опции по-умолчанию
                                  • Проброс X-сервера
                                  • ssh в качестве socks-proxy
                                  • Проброс портов — прямой и обратный
                                  • Реверс-сокс-прокси
                                  • туннелирование L2/L3 трафика
                                  • Проброс агента авторизации
                                  • Туннелирование ssh через ssh сквозь недоверенный сервер (с большой вероятностью вы этого не знаете)
                                  Читать дальше →
                                • Занимательное функциональное программирование в Ruby

                                  • Translation

                                  Эта статья посвящена бесцельному путешествию по вырожденной форме Ruby в попытках узнать больше о функциональном программировании, простоте и дизайне программных интерфейсов.

                                  Предположим, что единственный способ представления кода — лямбда-выражение, а единственная доступная структура данных — массив:

                                  square = ->(x) { x * x }
                                  square.(4) # => 16
                                  
                                  person = ["Dave",:male]
                                  print_person = ->((name,gender)) {
                                    puts "#{name} is a #{gender}"
                                  }
                                  print_person.(person)
                                  

                                  Это самые основы функционального программирования: функции — единственное, что у нас есть. Давайте попробуем написать что-то более похожее на реальный код в таком же стиле. Посмотрим, как далеко мы сможем зайти без особых мучений.
                                  Читать дальше →