Pull to refresh
0
0.2
Александр @SantaCluster

Пользователь

Send message

Улучшение Python-кода: 12 советов для начинающих

Reading time12 min
Views42K
В мои обязанности входит наём Python-разработчиков. Если у заинтересовавшего меня специалиста есть GitHub-аккаунт — я туда загляну. Все так делают. Может быть, вы этого и не знаете, но ваш домашний проект, не набравший ни одной GitHub-звезды, может помочь вам в получении работы.

То же самое относится и к тестовым задачам, выдаваемым кандидатам на должность программиста. Как известно, мы, когда впервые видим человека, формируем первое впечатление о нём за 30 секунд. Это влияет на то, как мы будем, в дальнейшем, оценивать этого человека. Мне кажется несправедливым то, что люди, обладающие привлекательной внешностью, добиваются всего легче, чем все остальные. То же самое применимо и к коду. Некто смотрит на чей-то проект и что-то тут же бросается ему в глаза. Ошмётки старого кода в репозитории — это как крошки хлеба, застрявшие в бороде после завтрака. Они могут напрочь испортить первое впечатление. Может, бороды у вас и нет, но, думаю, вам и так всё ясно.



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

В чём разница между новичком и более опытным разработчиком? Новичок не работал с устаревшими кодовыми базами. Поэтому он не видит ценности в том, чтобы вкладывать время в написание кода, который легко поддерживать. Часто новички работают в одиночку. Они, в результате, не особенно заботятся о читабельности кода.
Читать дальше →
Total votes 43: ↑35 and ↓8+45
Comments18

10 полезных советов для начинающих изучать Django

Reading time5 min
Views21K


1. Используйте относительные пути в конфигурации


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

# settings.py
import os
PROJECT_DIR = os.path.dirname(__file__)
...
STATIC_DOC_ROOT = os.path.join(PROJECT_DIR, "static")
...
TEMPLATE_DIRS = (
    os.path.join(PROJECT_DIR, "templates"),
)
Читать дальше →
Total votes 29: ↑23 and ↓6+31
Comments30

Ключи от шкатулки Пандоры: нулевой пациент Эболы

Reading time9 min
Views42K

Погибли тысячи людей, были потрачены миллиарды долларов, ВОЗ неоднократно предупреждала мир о возможности глобальной пандемии. Невероятными усилиями вспышки останавливали каждый раз, привлекали военных, врачей со всего земного шара. Разворачивались операции по спасению мира с десантом и оцеплением в десятки километров. Сегодня в разработке вакцины участвует весь мир. А слово “Эбола” знает каждый. Но с чего всё началось? Откуда появилось одно из самых опасных и широко разрекламированных заболеваний на планете? Кто он - самый первый нулевой пациент болезни четвертого уровня биологической угрозы?

Читать далее
Total votes 106: ↑98 and ↓8+119
Comments39

«Вирус Марбурга — пандемия в клетке»

Reading time12 min
Views32K

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

Читать далее
Total votes 73: ↑70 and ↓3+87
Comments48

Здравствуй, дорогой я двадцать лет назад

Reading time18 min
Views48K


Жаль, что вряд ли смогу отправить это письмо. А тебе, наверное, было бы интересно узнать, что жизнь и работа у тебя сложились неплохо. А если бы ты это прочитал вовремя, то могли бы сложиться еще лучше. Что касается работы — ты стал вполне приличным специалистом, сегодня тебя уважают, с тобой советуются и некоторые даже благодарны за науку. Очень хочется дать тебе тогдашнему несколько советов. Кое о чем из письма ты и так уже догадываешься, но сегодня я могу точно сказать — оно помогает.

Читать дальше →
Total votes 94: ↑88 and ↓6+111
Comments113

Выводы, которые я сделал, помогая стартапу для секс-чатов повысить конверсию

Reading time6 min
Views11K

Не так давно я писал о закрытии моего агентства UXhot. Но до того, как это случилось, нам довелось поработать над юзабилити одного интересного стартапа.

Читать далее
Total votes 26: ↑19 and ↓7+22
Comments12

Учим физику с ребенком сами, чтобы всем было интересно

Reading time6 min
Views48K

Эта статья будет полезна тем родителям, которые отважились помогать ребенку с физикой. Сегодня узнаем, как правильно пояснять физику на примере таких тем, как инертность, масса, вес и сила тяжести. Бонусом — сделаю обзор нескольких полезных интернет-ресурсов которыми часто пользуюсь сам.

Первым делом определимся, какие могут быть трудности, если существует тонны учебников, видеоуроков, а также видео с опытами? Попробую раскрыть эту проблему.
Total votes 25: ↑25 and ↓0+25
Comments33

Как украсть Macbook

Reading time14 min
Views115K


У меня несколько раз воровали макбуки, и ни разу антикражные средства Apple вроде Find My Mac не помогли мне вернуть компьютер. Действительно ли они бесполезны? Можно ли доверять встроенному шифрованию FileVault? Как повысить шансы вернуть компьютер? Эта статья результат моих страданий в безрезультатных попытках вернуть украденные компьютеры.

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

Внимание!
Материалы в статье представлены исключительно в ознакомительных целях. Все описания мошеннических действий инсценированы и выполнены с согласия владельцев ноутбуков. Автор не призывает к мошенническим действиям, и единственная цель статьи — показать, как лучше настраивать систему, чтобы защитить свои данные.
Total votes 135: ↑133 and ↓2+184
Comments184

Старый и новый CSS. История веб-дизайна

Reading time53 min
Views30K
Я увлеклась веб-дизайном и разработкой в конце 90-х. Чёрт побери, как это было давно. И как это было ужасно. Я имею в виду, что сделать сайт и опубликовать его представляло хитрое дело, а заказчиков можно было пересчитать по пальцам.

Мне казалось, что большинство разработчиков помнят те дни или хотя бы следующее десятилетие, но нет. Недавно мне попался на глаза твит, автор которого удивлялся технике простановки закруглённых углов до появления border-radius (сделать отдельную картинку для каждого закруглённого угла и точно её позиционировать). Я до сих пор помню, как мы затаив дыхание ждали, когда border-radius станет стандартом и с него уберут префикс в браузерах.

С другой стороны, многие лишь слегка попробовали веб-дизайн в старые времена и полагают, что с тех пор ничего не изменилось.

Эта статья для всех. История CSS и веб-дизайна, как я её помню.
Читать дальше →
Total votes 43: ↑43 and ↓0+43
Comments33

О простых вещах-сложно. Письмо химика 3D-печатнику. Растворители для пластмасс и защита от них

Reading time15 min
Views101K
DIY посвящается...

Одним из наиболее часто задаваемых вопросов в моей консультационной практике являются вопросы связанные с растворением/склейкой пластмасс с помощью всевозможных органических растворителей. В последнее время произошел настоящий всплеск интереса к химии высокомолекулярных соединений, связанный с появлением доступных 3D принтеров и необходимостью ориентироваться в «чернилах» для них (т.е. полимерных нитях-филаментах). Лишний раз убеждаюсь в том, что ни один, даже самый продвинутый «музей науки» с эффектным шоу не может так заставить IT-шника интересоваться пластмассами, как собственный 3D-принтер. Так что, читатель, если тебе хоть раз приходилось думать чем склеить пластмассу, которую не клеил default-ный суперклей, если мучали сомнения по поводу растворения поддержек свежеотпечатанной детали, да и просто интересно, чем можно отмыть клей от магазинного ценника на подарке — прошу под кат. Также настоятельно рекомендую страницу отправить в закладки не только тем, кто часто занимается склеиванием пластмасс, но и всем тем, кому часто приходится работать с различными растворителями/разбавителями. Делалось для себя — подарено Хабру!

Читать дальше →
Total votes 115: ↑114 and ↓1+113
Comments194

Опыт создания игры для Android в одиночку с нуля и как ее зафичерили на Google Play

Reading time3 min
Views108K
Привет! Меня зовут Ибрагим, я — начинающий инди-разработчик. У меня всегда было желание заняться программированием, но меня отпугивала сложность и неопределенность выбора (что именно изучать и делать). И лишь 2 года назад я все-таки преодолел этот психологический барьер, смог высвободить достаточно времени, и решил уже основательно подойти к задаче. Я был решительно настроен найти и освоить профессию, от которой я бы получал кайф.

Сужать круг поиска, чем именно заниматься, было тяжело. Знакомых в этой области не было, поэтому решил отталкиваться от каких-то общих соображений. Так как в приоритете было в первую очередь найти что-то интересное, выбор пал на геймдев. Понравилась идея для начала сделать простенькую 2D-игру под Android и выложить на Google Play.
Читать дальше →
Total votes 26: ↑21 and ↓5+16
Comments23

Pritunl — VPN-сервер для себя и друзей за 10 минут

Reading time2 min
Views102K


В связи с последними событиями в России хочу рассказать вам о классном self-hosted VPN-сервере. После простой установки, без особого труда и углубленных знаний вы сможете создавать пользователей, генерировать VPN-профили и смотреть графики использования сети.


А обеспечив VPN-подключением себя и ваших близких, вы можете попробовать разделить траты за виртуальный сервер с вашими друзьями и знакомыми.


В результате чего пятидоллоравая VPS'ка может превратится в мощный инструмент обхода блокировок

Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments95

Job-туризм

Reading time5 min
Views20K
UPDATE 2018-02-04: Еще одна мудрость со временем накипела: если хочется полной свободы выбора компаний любого размера, то лучше сразу говорить, что вы нашли хорошую компанию по релокейту и всё, что требуется, это финансовая поддержка. Деньги тут есть (особенно у страртапов), а времени — нет.

UPDATE 2017-03-19: По опыту двоих приятелей из Берлина (из России и Коста-Рики) могу обнадёжить, голубую карту могут сначала не дать, а через полгода таки дать прямо в Германии. Немцы тоже люди и их чиновники тоже умеют и искренне заблуждаться, и нарочно упираться.

UPDATE 2017-01-08: год спустя поимел опыт поиска и найма фронтендеров для двух компаний. Заявляю, что хорошего кандидата, подписавшего договор, готовы ждать месяц-два. Меня один средних размеров стартап согласился ждать 4 месяца после очного интервью. Так что заехать себя показать, а потом начать удаленно и через пару месяцев перебраться — вообще шоколад.

UPDATE 2016-09-02: полгода спустя немного подросла нижняя планка з/п для голубой карты, а остальное пока в силе.

UPDATE: по просьбе chilicoder добавляю ремарку: «автор смог переехать и найти работу даже без признанного диплома».

В поисках работы за рубежом наблюдается квантовая запутанность между офером и визой. Чтобы получить визу надо иметь офер, а чтобы получить офер лучше иметь визу. Распутаем их, сообщив достаточный импульс точке опоры.
Распутать!
Total votes 13: ↑12 and ↓1+11
Comments25

FFMPEG. Загружаем часть видео с YouTube

Reading time2 min
Views30K

Иногда мы хотим поделиться с друзьями частью какого то видео на YouTube — время концентрации внимания в современной реальности снижено до предела, и если скидывать ссылку на ролик(даже с таймкодом начала) с комментарием «смотреть с 21:51 по 24:55» — велика вероятность, что видео просмотрено не будет.

Кроме того — куски видео могут потребоваться для монтажа своих роликов — и довольно неудобно скачивать ради нескольких секунд весь ролик и искать/вырезать нужную часть в программе для монтажа.

Как загружать часть видео YouTube при помощи ffmpeg — под катом
Читать дальше →
Total votes 32: ↑30 and ↓2+28
Comments20

15 когнитивных искажений

Reading time9 min
Views181K
Люди сталкиваются с большим объёмом информации, часть из которой достоверна, а часть освещает интересующую область односторонне, а иногда и сознательно искажённо.

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



Начнём с того, что люди не всегда мыслят рационально. Это данность, которая обусловлена принципами работы нашего интеллекта, выработанными в процессе эволюции. Условно, представим разум, разделённый на две Системы. Устройство разума не так однозначно, но описанное упрощение позволит понять причины искажений. Первая система генерирует решения и гипотезы быстро «если коснёмся горячего предмета, то отдёрнем руку». Вторая, принимает решения путём логических рассуждений. Первая Система генерирует гипотезы, а вторая принимает их или отвергает. Такой способ мышления медленный и энергозатратный. Логическое рассуждение используется людьми реже и требует больших усилий. Это причина большинства когнитивных искажений.

Так, галочка «по умолчанию согласен» позволила увеличить количество согласных на донорство до 86% в Швеции, тогда как в Дании, где при получении прав нужно самостоятельно ставить согласие, т. е. принимать осознанный выбор, количество согласных на донорство 4%.
Читать дальше →
Total votes 63: ↑62 and ↓1+61
Comments114

Почему не стоит использовать LocalStorage

Reading time7 min
Views93K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Please Stop Using Local Storage" автора Randall Degges.


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

Читать дальше →
Total votes 38: ↑22 and ↓16+6
Comments42

Цвет в дизайне

Reading time4 min
Views73K
Нет надобности расписывать, как важен цвет в дизайне. Удачное цветовое решение — это уже половина успеха проекта. В помощь развивающимся дизайнерам — немного теории цветового круга и подборка ссылок на полезные ресурсы.



Базовый цветовой круг пригодится в выборе наиболее подходящего сочетания цвета (или поможет гармонично совместить между собой определенные оттенки). Он изображает базовые и известные еще со школы правила смешивания основных цветов: красного, синего и желтого. Если смешать красный и желтый — получится оранжевый, синий и желтый дадут зеленый, а красный с синим — фиолетовый. Оранжевый, зеленый и фиолетовый — это вторичные цвета. Третичные цвета, как красно-фиолетовый и фиолетово-синий, получены от смешивания основных с вторичными.

Читать дальше →
Total votes 31: ↑25 and ↓6+19
Comments10

21 бесплатный учебный ресурс для разработчиков игр

Reading time8 min
Views134K
В интернете полным-полно создателей контента, и каждый хочет привлечь к себе внимание. Но, как ни странно, хороший учебный ресурс найти нелегко, а бесплатный – еще сложнее. Мы публикуем перевод материала, в котором автор собрал ссылки на самые авторитетные и полезные обучающие площадки.


Читать дальше →
Total votes 32: ↑31 and ↓1+30
Comments7

Коллекция практических советов и заметок по вёрстке

Reading time32 min
Views179K

CSS Refresher


Это большая коллекция практических советов и заметок по вёрстке. Своеобразная памятка для тех, кто каждодневно использует CSS. Освещаются самые разные темы, от деталей поведения плавающих элементов до использования SVG и спрайтов. Проект постоянно обновляется, активное сообщество github также принимает в нем участие, там добавляются интересные замечания, о которых, возможно, вы и не слышали.

От переводчика


Приветствую всех, меня зовут Максим Иванов, и сегодня я подготовил для вас перевод заметок разработчика из Сан-Франциско Васанта Кришнамурти (Vasanth Krishnamoorthy) «CSS Refresher». Web-программирование одна из самых быстро развивающихся отраслей в наше время. Казалось бы, возьми какой-нибудь видеокурс на tuts+ и освой html-верстку, однако, как говорил разработчик Opera Software Вадим Макеев, выступая на конференции CodeFest, они все равно это делают плохо. Но давайте посмотрим, может мы итак все это знаем.

Содержание


  1. Позиционирование (position)
  2. Отображение элемента в документе (display)
  3. Плавающие элементы (float)
  4. CSS селекторы
  5. Эффективные селекторы
  6. Переотрисовка и перерасчет
  7. CSS3 свойства
  8. CSS3 медиа-запросы
  9. Адаптивный web-дизайн
  10. CSS3 переходы
  11. CSS3 анимации
  12. Масштабируемая векторная графика (SVG)
  13. CSS спрайты
  14. Вертикальное выравнивание
  15. Известные проблемы

Читать дальше →
Total votes 40: ↑37 and ↓3+34
Comments33

Information

Rating
2,502-nd
Location
Тюменская обл. и Ханты-Мансийский АО, Россия
Registered
Activity