Как стать автором
Обновить
1
0
Александр @shide

Backend Java developer

Отправить сообщение

Английский для собеседований в IT-компании: что нужно для старта карьеры?

Время на прочтение6 мин
Количество просмотров158K

Собеседование на английском — дело непростое. Но хорошее планирование и подготовка ключевых моментов сделают этот процесс более приятным и безобидным.


Читать дальше →
Всего голосов 45: ↑40 и ↓5+35
Комментарии33

Микросервисная архитектура, Spring Cloud и Docker

Время на прочтение14 мин
Количество просмотров261K

Привет, Хабр. В этой статье я кратко расскажу о деталях реализации микросервисной архитектуры с использованием инструментов, которые предоставляет Spring Cloud на примере простого концепт-пруф приложения.



Код доступен для ознакомления на гитхабе. Образы опубликованы на докерхабе, весь зоопарк стартует одной командой.

Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии32

Автоматическая визуализации python-кода с использованием блок-схем

Время на прочтение17 мин
Количество просмотров97K
Речь пойдет о технологии, которая дает возможность реализации инструментов разработчика, подобных показанному на картинке ниже.

image

Общий вид среды с альтернативными представлениями кода

Здесь окно среды разработки разбито на две части. Слева — привычный текстовый редактор, а справа — автоматически генерируемая диаграмма, по возможности приближенная к традиционным блок-схемам алгоритмов. Генерация и перерисовка диаграммы производится по ходу набивки текста. Среда разработки определяет паузу в действиях разработчика и обновляет диаграмму, если код остается корректным. В результате появляется возможность работы не только с текстом программы, но и с его графическим представлением.
осторожно, далее много картинок
Всего голосов 75: ↑73 и ↓2+71
Комментарии70

Почему вы никогда не должны использовать MongoDB

Время на прочтение16 мин
Количество просмотров287K
Дисклеймер от автора (автор — девушка): Я не разрабатываю движки баз данных. Я создаю веб-приложения. Я участвую в 4-6 разных проектах каждый год, то есть создаю много веб-приложений. Я вижу много приложений с различными требованиями и различными потребностями хранения данных. Я разворачивала большинство хранилищ, о которых вы слышали, и несколько, о которых даже не подозреваете.

Несколько раз я делала неправильный выбор СУБД. Эта история об одном таком выборе — почему мы сделали такой выбор, как бы узнали что выбор был неверен и как мы с этим боролись.Это все произошло на проекте с открытым исходным кодом, называемым Diaspora.
Читать дальше →
Всего голосов 219: ↑181 и ↓38+143
Комментарии245

Спать мало, но правильно?

Время на прочтение7 мин
Количество просмотров900K
Навеяно этим постом от юзера case. Пост не новый, и на главную он не попал.
Но я вот наткнулся на него сегодня и решил написать кое-что о сне. Уверен, что это будет полезно многим хабравчанам, да и случайным читателям тоже.
Читать дальше →
Всего голосов 713: ↑670 и ↓43+627
Комментарии420

Имеющий «уши», да услышит – критерии выбора наушников

Время на прочтение10 мин
Количество просмотров45K
Сегодня наушники используют практически все. Выбор той или иной модели, конструкции, принципа действия наушников во многом обусловлен сферой их применения. В данном материале мы описали то, что в первую очередь следует учесть при выборе наушников. Намеренно дистанцировавшись от гарнитур и узкоспециализированных устройств, мы сконцентрировали внимание на тех наушниках которые используют для прослушивания музыки, просмотра видео, а также рассказали о некоторых профессиональных устройствах для студий звукозаписи и концертного применения.

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



Отмечу, что для людей, которые подходят к качеству передаваемого звука с позиции «лишь бы звук был», полезной окажется только часть этого материала. Также сходу подчеркну, что любые упоминания брендов и моделей будут минимизированы, носят лишь информационный характер. Эта статья не даст ответ на вопрос «какие наушники лучше?». Материал создан лишь для того, чтобы облегчить выбор, подробно рассказать о существующих технологиях и принципах.
Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии73

Генерируем псевдослучайные ID а-ля Youtube

Время на прочтение4 мин
Количество просмотров24K
Привет, %username%! Бывает необходимо генерировать ID не подряд, причем чтобы они гарантированно не повторялись. На youtube это используется для того, чтобы вы не могли брутфорсом получить все новые и старые видосики, так же это не редкость на разных файлообменниках и вообще везде где нужно предотвратить или хотя бы затруднить возможность прямого перебора значений.


К примеру, в системе moodle, которая использовалась у нас в универе для тестирования студентов, ID ответов были инкрементными и сквозными на всю базу. Логично предположить, что правильным ответом был тот, что с наименьшим ID в пределах вопроса. В общем, проблем с тестами у нас не было. Потом они перешли на GUID, но я к тому моменту уже выпустился, хехе.

Давайте рассмотрим несколько способов генерации таких ограниченных по длине последовательностей от самых простых до криптографически стойких.
Читать дальше →
Всего голосов 69: ↑63 и ↓6+57
Комментарии41

Битва дроидов и джедаев на клеточном автомате

Время на прочтение7 мин
Количество просмотров17K

Фильмы, где огромные армии сходятся друг с другом на поле боя в эпичной битве обычно вызывают в людях бурю эмоций. Сцены сражений из "Звездных войн" с мастерски владеющими световыми мечами джедаями и ордами боевых дроидов — не исключение.


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



Всего голосов 59: ↑56 и ↓3+53
Комментарии31

Как я начал писать сторонние проекты, чтобы набраться опыта

Время на прочтение12 мин
Количество просмотров35K

(Поскольку люди спрашивали: Sublime Text 3 с «Spacegray Light» («платиново-серый светлый») из Materialize и гарнитура Ubuntu Mono Bold)

Как и большинство других студентов, обучавшихся по программе компьютерных наук в Калифорнийском университете в Сан-Диего, я в течение нескольких лет шёл через различные курсы просто «накатом». Я никогда не был ни хорошим, ни плохим по успеваемости, и мой средний балл был «не очень». Я любил курсы программирования с их чрезвычайно сложными заданиями; математический анализ же был мне не по душе.

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

Если вы сейчас изучаете компьютерные науки или предполагаете делать это, то надеюсь, что вам будет полезен мой опыт.
Читать дальше →
Всего голосов 38: ↑32 и ↓6+26
Комментарии14

Как я полюбил vim, Emacs и клавиатуру

Время на прочтение13 мин
Количество просмотров76K
В какой-то степени эта статья ответ — или, скорее, дополнение — к публикации «Зачем vi-топор программисту 21-го века». Я увидел, что в комментариях люди по-прежнему удивлялись: какой смысл в этих редакторах, когда есть полноценные IDE; статья приводила немного реальных примеров и, понимая, что мне есть, что сказать, я решил поделиться собственным опытом. Написано в художественном стиле, так как думаю, если бы люди хотели сухую выжимку, они бы просто пошли читать мануалы. Так же предупрежу, что в мануалах по Емаксу клавиша «Alt» упоминается как «Meta». Я буду говорить «Alt», так как для многих это название привычней.
Читать дальше →
Всего голосов 51: ↑41 и ↓10+31
Комментарии191

Почему, ну почему, эти #?@! придурки используют vi?

Время на прочтение12 мин
Количество просмотров120K

Предлагаю читателям "Хабрахабра" перевод статьи "Why, oh WHY, do those #?@! nutheads use vi?" за авторством John Beltran de Heredia.


Да, даже если вы не можете в это поверить, у редактора vi, увидевшего свет более тридцати лет назад (и его более молодого, всего-то пятнадцатилетнего лучшего клона & большого улучшения — vim) очень много фанатов.


Нет, они не динозавры, которые не хотят идти в ногу со временем — сообщество пользователей vi продолжает увеличиваться: я, который начал только два года назад (после десяти лет работы программистом). Мои друзья переходят на vi сейчас. Черт, большинство пользователей vi даже еще не были рождены, когда он был написан!


Да, есть конкретные причины, почему модель редактирования vi/vim превосходит любую другую. Вам не надо быть экспертом в Unix, чтобы использовать vi — он доступен бесплатно практически для любой существующей платформы; для большинства IDE существуют плагины, позволяющие использовать его возможности. Давайте же развеем некоторые заблуждения и рассмотрим пару примеров, демонстрирующих его превосходство.

Читать дальше →
Всего голосов 172: ↑143 и ↓29+114
Комментарии769

Пол Грэм

Время на прочтение2 мин
Количество просмотров56K
Paul GrahamСколько раз я уже перечитывал статьи Пола Грэма, столько раз я удивлялся его потрясающему умению открывать глаза на вроде бы обычные вещи. И потрясающей способности интересно описывать окружающий нас мир.

Да, это он в 1998 году продал свою компанию Viaweb интернет-гиганту Yahoo, которая впоследствии назвала этот продукт Yahoo Store. Да, это он основал венчурный фонд Y Combinator. Да, это его журнал BusinessWeek включил в список 25 наиболее влиятельных людей в Сети за 2008.

Хотите читать по-настоящему интересные аналитические статьи? Вам однозначно к Полу. Я настоятельно рекомендую прочитать его заметки. Особенно если вы it-шник. Особенно если вы собираетесь открывать свой бизнес.

Читать дальше →
Всего голосов 125: ↑111 и ↓14+97
Комментарии61

30 вопросов, на которые у вас должен быть готов ответ во время собеседования

Время на прочтение4 мин
Количество просмотров36K
image

Чтобы успешно пройти интервью, вам следует создать краткую презентацию и несколько безупречных историй, а также отточить умение улавливать, чего же от вас ждут. Но как этого добиться? Неустанно практикуясь.
Вот 30 вопросов, используемых на поведенческих интервью. Они помогут вам лучше подготовиться к следующей беседе. Чтобы вам было удобнее тренироваться, вопросы разбиты на темы.
Читать дальше →
Всего голосов 40: ↑20 и ↓200
Комментарии15

Искусственные нейронные сети простыми словами

Время на прочтение7 мин
Количество просмотров213K
image

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

Допустим, я знаю о девушке две вещи — симпатична она мне или нет, а также, есть ли о чём мне с ней поговорить. Если есть, то будем считать это единицей, если нет, то — нулём. Аналогичный принцип возьмем и для внешности. Вопрос: “В какую девушку я влюблюсь и почему?”


Можно подумать просто и бескомпромиссно: “Если симпатична и есть о чём поговорить, то влюблюсь. Если ни то и ни другое, то — увольте.”

Но что если дама мне симпатична, но с ней не о чем разговаривать? Или наоборот?
Всего голосов 60: ↑59 и ↓1+58
Комментарии92

Делаем простое веб приложение на Spring Framework MVC

Время на прочтение13 мин
Количество просмотров252K
image
В данной статье я хочу рассказать начинающим Java разработчикам, как написать простое веб приложение, используя популярный фреймворк Spring Framework.

При разрабокте приложения мы будем использовать утилиту Ant для автоматизации действий и изучим, как писать простой тест с помощью библиотеки JUnit. Весь код будем писать в Eclipse IDE.

Статья написана на основе первой части руководства «Introduction to Spring MVC». Вам достаточно иметь лишь общее представление о Spring, чтобы прочитать статью с пользой.

Так что милости просим :)
Читать дальше →
Всего голосов 56: ↑43 и ↓13+30
Комментарии81

Apache Maven — веб приложение

Время на прочтение4 мин
Количество просмотров11K
Если вы уже знаете, что такое Maven и хотите собрать простое модульное веб приложение (если нет- можно прочитать топик о нем и основы). Тема данного топика- как сконфигурировать pom.xml, добавить отдельный модуль к проекту, подключить плагины, развернуть приложение на сервере Apache Tomcat.
Читать дальше →
Всего голосов 11: ↑6 и ↓5+1
Комментарии3

Руководство по проектированию реляционных баз данных (1-3 часть из 15) [перевод]

Время на прочтение7 мин
Количество просмотров437K
Перевод цикла из 15 статей о проектировании баз данных.
Информация предназначена для новичков.
Помогло мне. Возможно, что поможет еще кому-то восполнить пробелы.

Другие части: 4-6, 7-9, 10-13, 14-15.

Руководство по проектированию баз данных.



1. Вступление.

Если вы собираетесь создавать собственные базы данных, то неплохо было бы придерживаться правил проектирования баз данных, так как это обеспечит долговременную целостность и простоту обслуживания ваших данных. Данное руководство расскажет вам что представляют из себя базы данных и как спроектировать базу данных, которая подчиняется правилам проектирования реляционных баз данных.
Читать дальше →
Всего голосов 34: ↑20 и ↓14+6
Комментарии28

5 вещей, которых вы не знали о многопоточности

Время на прочтение10 мин
Количество просмотров293K
Хоть от многопоточности и библиотек, которые её поддерживают, отказываются немногие Java-программисты, но тех, кто нашёл время изучить вопрос в глубину ещё меньше. Вместо этого мы узнаём о потоках только столько, сколько нам требуется для конкретной задачи, добавляя новые приёмы в свой инструментарий лишь тогда, когда это необходимо. Так можно создавать и запускать достойные приложения, но можно делать и лучше. Понимание особенностей компилятора и виртуальной машины Java поможет вам писать более эффективный, производительный код.

В этом выпуске серии «5 вещей …», я представлю некоторые из тонких аспектов многопоточного программирования, в том числе synchronized-методы, volatile переменные и атомарные классы. Речь пойдет в особенности о том, как некоторые из этих конструкций взаимодействуют с JVM и Java-компилятором, и как различные взаимодействия могут повлиять на производительность приложений.
Читать дальше →
Всего голосов 86: ↑77 и ↓9+68
Комментарии40

Garbage Collection наглядно

Время на прочтение10 мин
Количество просмотров286K
В последнее время я работаю с клиентами над вопросами настроек JVM. Смахивает ситуация на то, что далеко не все из разработчиков и администраторов знают о том, как работает garbage collection и о том, как JVM использует память. Поэтому я решил дать вводную в эту тему с наглядным примером. Пост не претендует на то, чтобы покрыть весь объем знаний о garbage collection или настройке JVM (он огромен), ну и, в конце концов, об этом много чего хорошего написано уже в Сети.
Читать дальше →
Всего голосов 70: ↑68 и ↓2+66
Комментарии49

JVM изнутри – организация памяти внутри процесса Java

Время на прочтение2 мин
Количество просмотров120K
Наверное, все, работающие с Java, знают об управлении памяти на уровне, что для ее распределения используется сборщик мусора. Не все, к сожалению, знают, как именно этот сборщик (-и) работает, и как именно организована память внутри процесса Java.
Читать дальше →
Всего голосов 58: ↑39 и ↓19+20
Комментарии16

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность