Pull to refresh
47
0
Send message

САМЫЙ главный паттерн в программировании

Reading time 7 min
Views 14K


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

И именно об одной из таких причинно-следственных связей я бы и хотел с вами поделиться в этой статье. Я думал написать, что это одна из самых важных причинно-следственных связей для того, что бы быть чуть менее радикальным, но все таки нет, эта причинно-следственная связь является самой важной причинно-следственной связью в программировании с огромным отрывом. Она проходит красной нитью сквозь абсолютно все области программирования: написание кода, проектирование интерфейса, развертывание приложения, организация работы команды, ведение баг трекера, и так далее. И эту сакральную причинно-следственную связь я называю минимизация переменных.
Читать дальше →
Total votes 30: ↑21 and ↓9 +12
Comments 50

Пропорциональный тайм-менеджмент

Reading time 10 min
Views 5.7K


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

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

Эту технику я реализовал в виде мобильного приложения, которое я назвал Achievator. Сразу скажу, что приложение абсолютное бесплатное и не имеет рекламы, моя мотивация это не получить доход, а поделиться своей наработкой, мне просто будет приятно если она окажется полезной для кого-либо еще.
Читать дальше →
Total votes 15: ↑13 and ↓2 +11
Comments 2

Что меня раздражает в MacBook

Reading time 8 min
Views 111K
Я пользуюсь макбуком уже примерно 1 год, я использую его ежедневно и очень много. До этого я сидел на Ubuntu и Windows. И когда я покупал MacBook то я ожидал, что продуманность ОС и удобство пользования будут выше всяких похвал. Как никак это ведь Apple, да и завышенная цена формирует у меня завышенные ожидания по поводу качества. Но увы на практике все оказалось не настолько идеальным как я считал. Многие недочеты происходят из фундаментального подхода Apple, в котором они дизайн ставят выше удобства и очень часто получается так, что то, что они делают красивым с эстетической точки зрения не удобно использовать на практике. Вообще я сторонник того, что бы красивый дизайн не портил функциональность. Есть еще и другой класс недостатков, которые просто есть и не понятно по каким причинам Apple решила реализовать этот функционал именно так, а не иначе. Но обо все по порядку.



Читать дальше →
Total votes 231: ↑117 and ↓114 +3
Comments 591

Почему вам НЕ стоит использовать AngularJs

Reading time 12 min
Views 248K
Много времени прошло с момента появления AngularJs (в масштабах веб-технологий конечно). Сейчас в интернетах есть огромное количество постов восхваляющих этот фреймворк до небес, что это манна небесная не иначе, а критики не так уж и много как он того заслуживает. Но такие статьи уже потихоньку начинают появляться, и меня это радует, надеюсь индустрия переболеет ангуляром так же, как переболела MooTools, Prototype, %какой-нибудь новый язык под JVM%, %другая-супер-революционная-технология%. Не знаю почему, но в IT-области такие революционные технологии, которые поднимают шум, а потом пропадают, появляются довольно часто. Хороший разработчик должен уметь отличать очередную модную технологию, от работающего инструмента. И для этого очень важно критически смотреть на вещи. Моя статья — это компиляция самых весомых выводов из других статей, и моих личных умозаключений. Ангуляр создает хороший вау-эффект, когда видишь его впервые: «ух ты, я написал ng-repeat, и реализовал эту логику одними тегами и все само обновляется!», но как только приходится реализовывать реальные приложения, а не очередной TODO-лист, то все становиться очень печально. Сразу хочу сказать, что фреймворк я знаю хорошо, даже больше чем мне хотелось бы его знать, я программировал на нем в течении 2 лет. И для следующего проекта я его точно не выберу, и это хорошо, все мы учимся на ошибках. Так что же не так с ангуляром? Тут нет однозначного ответа, слишком много разных недостатков, которые создают такой облик фреймворку. Если одним словом – непродуманная архитектура. Под катом я привожу конкретику, так что устраивайтесь поудобнее. ДА НАЧНЕТСЯ ХОЛЛИ ВАР!
Читать дальше →
Total votes 305: ↑242 and ↓63 +179
Comments 387

Scala как расширенная Java или Java++

Reading time 4 min
Views 27K
Java существует достаточно долго, на ней написано огромное количество софта и она является лидером в своей области. Однако Java не лишена недостатков. При проектировании языка важным критерием была простота и легкость изучения языка, и эта простота заставляет писать огромное количество лишнего кода, что бы компенсировать недостаточную гибкость языка: паттерны проектирования, XML конфиги, AOP, гетеры-сеттеры, try catch finaly синтаксис и т.д. Так же очевидно что не для всех задач чистый ООП подход является оптимальным, некоторые задачи намного эффективнее выполнять в функциональном стиле.

Существует много разных языков — Groovy, Python, Ruby, JRuby и еще много других, которые потенциально могут заменить java. Так почему же именно Scala?
Читать дальше →
Total votes 40: ↑34 and ↓6 +28
Comments 58

Обзор фреймворка Lift на Scala

Reading time 4 min
Views 15K

Введение


Lift считается одним из самых сложных и в тоже время мощных web-фреймворков существующих на данный момент (хоть и мало-известным), во многом потому что активно использует функциональные возможности языка Scala. Что бы его изучить нужно приложить не мало усилий. Но это того стоит, хотя бы потому что он сильно отличается от стандартных MVC фреймворков и знание альтернативных технологий расширит ваш кругозор.

В этой статье я расскажу об основных особенностях этого фреймворка.
Читать дальше →
Total votes 28: ↑27 and ↓1 +26
Comments 31

Information

Rating
Does not participate
Registered
Activity