После публикации топика о Maven в комментариях возникли вопросы о том, как начать с ним работать, с чего начать, как составлять файлы pom.xml, откуда брать плагины и т.п. Данный топик будет своего рода getting started или f.a.q.
User
+15
Тонкие клиенты как они есть
7 min
81KНесколько лет назад директор фирмы (торговавшей компьютерным хламом и немножко занимавшейся серверами), где я работал системным администратором, загорелся идеей делать и продавать тонкие клиенты. После некоторого количества не очень удачных попыток полного аутсорса разработки, меня привлекли к процессу, как человека, знающего зачем это и как его едят (я не занимался разработкой ПО, я ругался с халтурящими разработчиками и по мере возможности консультировал по.тому, что нужно, а что нет в ТК).
Два года я занимался тонкими клиентами. Сейчас я ухожу в другое место, а пока напишу то, что я знаю о тонких клиентах. Как со стороны пользователя, так и создателя.
Начнём с теории, точнее, с того, зачем тонкие клиенты и с чем их едят. Перед этим нам придётся понять, зачем все эти танцы с удалёнными рабочими столами, местами, VDI, облаками, кластерами и фермами приложений и т.д. и т.п.
Два года я занимался тонкими клиентами. Сейчас я ухожу в другое место, а пока напишу то, что я знаю о тонких клиентах. Как со стороны пользователя, так и создателя.
Начнём с теории, точнее, с того, зачем тонкие клиенты и с чем их едят. Перед этим нам придётся понять, зачем все эти танцы с удалёнными рабочими столами, местами, VDI, облаками, кластерами и фермами приложений и т.д. и т.п.
+123
Обзор хостингов изображений: читатели рекомендовали ещё 15 сервисов
10 min
15KПосле публикации первых 2 статей о 30 хостингах изображений читатели порекомендовали ссылки на ещё более 10 хостингов (14-15), практически каждый из которых стоило рассмотреть. Публикую результаты тестирования 11 хостингов (остальные пришлось отсеять).
(31.03) Добавлены ещё 4 хостинга по результатам после публикации, итого в таблице — 15 хостингов.
(31.03) Добавлены ещё 4 хостинга по результатам после публикации, итого в таблице — 15 хостингов.
+35
Как сдвинуть гору Фудзи или Интервью для гениев
4 min
67KДискляймер: Эта статья написана мной несколько месяцев назад (и тогда у меня было мало кармы, поэтому она осталась только в моем блоге), но, думаю, она все еще не потеряла свою актуальность. Тут я постаралась собрать информацию, которую бы мне хотелось получить в самом начале подготовки ко всяческим интервью. Статья основана на большом количестве личного опыта, но про опыт я написала и напишу отдельно.
Наверняка многие из вас слышали об ужасно сложных интервью для желающих работать в компаниях типа «Microsoft», «Google» или «Apple» (на самом этот список можно продолжать и продолжать). Еще бы — общеизвестно, что Google каждый день получает порядка 1000 резюме, все именитые компании рассказывают направо и налево, что они ищут не меньше, чем гениев, а на просторах безграничного интернета время от времени появляются вопросы, которые задавались на интервью вроде «Как вы сдвинете гору Фудзи?» или «Сколько мячиков влезет в автобус?» или даже «Как создать хорошую поисковую систему, вроде Google?».
На самом деле, опираясь на некоторый опыт прохождения интервью в «компаниях для гениев», я пришла к выводу, что на самом деле не все так сложно, как может показаться на первый взгляд. И, совершенно точно, к этим интервью можно целенаправленно готовиться и успешно их проходить, не будучи гением.
Итак, допустим цель «получить работу мечты» поставлена. Что же делать дальше?
Наверняка многие из вас слышали об ужасно сложных интервью для желающих работать в компаниях типа «Microsoft», «Google» или «Apple» (на самом этот список можно продолжать и продолжать). Еще бы — общеизвестно, что Google каждый день получает порядка 1000 резюме, все именитые компании рассказывают направо и налево, что они ищут не меньше, чем гениев, а на просторах безграничного интернета время от времени появляются вопросы, которые задавались на интервью вроде «Как вы сдвинете гору Фудзи?» или «Сколько мячиков влезет в автобус?» или даже «Как создать хорошую поисковую систему, вроде Google?».
На самом деле, опираясь на некоторый опыт прохождения интервью в «компаниях для гениев», я пришла к выводу, что на самом деле не все так сложно, как может показаться на первый взгляд. И, совершенно точно, к этим интервью можно целенаправленно готовиться и успешно их проходить, не будучи гением.
Итак, допустим цель «получить работу мечты» поставлена. Что же делать дальше?
-2
Пробуем 3D с помощью jMonkeyEngine
6 min
29KПрактически каждый, кто занимался геймдевом, понимает, что наилучшей производительности в этой области, по понятным причинам, можно добиться лишь на языках С/С++/asm. С данным утверждением в этой статье я спорить не буду, да и раньше даже как-то не задумывался о создании realtime-игр на других языках. Однако, игры бывают разные, и надо отдавать себе отчёт в том, насколько оправданы трудозатраты на реализацию очередного продукта. Если проект монструозен, с «тяжёлой» графической составляющей, даже после проведения весьма агрессивной оптимизации всё равно требующий от конечных пользователей (геймеров) топового железа на борту, то особых конкурентов на данный момент среди языков разработки у С/С++ в этом случае нету. Но если игрушка — не более чем обыкновенная казуалка, для запуска которой и нетбука будет достаточно, то можно позволить себе куда больший простор для фантазии в вопросе выбора инструментов для разработки. Исходя из этого принципа, в данной статье попробуем разобраться, чем может похвастаться в области геймдева такой, казалось бы, не совсем подходящий для этого, но удобный в целом язык Java, на примере движка jME.
+26
Проверка производительности хостинга
2 min
2.5KМой друг попросил немного попиарить его интересный проект. Я сразу откликнулся на помощь, проект действительно необычный и требует внимания со стороны других людей :)
Хочу представить вам проект hostertest.ru. Суть проекта в проверке скорости технической платформы
Предыстория
Как-то раз, давно-давно (примерно год назад), у нас с друзьями зашла речь о разных хостингах, хороших и плохих, тормозных и шустрых и т.д. О том, что у них бывает слабое оборудование, и о том, что на них бывает большая нагрузка, и о том, что их иногда банально досят, а также о том, что иногда неправильно настроенная CMS сама по себе создаёт аномальную нагрузку.
Также мы говорили о том, что в сети есть множество сервисов, которые могут помочь оценить хостинг: есть сервисы замеряющие скорость загрузки с сайта, есть сервисы следящие за доступностью, есть множество сайтов посвящённым отзывам пользователей. В конце концов есть сетевые утилиты ping и traceroute!
Но вдруг пришло осознание что нет мерила именно производительности хостинговой площадки. Нет способа измерить производительность одного хостинга и сравнить его с другим.
Так и родилась идея.
Хочу представить вам проект hostertest.ru. Суть проекта в проверке скорости технической платформы
Предыстория
Как-то раз, давно-давно (примерно год назад), у нас с друзьями зашла речь о разных хостингах, хороших и плохих, тормозных и шустрых и т.д. О том, что у них бывает слабое оборудование, и о том, что на них бывает большая нагрузка, и о том, что их иногда банально досят, а также о том, что иногда неправильно настроенная CMS сама по себе создаёт аномальную нагрузку.
Также мы говорили о том, что в сети есть множество сервисов, которые могут помочь оценить хостинг: есть сервисы замеряющие скорость загрузки с сайта, есть сервисы следящие за доступностью, есть множество сайтов посвящённым отзывам пользователей. В конце концов есть сетевые утилиты ping и traceroute!
Но вдруг пришло осознание что нет мерила именно производительности хостинговой площадки. Нет способа измерить производительность одного хостинга и сравнить его с другим.
Так и родилась идея.
+44
Netsukuku — свой собственный интернет
5 min
66KВ последнее время в хабрасообществе довольно активно обсуждаются темы, связанные с пиратством, закручиванием правительствами всевозможных гаек и прочим беспределом. Обсуждаются варианты противодействия политике контроля, цензуры и деанонимизации сети.
Странно, что на всем этом фоне не было ни одного поста о таком занимательном проекте, как Netsukuku. Цель которого, ни много ни мало — построить свой интернет с шахматами и администраторшами.
Бред? Не совсем.
+195
Opera 10.50 (под Windows) и как подружить её с Silverlight
1 min
9.3KНедавно, после того как обновил браузер Opera, сестренка попросила меня разобраться, почему вместо привычного плеера появилась странная картинка.
Перешел на страницу установки… но увидел надпись Microsoft Silverlight may not be supported on this browser, и таблицу поддерживаемых браузеров (см. ниже), среди которых Opera не было. Но выход всё же был. Инструкция под хабракатом.
Перешел на страницу установки… но увидел надпись Microsoft Silverlight may not be supported on this browser, и таблицу поддерживаемых браузеров (см. ниже), среди которых Opera не было. Но выход всё же был. Инструкция под хабракатом.
+26
Делаем простое веб приложение на Spring Framework MVC
13 min
253KВ данной статье я хочу рассказать начинающим Java разработчикам, как написать простое веб приложение, используя популярный фреймворк Spring Framework.
При разрабокте приложения мы будем использовать утилиту Ant для автоматизации действий и изучим, как писать простой тест с помощью библиотеки JUnit. Весь код будем писать в Eclipse IDE.
Статья написана на основе первой части руководства «Introduction to Spring MVC». Вам достаточно иметь лишь общее представление о Spring, чтобы прочитать статью с пользой.
Так что милости просим :)
+30
Sikuli — program ANYTHING using GUI screenshoots
5 min
15KСказка
Представьте на минуту, что Вы — несчастный программист, который каждый день добирается на работу на автобусе, расписание которого невозможно предугадать. В такой ситуации было бы очень удобно, завтракая дома, получать на телефон SMS, сообщающее, что автобус уже через пять минут будет на Вашей остановке.
К счастью, транспортная компания (которая не удосужилась составить четкого расписание) содержит сайт, на котором в реальном времени с помощью Google Maps можно узнать, где сейчас находится тот или иной автобус. И вот в один прекрасный день Ваше терпение лопается и Вы садитесь писать скрипт, который будет отправлять ту желанную SMS-ку. Но все не так просто. Придется долго повозиться, чтобы по карте и маленькому кружочку на ней оценить скорость и время прибытия реального транспортного средства на Вашу остановку. Вы ведь не можете просто написать: «хочу получать SMS, когда вот эта точка попадет вот в этот прямоугольник на карте». Или все-таки можете?
+74
Боремся с утечками памяти (C++ CRT)
6 min
62KУтечка памяти — довольно серьезная и опасная проблема. Быть может, пользователь и не заметит однократной утечки каких-нибудь 32Кб памяти (а ведь это целые 5% от 640Кб, которых «хватит всем»), но постоянно теряя сложные иерархические структуры или массивы размером больше
Не допускать ситуации вроде бы и не трудно — воспользуемся правилом «класть на место всё что взяли», но на практике это сильно осложняется человеческим фактором (банальная невнимательность), хитростью архитектуры и нелинейным порядком выполнения операторов, например, из-за применения исключений.
А можно было бы просто «отдаться» автоматическому сборщику мусора, ценой потери производительности (и это не обязательно Managed C++, для Native C++ / C есть библиотеки сборки мусора, вот, например).
Но мы поговорим о ситуации когда уже «всё плохо».
INT_MAX
(которые мы так любим создавать на 64-битной архитектуре) мы обречем его на страдания, а наш продукт на провал. Не допускать ситуации вроде бы и не трудно — воспользуемся правилом «класть на место всё что взяли», но на практике это сильно осложняется человеческим фактором (банальная невнимательность), хитростью архитектуры и нелинейным порядком выполнения операторов, например, из-за применения исключений.
А можно было бы просто «отдаться» автоматическому сборщику мусора, ценой потери производительности (и это не обязательно Managed C++, для Native C++ / C есть библиотеки сборки мусора, вот, например).
Но мы поговорим о ситуации когда уже «всё плохо».
+31
Круговорот артефактов в Agile
7 min
23KДоброго времени суток.
В этой статье я хочу продолжить рассказ о «прагматическом» Agile процессе разработки ПО. На суд Читателя предлагается иная перспектива обзора этого процесса — с точки зрения создания и эволюции артефактов (Artifact Flow) в ходе развития проекта. А также мы рассмотрим практический подход для работы с артефактом «Коллекция Требований» с использованием Google Wave и Google Docs.
В этой статье я хочу продолжить рассказ о «прагматическом» Agile процессе разработки ПО. На суд Читателя предлагается иная перспектива обзора этого процесса — с точки зрения создания и эволюции артефактов (Artifact Flow) в ходе развития проекта. А также мы рассмотрим практический подход для работы с артефактом «Коллекция Требований» с использованием Google Wave и Google Docs.
+18
Качества успешного предпринимателя – Упорство (1/11)
5 min
2KTranslation
Этим постом я начинаю перевод цикла постов Марка Састера про качества успешных предпринимателей.
_________
Это первая часть моей новой серии постов о том, что делает предпринимателя успешным. Исходно я публиковал их на сайте VentureHacks, одном из моих любимых сайтов для предпринимателей. Если вы там не были, то стоит зайти.
Я хотел также опубликовать эту серию здесь, чтобы она стала ресурсом для будущих предпринимателей, которые посещают мой блог. Мне хотелось, чтобы в комментариях завязалась дискуссия по каждой теме, ибо я считаю, что комментарии имеют такую же ценность, как и сам пост (я уже отмечал это в посте Comments are the New Black). Поэтому я распишу некоторые темы поподробнее, чем на VentureHacks, чтобы тем, кто уже читал мой пост там, также было интересно.
Один из вопросов, на который мне постоянно приходится отвечать как венчурному капиталисту, это «на что Вы обращаете внимание, делая инвестицию?» Я уже публично заявлял, что 70% инвестиционного решения основывается на команде, и особенно это касается основателей. Мне доводилось видеть, как люди, которые посещали самые лучшие учебные заведения, получали лучшие отметки и работали в самых что ни на есть правильных компаниях, терпят неудачу.
Какие же навыки нужны для того, чтобы стать успешным предпринимателем? На какие качества я обращаю внимание в процессе? Побывав в шкуре предпринимателя дважды, я составил список необходимых по моему мнению навыков. Этот пост посвящен первому из десяти, о которых я собираюсь написать.
_________
Это первая часть моей новой серии постов о том, что делает предпринимателя успешным. Исходно я публиковал их на сайте VentureHacks, одном из моих любимых сайтов для предпринимателей. Если вы там не были, то стоит зайти.
Я хотел также опубликовать эту серию здесь, чтобы она стала ресурсом для будущих предпринимателей, которые посещают мой блог. Мне хотелось, чтобы в комментариях завязалась дискуссия по каждой теме, ибо я считаю, что комментарии имеют такую же ценность, как и сам пост (я уже отмечал это в посте Comments are the New Black). Поэтому я распишу некоторые темы поподробнее, чем на VentureHacks, чтобы тем, кто уже читал мой пост там, также было интересно.
Один из вопросов, на который мне постоянно приходится отвечать как венчурному капиталисту, это «на что Вы обращаете внимание, делая инвестицию?» Я уже публично заявлял, что 70% инвестиционного решения основывается на команде, и особенно это касается основателей. Мне доводилось видеть, как люди, которые посещали самые лучшие учебные заведения, получали лучшие отметки и работали в самых что ни на есть правильных компаниях, терпят неудачу.
Какие же навыки нужны для того, чтобы стать успешным предпринимателем? На какие качества я обращаю внимание в процессе? Побывав в шкуре предпринимателя дважды, я составил список необходимых по моему мнению навыков. Этот пост посвящен первому из десяти, о которых я собираюсь написать.
+36
Что такое стартап? Основы от Стива Бланка
3 min
4.3KУспех состоит из пути от одной ошибки к другой без потери энтузиазма.
Уинстон Черчиль
Каждый знает, что такое стартап. Разве нет?
Я бы предложим новое объяснение тому, почему появляются стартапы: стартап – это организация, созданная для поиска повторяемой (в англ.оригинале «repeatable» – в значении «не одноразовая модель», а НЕ «бизнес-модель, которую можно повторить») и масштабируемой бизнес-модели.
Хорошо, а что такое бизнес-модель?
Бизнес-модель описывает, каким образом ваша компания создает, достигает и завоевывает ресурсы.
Простым языком, бизнес-модель описывает, как ваша компания зарабатывает деньги (в вашей системе координат это могут быть успех, новые пользователи, прирост трафика и т.п.)
Представьте, что бизнес-модель – это диаграмма, на которой показаны все связи между различными частями вашей организации. Эта диаграмма показывает и то, как ваша продукция попадает к покупателям и как оплата за эти продукты попадает к вам. Также она демонстрирует структуру затрат, как каждый отдел компании взаимодействует с другими, как ваша компания интегрирована в рынок и взаимодействует с партнерами. Слова словами – проще отобразить на схеме.
Много людей пытались понять, как лучше отобразить диаграмму или схему бизнес-модели. Мои студенты занимались этим годами, но работа Александра Остерволдера (Alexander Osterwalder) это лучшее, что я увидел за последние десять лет. Его диаграмма – это универсальный образец бизнес-модели. Ваша собственная бизнес-модель будет иметь свойственные только ей нюансы.
Уинстон Черчиль
Каждый знает, что такое стартап. Разве нет?
Я бы предложим новое объяснение тому, почему появляются стартапы: стартап – это организация, созданная для поиска повторяемой (в англ.оригинале «repeatable» – в значении «не одноразовая модель», а НЕ «бизнес-модель, которую можно повторить») и масштабируемой бизнес-модели.
Бизнес-модель
Хорошо, а что такое бизнес-модель?
Бизнес-модель описывает, каким образом ваша компания создает, достигает и завоевывает ресурсы.
Простым языком, бизнес-модель описывает, как ваша компания зарабатывает деньги (в вашей системе координат это могут быть успех, новые пользователи, прирост трафика и т.п.)
Представьте, что бизнес-модель – это диаграмма, на которой показаны все связи между различными частями вашей организации. Эта диаграмма показывает и то, как ваша продукция попадает к покупателям и как оплата за эти продукты попадает к вам. Также она демонстрирует структуру затрат, как каждый отдел компании взаимодействует с другими, как ваша компания интегрирована в рынок и взаимодействует с партнерами. Слова словами – проще отобразить на схеме.
Схема бизнес-модели
Много людей пытались понять, как лучше отобразить диаграмму или схему бизнес-модели. Мои студенты занимались этим годами, но работа Александра Остерволдера (Alexander Osterwalder) это лучшее, что я увидел за последние десять лет. Его диаграмма – это универсальный образец бизнес-модели. Ваша собственная бизнес-модель будет иметь свойственные только ей нюансы.
+32
Рисуем объёмные изображения в Inkscape
1 min
9.9KInkscape — относительно молодой, но прогрессивный векторный редактор общего плана (как Adobe Illustrator и Corel DRAW). Программа является кроссплатформенной, распространяется бесплатно и с исходным кодом. Основной формат изображений — SVG (масштабируемая векторная графика, стандарт W3C, рекомендованный для публикации векторных рисунков в интернете).
О работе с программой, а заодно и о том, как наполнить объёмом векторное изображение, я хочу рассказать на примере создания своей картинки со снеговиком.
Статья писалась специально для Linuxgraphics.ru. Читайте, пожалуйста там.
UPD: По многочисленным просьбам публикую исходник. Лицензия — CC Attribution Non-commercial Share Alike. Благодарности можно отправить на кошелёк Z161444749304 или R173720801008. Половина уйдёт в фонд развития Inkscape.
О работе с программой, а заодно и о том, как наполнить объёмом векторное изображение, я хочу рассказать на примере создания своей картинки со снеговиком.
Статья писалась специально для Linuxgraphics.ru. Читайте, пожалуйста там.
UPD: По многочисленным просьбам публикую исходник. Лицензия — CC Attribution Non-commercial Share Alike. Благодарности можно отправить на кошелёк Z161444749304 или R173720801008. Половина уйдёт в фонд развития Inkscape.
+129
Немного о том, как создавался «Аватар»
3 min
74K«Художники показывают свою работу, режиссер хочет побольше того или другого, и все это повторяется туда и обратно много раз. Это цикл, который двигает нашу работу и заставляет вещи выглядеть так, как они выглядят в итоге. Таким путем каждый маленький кусочек становится лучше и лучше, потом становится совершенным, а потом мы переходим к следующему кадру», – так описывает свою работу над фильмом «Аватар» Джо Уилки (Joe Wilkie), один из менеджеров студии спецэффектов Weta Digital из Веллингтона, Новая Зеландия. Именно здесь создавалась вся магия фильма «Аватар», которая покорила нас всех.
12 Мб на кадр, 288 Мб на секунду, 17,28 Гб на минуту. Все 162 минуты фильма, который мы увидели на экранах – огромный объем информации – это только маленькая толика того, что пропустил через себя новый дата-центр студии Weta. Собранный, как вы уже могли догадаться, на серверах HP: 34 стойки с 32 блейдами HP Proliant BL2x220c в каждой – 40 000 процессорных ядер и 104 Тб RAM, семь строчек в суперкомпьютерном рейтинге Top-500. Посмотрим немного на ту сторону фильма, что осталась за кадром.
12 Мб на кадр, 288 Мб на секунду, 17,28 Гб на минуту. Все 162 минуты фильма, который мы увидели на экранах – огромный объем информации – это только маленькая толика того, что пропустил через себя новый дата-центр студии Weta. Собранный, как вы уже могли догадаться, на серверах HP: 34 стойки с 32 блейдами HP Proliant BL2x220c в каждой – 40 000 процессорных ядер и 104 Тб RAM, семь строчек в суперкомпьютерном рейтинге Top-500. Посмотрим немного на ту сторону фильма, что осталась за кадром.
+190
Чему я научился в Майкрософт
9 min
6KTranslation
Проработав пять лет в различных командах в Майкрософт я вынес несколько вещей, о которых я даже не подозревал, когда оканчивал колледж. Основные ценности, чему я научился, вынесенные уроки, причина моего крика на друзей, как ни называй, они сослужили мне хорошую службу.
Некоторые из этих вещей специфичны для Майкрософт, но большая часть найдет применение в любой командной/корпоративной среде. Некоторые из них сложны – из-за них тебя могут уволить (а может и хуже), если ты не знаешь, что делаешь.
Некоторые из этих вещей специфичны для Майкрософт, но большая часть найдет применение в любой командной/корпоративной среде. Некоторые из них сложны – из-за них тебя могут уволить (а может и хуже), если ты не знаешь, что делаешь.
+190
Список Javascript библиотек для рисования графиков и диаграмм 2
2 min
37KПродолжаем тему визуализации данных в интернете.
Предыдущие топики:
Предыдущие топики:
- Изумительные диаграммы с новым Chart контролом
- Визуализация направленных графов в вебе
- Список Javascript библиотек для рисования графиков и диаграмм — habrahabr.ru/blogs/javascript/79960 (публикация в блоге — msug.vn.ua/blogs/akrakovetsky/archive/2010/01/04/javascript-charting-libraries.aspx)
+42
Highcharts: Красивые, динамические чарты за 5 минут!
2 min
66KHighcharts — библиотека для создания чартов написанная на JavaScript, позволяет легко добавлять интерактивные, анимированные графики на сайт или в веб-приложение. На данный момент чарты поддерживают большое количество диаграмм линейных, круговых, колоночных рассеивающих и многих других типов.
Чарты работают со всеми популярными браузерами, включая Safari на iPhone.
Минимальная версия для IE составляет 6+. Также браузеры поддерживающие Canvas элемент, и в некоторых случаях SVG для графического рендеринга.
+125
Information
- Rating
- Does not participate
- Location
- Россия
- Registered
- Activity