В продолжение моего поста "Начинающим Java программистам" публикую очередную свою шпаргалку, а именно список задач, которые я обычно даю новичкам. Опытным разработчикам они покажутся тривиальными, а только начинающим изучать Java, причём самостоятельно, надеюсь будут в самый раз. Так же если Вы используете какие-то ещё задачи для обучения, то поделитесь ими, пожалуйста.:) Так как мне, иногда, как-то не по себе в ...-цатый раз рассказывать стажёрам одну и ту же задачу — пусть даже они её слышат впервые:)
Anton Krasikov @zer0access
Пользователь
Начинающим Java программистам
2 min
1.2MПрограммирую на Java вот уже 7 лет. Но на работе часто приходится обучать новое поколение. В связи с этим и решил сделать некоторую шпаргалку, которая, надеюсь, пригодится и для хабрчан. Если кто-то может помочь дополнить чем-то информацию из этой статьи, то пишите! Итак:
Основные ресурсы для начального обучения
- www.javable.com — сайт со статьями и tutorial'ом по Java. Все в основном на русском.
- www.exampledepot.com — очень полезный ресурс, где собраны краткие примеры использования классов для тех или иных пакетов
- java.sun.com — без первоисточника не обойтись. Для любого Java программиста JavaDoc должен быть истиной в последней инстанции. Так же здесь можно найти серию tutorial'ов на все возможные темы.
+106
Тайм-меджмент++
7 min
6.8KВРЕМЯ ПРИНАДЛЕЖИТ ВАМ, А НЕ ВЫ ВРЕМЕНИ
Этот текст служит цели оптимизации вашей деятельности.
Но не увлекайтесь оптимизацией — делайте дело.
Следствие: Традиционная учёба (стационар, 5 лет) — это опасная вещь. Нужно иметь очень веские основания (конкретную цель), чтобы потратить столь огромный кусок времени на неизвестный результат. К тому же принцип 50-50 (теория-практика) неприменим при учёбе, там все с точностью наоборот, что (на мой взгляд) свидетельствует об ущербности текущих методов обучения.
1. Необходимость времени (причины)
+41
Io programming language
3 min
9.6KПо факту защиты мной диплома образовалось некоторое свободное время и я таки решил собраться и написать про эту чудесную штучку.
Мы в последнее время видим всплеск интереса ко всяким языкам очень высокого уровня, с анонимными функциями, каррингом, мапом/фолдом, метапрограммированием и прочим блэкджэком. Слава богу, я считаю.
Задачи усложняются и если люди применяют относительно низкоуровневые средства разработки зачастую наступает ситуация, когда набор абстракций оказывается мал в рамках решаемой задачи, примерно так появляется «спагетти» и велосипеды. Хорошего мало. Хотя умалять роль низкоуровневого программирования не хочется совершенно, по понятным причинам.
Совсем недавно, в 2002 году, бравый американец Стив Декорте понял, что ему как-то все вокруг не нравится. Ну то есть нравится, но как-то по частям. Нравится Smalltalk своей Ъ-ООП природой, нравится Lisp своей системой метапрограммирования и общей мегаизвратностью, нравится Self своими прототипами, нравится Lua, потому что маленькая и клево встраивается куда угодно. А вот что бы все и сразу — что-то не то. Погоревал бравый американец, да и наколбасил свой собственный язык программирования — Io.
Io это маленький, полностью объектно-ориентированный язык программирования с динамической типизацией и развитой системой метапрограммирования, анонимными функциями и вытекающими отсюда плюшками. Кроме того, Io невероятно прост, как в синтаксисе, так и внутри. Существуют всего две сущности: объекты и сообщения. На этом базисе построено все остальное. Вообще весь язык следует дзенскому духу минимализма и простоты.
В Io нет понятия класс, только объект. Объект может быть склонирован и изменен, таким образом мы получаем другой объект (Это и есть прототипы). Все типы данных, значения и прочая — объекты.
Ну что, поехали.
Мы в последнее время видим всплеск интереса ко всяким языкам очень высокого уровня, с анонимными функциями, каррингом, мапом/фолдом, метапрограммированием и прочим блэкджэком. Слава богу, я считаю.
Задачи усложняются и если люди применяют относительно низкоуровневые средства разработки зачастую наступает ситуация, когда набор абстракций оказывается мал в рамках решаемой задачи, примерно так появляется «спагетти» и велосипеды. Хорошего мало. Хотя умалять роль низкоуровневого программирования не хочется совершенно, по понятным причинам.
Совсем недавно, в 2002 году, бравый американец Стив Декорте понял, что ему как-то все вокруг не нравится. Ну то есть нравится, но как-то по частям. Нравится Smalltalk своей Ъ-ООП природой, нравится Lisp своей системой метапрограммирования и общей мегаизвратностью, нравится Self своими прототипами, нравится Lua, потому что маленькая и клево встраивается куда угодно. А вот что бы все и сразу — что-то не то. Погоревал бравый американец, да и наколбасил свой собственный язык программирования — Io.
Io
Io это маленький, полностью объектно-ориентированный язык программирования с динамической типизацией и развитой системой метапрограммирования, анонимными функциями и вытекающими отсюда плюшками. Кроме того, Io невероятно прост, как в синтаксисе, так и внутри. Существуют всего две сущности: объекты и сообщения. На этом базисе построено все остальное. Вообще весь язык следует дзенскому духу минимализма и простоты.
В Io нет понятия класс, только объект. Объект может быть склонирован и изменен, таким образом мы получаем другой объект (Это и есть прототипы). Все типы данных, значения и прочая — объекты.
Ну что, поехали.
+109
Вперед в будущее! Переход с ICQ на Jabber
6 min
38K*Преамбула*
В связи с глобальной тенденцией перехода умных людей на Jabber, и инертного сопротивления этому переходу людьми, привыкшими к ICQ, было принято решение написать качественную аргументированную статью, о том, почему же все таки стоит сменить средство общения.
Итак, статья:
Для многих из нас ICQ является синонимом слов «общение в интернете», мы используем его по делу и для развлечения, находим с его помощью новых друзей и поддерживаем связь со старыми. За годы использования этой программы накопились сотни контактов в списке и длиннющая история переписки. В общем, все вроде бы устраивает, и идея перейти на что-то новое сразу наталкивается на логичный вопрос: «А зачем? Мне и так неплохо».
Итак, Jabber — это не очередной ICQ-клиент. Это система онлайн-общения нового поколения.
Она пришла на смену устаревшим месенджерам, место которых уже давно на интернет-свалке.

В связи с глобальной тенденцией перехода умных людей на Jabber, и инертного сопротивления этому переходу людьми, привыкшими к ICQ, было принято решение написать качественную аргументированную статью, о том, почему же все таки стоит сменить средство общения.
Итак, статья:
Для многих из нас ICQ является синонимом слов «общение в интернете», мы используем его по делу и для развлечения, находим с его помощью новых друзей и поддерживаем связь со старыми. За годы использования этой программы накопились сотни контактов в списке и длиннющая история переписки. В общем, все вроде бы устраивает, и идея перейти на что-то новое сразу наталкивается на логичный вопрос: «А зачем? Мне и так неплохо».
Итак, Jabber — это не очередной ICQ-клиент. Это система онлайн-общения нового поколения.
Она пришла на смену устаревшим месенджерам, место которых уже давно на интернет-свалке.

+147
Очередной HowTo по Vim
1 min
7.6KUpdate: похоже, что после обновления хабра появились проблемы с постингом больших статей. Старый текст, который был здесь ранее, хабр обрезал до середины, залить же новый мне не удалось — все время выдается ошибка «Возникла ошибка в получении XML данных: Internal Server Error» (насколько я понял, проблемы именно в большом объеме). Честно говоря, у меня сейчас нет ни времени ни желания разбираться с этим (к тому же переформатирование статьи из блога под хабр занимает довольно много времени), поэтому отсылаю вас к оригиналу — Очередной HowTo по Vim.
+2
12 лучших сайтов с креативными ссылками (для дизайнеров)
1 min
7.1KПодборка из 12 сайтов в ассортименте которых, большой выбор креативных ссылок: портфолио, фотоколлекций, медиа-дизайн, иллюстраций и т.д.
Designcollector

The FWA

Creativenews

Designcollector

The FWA

Creativenews

+1
+63
Geocoding with PHP and the Google Maps API
12 min
37KTranslation
Большинство приложений в интернете сейчас начинает встраивать карты местности.
Работе с картами, используя Google Map API, посвящена данная статья.
Работе с картами, используя Google Map API, посвящена данная статья.
+54
Настольный календарь на Google Calendar + Rainlendar
3 min
43K
Обнаружил, что на Хабре до сих пор нет ни одной статьи о могучем настольном календаре Rainlendar. Восполняю сие досадное упущение.
+32
Отчёт с семинара «Управление безнадёжными проектами» Эдварда Йордана.
5 min
2K23 апреля в Инфоцентре прошёл семинар, автор и ведущий которого — человек-легенда Эдвард Йордон.
В начале своего отчёта я бы хотел упомянуть, в чём мне видится польза от посещения семинаров. В своей профессиональной деятельности, кроме практического опыта мы получаем знания, читая соответствующие книги, из профессионального общения и статей в интернете. Семинары (ведущие семинара, гуру) помогают структурировать знания, подталкивают к собственным умозаключениям, рассказывают о направлениях развития и достижениях в управленческой мысли. С некоторыми своими мыслями, пришедшими во время семинара, я хотел бы вас познакомить в этом отчёте.

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

+42
Web-типографика — четыре золотых совета
3 min
4.2KОсновы web-типографики пришли к нам из далекого 1991 года, еще от небезызвестного Tim Berners-Lee :)
Если оглянуться назад, в страшные времена царствования IE 1.0, то web-типографика (я не говорю о web-дизайне) находилась в зачаточном состоянии. На данный момент, ситуация иная. Мы имеем достаточно средств, для грамотного оформления текста на web-странице.
Cуть web-типографики заключаться не просто в выборе нужного шрифта и умение отличить начертание одного шрифта от другого.

Рис. 1: Как показали последние опыты, 90% тренированных обезьян правильно отличают шрифт Helvetica.
Мы поговорим о web-типографике как о рецепте, содержащем четыре основных компонента. Если вы когда-нибудь пытались приготовить суфле, то скорее всего, смогли ощутить насколько важен рецепт его приготовления.
Если оглянуться назад, в страшные времена царствования IE 1.0, то web-типографика (я не говорю о web-дизайне) находилась в зачаточном состоянии. На данный момент, ситуация иная. Мы имеем достаточно средств, для грамотного оформления текста на web-странице.
Cуть web-типографики заключаться не просто в выборе нужного шрифта и умение отличить начертание одного шрифта от другого.

Рис. 1: Как показали последние опыты, 90% тренированных обезьян правильно отличают шрифт Helvetica.
Мы поговорим о web-типографике как о рецепте, содержащем четыре основных компонента. Если вы когда-нибудь пытались приготовить суфле, то скорее всего, смогли ощутить насколько важен рецепт его приготовления.
+28
Реализация Singleton в JAVA
4 min
283KВ этой статье я хочу затронуть тему одного из наиболее распространенных паттернов объектно-ориентированного программирования – Singleton. Но в данном случае я не буду описывать преимущества/недостатки и области применения этого паттерна, а попытаюсь изложить свой взгляд на его имплементацию в JAVA.
Общие сведения
Паттерн Singleton гарантирует, что у класса есть только один экземпляр, и предоставляет к нему глобальную точку доступа.
Общие сведения
Паттерн Singleton гарантирует, что у класса есть только один экземпляр, и предоставляет к нему глобальную точку доступа.
+44
Эффективный способ повысить умственную работоспособность
13 min
222KВ прошлой заметке я писал о том, чего не стоит делать, если у вас проблемы с работоспособностью. В этой части я расскажу об эффективном способе, не требующем медикаментов. Медикаменты — это только поддержка, дополнение. Но способ этот требует организованности и силы воли, а потому так нелюбим большинством из нас.
+157
«Разгоняя голову», не перегрейтесь!
4 min
144KПроблема недостаточной умственной работоспособности и утомления, как выяснилось, заботит очень многих. На «Хабре» нашлись граждане, которые, кто в шутку, кто всерьез советовали в комментариях амфетамины, прозак, ноотропил, гинкго, винпоцетин.
Уровень невежества некоторых «советчиков» зашкаливает. В этой заметке я расскажу о том, что не надо делать. О том, что надо делать, расскажу в следующей.
Уровень невежества некоторых «советчиков» зашкаливает. В этой заметке я расскажу о том, что не надо делать. О том, что надо делать, расскажу в следующей.
+133
7 действий фрилансера если заказов стало много
2 min
4KСовсем недавно я писал, что делать, если нет заказов или их мало. Сегодня поговорим об «обратной стороне монеты».
Вопрос актуальный и волнующий. И многие фрилансеры не знают, что стоит делать и в итоге работают и работают и работают, напряжение ростет, нервные срывы, проблемы в жизни…
Если вы умеете работать с клиентурой и делаете свою работу хорошо и качественно, то рано или поздно наступает момент, когда работы стает больше, чем часов в сутках, а отказывать клиентам не удобно.
Поэтому я попытаюсь в этой заметке собрать все известные мне методы (некоторые опробованы мною, некоторые я слышал от других уважаемых мною фрилансеров) и свести методы воедино.
Вопрос актуальный и волнующий. И многие фрилансеры не знают, что стоит делать и в итоге работают и работают и работают, напряжение ростет, нервные срывы, проблемы в жизни…
Если вы умеете работать с клиентурой и делаете свою работу хорошо и качественно, то рано или поздно наступает момент, когда работы стает больше, чем часов в сутках, а отказывать клиентам не удобно.
Поэтому я попытаюсь в этой заметке собрать все известные мне методы (некоторые опробованы мною, некоторые я слышал от других уважаемых мною фрилансеров) и свести методы воедино.
+22
Что делать, если нет заказов
1 min
6.7KМногие новички во фрилансе сталкиваются с проблемой того, что изначально клиентуры нет и ее не так просто получить.
Поэтому очень часто можно наблюдать, что такие люди ищут совета у более опытных в этом деле коллег.
Но так делают далеко не все. Многие сдаются уже на этом этапе, подумав, что фриланс — сложно или что нормальных заказов во фрилансе нет.
Кстати это действительно сложно. Но мой рассказ сегодня не об этом.
Поэтому очень часто можно наблюдать, что такие люди ищут совета у более опытных в этом деле коллег.
Но так делают далеко не все. Многие сдаются уже на этом этапе, подумав, что фриланс — сложно или что нормальных заказов во фрилансе нет.
Кстати это действительно сложно. Но мой рассказ сегодня не об этом.
+43
Обслуживание клиентов: самые грубые ошибки
4 min
1.4KTranslation
В продолжение темы обслуживания клиентов.
Претензии к качеству клиентского обслуживания слышны по всему миру, меньше их не становится. В то же время, в каждой стране есть компании, «заведенные» сотрудники которых устанавливают самые высокие стандарты обслуживания клиентов. В таких фирмах царит энтузиазм, объединяющий всех и все. Конечно, у них есть, чему научиться. И в первую очередь надо узнать ошибки, которых в таких компаниях НЕ делают. Ошибки, типичные для всех остальных.
Претензии к качеству клиентского обслуживания слышны по всему миру, меньше их не становится. В то же время, в каждой стране есть компании, «заведенные» сотрудники которых устанавливают самые высокие стандарты обслуживания клиентов. В таких фирмах царит энтузиазм, объединяющий всех и все. Конечно, у них есть, чему научиться. И в первую очередь надо узнать ошибки, которых в таких компаниях НЕ делают. Ошибки, типичные для всех остальных.
+30
Практическая кроссплатформенность
3 min
1.8KПосле полугода использования Ubuntu Linux я окончательно решил, что это именно та система, которая мне нужна для работы и развлечений. Почту организовал в Evolution и был приятно удивлен тем, что там есть все что мне надо, но ничего лишнего (что особенно удивительно после работы в Microsoft Office Outlook)!
Так сложилось, что я купил себе PocketPC на базе WM6 (Windows Mobile 6).
Все было замечательно до момента, пока у меня не появилось много дел и задач: понадобилась полная синхронизация между тремя продуктами:
Так сложилось, что я купил себе PocketPC на базе WM6 (Windows Mobile 6).
Все было замечательно до момента, пока у меня не появилось много дел и задач: понадобилась полная синхронизация между тремя продуктами:
- Evolution
- Windows Mobile Outlook
- MS Office Outlook
+30
Делаем did you mean, часть вторая
3 min
2.5KЗдравствуйте

Не так давно я писал про правильный did you mean.
Несмотря на все мои улучшения, guess-инг всё равно часто ошибался, и выдавал странные результаты.
Однако недавно, мне удалось значительно улучшить качество guess-инга, и я решил, что было бы неплохо написать «патч» к моей предыдущей статье :)
+33
Information
- Rating
- Does not participate
- Location
- Россия
- Date of birth
- Registered
- Activity