Pull to refresh
-2
0
Fraky @fraky

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

Send message

Книга «Head First. Изучаем Go»

Reading time4 min
Views12K
image Привет. Хаброжители! Go упрощает построение простых, надежных и эффективных программ. А эта книга сделает его доступным для обычных программистов. Основная задача Go — эффективная работа с сетевыми коммуникациями и многопроцессорной обработкой, но код на этом языке пишется и читается не сложнее чем на Python и JavaScript. Простые примеры позволят познакомиться с языком в действии и сразу приступить к программированию на Go. Так что вы быстро освоите общепринятые правила и приемы, которые позволят вам называть себя гофером.

Читать дальше →
Total votes 16: ↑13 and ↓3+10
Comments12

Понимание CSS Grid (1 часть): Grid-контейнер

Reading time10 min
Views45K

Приветствую! Представляю вашему вниманию перевод статьи «Understanding CSS Grid: Creating A Grid Container» автора Rachel Andrew


Понимание CSS Grid: Создание Grid-контейнера


Хотя технология CSS Grid стала поддерживаться некоторыми браузерами еще в 2017 году, у многих разработчиков пока не было возможности использовать её в своих проектах. Технология CSS Grid привносит множество новых свойств и значений. Из-за этого может казаться сложной. Однако, многие используемые в ней инструменты являются взаимозаменяемыми, а это значит, что вам не нужно изучать всю спецификацию, чтобы начать. Цель серии статей "Понимание CSS Grid" – провести читателей по пути от новичка до эксперта.


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


В этой статье мы рассмотрим:


  • Создание grid-контейнера с помощью display: grid или display: inline-grid
  • Создание колонок и строк с помощью grid-template-columns и grid-template-rows
  • Управление размерами неявных треков (полос / дорожек) с помощью grid-auto-columns и grid-auto-rows
Total votes 7: ↑7 and ↓0+7
Comments3

Как оценить уровень владения английским языком

Reading time4 min
Views124K


На Хабре много статей о том, как самостоятельно изучать английский язык. Но вот вопрос, а как оценить свой уровень при самостоятельном изучении? Понятно, что есть IELTS и TOEFL, но эти тесты почти никто не сдает без дополнительной подготовки и эти тесты, как говорят, оценивают не сколько уровень владения языком, а скорее умение проходить эти самые тесты. Да и использовать их для контроля самообучения будет накладно.

В этой статье я собрал различные тесты, которые проходил сам. При этом я сверяю свою субъективную оценку владения языком с результатами тестов. А также сравниваю результаты между разными тестами.
Читать дальше →
Total votes 99: ↑95 and ↓4+91
Comments62

Руководство по SQL: Как лучше писать запросы (Часть 1)

Reading time13 min
Views78K

Узнайте о антипаттернах, планах выполнения, time complexity, настройке запросов и оптимизации в SQL


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

Вот почему это руководство по SQL предоставит вам небольшой обзор некоторых шагов, которые вы можете пройти, чтобы оценить ваш запрос:

  • Во-первых, вы начнете с краткого обзора важности обучения SQL для работы в области науки о данных;
  • Далее вы сначала узнаете о том, как выполняется обработка и выполнение запросов SQL, чтобы понять важность создания качественных запросов. Конкретнее, вы увидите, что запрос анализируется, переписывается, оптимизируется и окончательно оценивается.
  • С учетом этого, вы не только перейдете к некоторым антипаттернам запросов, которые начинающие делают при написании запросов, но и узнаете больше об альтернативах и решениях этих возможных ошибок; Кроме того, вы узнаете больше о методическом подходе к запросам на основе набора.
  • Вы также увидите, что эти антипаттерны вытекают из проблем производительности и что, помимо «ручного» подхода к улучшению SQL-запросов, вы можете анализировать свои запросы также более структурированным, углубленным способом, используя некоторые другие инструменты, которые помогают увидеть план запроса; И,
  • Вы вкратце узнаете о time complexity и big O notation, для получения представления о сложности плана выполнения во времени перед выполнением запроса;
  • Вы кратко узнаете о том, как оптимизировать запрос.
Читать дальше →
Total votes 20: ↑11 and ↓9+2
Comments13

Корпоративный слон

Reading time16 min
Views25K
— Так, что у нас? – спросил Евгений Викторович. – Светлана Владимировна, какая повестка? Я за время отпуска, наверное, сильно от дел отстал?

— Не сказать, что прям сильно. Основное вы знаете. Сейчас всё по протоколу, коллеги делают короткие доклады о состоянии дел, задают друг другу вопросы, я ставлю поручения. Всё, как обычно.

— Серьезно? – широко улыбнулся собственник. – А главную новость не будем обсуждать?

— Зачем? – как ни в чем не бывало, пожала плечами директор. – Всё давно уже обсудили, все в курсе. Вы – в том числе.

— Как зачем? – Курчатов вскинул брови. – Не, может я чего не понимаю, конечно, но за пятнадцать лет существования компании я не припомню, чтобы прибыль выросла за один месяц в полтора раза.
Читать дальше →
Total votes 86: ↑62 and ↓24+38
Comments66

Как программист банк выбирал и договора читал

Reading time16 min
Views103K
image
Девять лет назад я написал заметку про то, как не быть обманутыми злыми буратинами. Всё, что там написано не потеряло актуальности, и сегодня мы рассмотрим попытку выбрать банк читая бумаги, а не рекламу. В данной заметке рассмотрены ВТБ, Альфа Банк, Авангард. По этим банкам приведены цитаты из действующих на 22.08.2019 договоров и оценочные суждения автора о приемлемости и удобстве предлагаемых договоров. В целом автор рассмотрел уже 8 банков из топа, и там тоже всё плохо. Рассматриваются только условия договоров, не учитывая процентов по кредитам, депозитам и иные потребительские качества банка.

В моём менеджменте персональных и семейных финансов фигурирует три разных категории финансов:

1. Оперативные финансы — карточка и наличные которыми я пользуюсь ежедневно, магазины, интернет покупки и тп. Ключевые параметры: удобство пользования, качество поддержки, кешбек.

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

3. Инвестиции — различные инвестиционные средства, долговременные. Недвижимость, акции, облигации и тп. Ключевые параметры такие же как у оперативного резерва, кроме ликвидности. Не вижу смысла играть в высокодоходные инвестиции которые может упереть девочка в салоне ООО «Дядя Вася» по франшизе сотового оператора.

В данном случае я выбирал банк для второй категории.
Читать дальше →
Total votes 176: ↑167 and ↓9+158
Comments614

Грамматика английского. Than vs. Then – как понять, какое слово использовать

Reading time2 min
Views20K


Один из самых тонких моментов в грамматике английского языка – выучить, в каких ситуациях использовать то или иное слово. Звучит не очень трудно, но ситуаций вроде “who vs whom”, о которых я писал ранее, в английском очень много. Один из самых распространенных таких вопросов – разница в применении “than и then”.

Я нашел интересный пост с правилами, которые помогут разобраться с этим вопросом. Представляю вашему вниманию адаптированный перевод этого полезного материала.
Читать дальше →
Total votes 33: ↑18 and ↓15+3
Comments9

Ну и где она?

Reading time7 min
Views7.4K
После публикации резюме того парня произошли два хороших события.

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

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

Практику ускорения разработки я давно хотел систематизировать, но не было повода. А потом ко мне обратилась одна компания и предложила разработать курс, чтобы потом его продавать в определенной (чего уж там — 1Сной) среде. Предполагалось, что это будет видеокурс, с какими-нибудь презентациями и заданиями — скукота, в общем. Я решил убить двух зайцев — написать текст, типа книгу, а потом из него уже видеокурс делать. Таким образом, получилось бы два продукта. Минимальными усилиями из нее получился бы и третий.

Структура книги давно известна, что там написать — тоже, надо просто сесть и сделать. Я написал, на данный момент, 6 глав из 20, т.е. ~30%. И, раз пошла такая пьянка, выложить их в виде статей. Девушка, кстати, прочитала только 3 главы.

Сейчас будет первая, вводная глава. Есть небольшая специфика — раз книга, по сути, создавалась на заказ, то она про разработку на 1С. Убрав упоминания 1С, я бы и сделал из нее третий продукт — это заняло бы полдня.

Но сейчас я ничего убирать не стал — читайте, как есть. Если вам кажется, что разработка на 1С и javascript слишком непохожи, то не читайте. Моя жизнь показала, что с точки зрения повышения эффективности разница, конечно, есть — в разработке на javascript еще больше точек приложения усилий и, соответственно, выше ожидаемый эффект. Ну все, поехали.
Читать дальше →
Total votes 58: ↑30 and ↓28+2
Comments38
В этом году московский HighLoad++ побил очередной рекорд, собрав в стенах кампуса Сколково 3096 участников. Под катом подробности двенадцатой по счету конференции. О докладах, спикерах, митапах, выпитых литрах пива, съеденных пирожных, татуировках, чемпионате по Counter-Strike и прочих многочисленных интересностях.
Подробности — под катом
Total votes 30: ↑29 and ↓1+28
Comments4

Для чего хакерам Микротик и как я спрятал 100 тыс. RouterOS от ботнета

Reading time9 min
Views318K
RouterOS очень мощный инструмент в руках профессионалов и ответственных специалистов. Но в руках новичков или тех, кто делает всё на «и так сойдёт» Mikrotik начинает жить своей жизнью и превращается в ноду ботнета.

Ещё в мае 2018 я писал статью с рекомендациями как защитить свой Микротик.

Как ни странно, но в сети до сих пор тысячи «открытых» роутеров Mikrotik и армия ботнета пополняется.

Я в свободное от работы и отдыха время искал уязвимые устройства по всей сети и делал настройки в соответствии со своими рекомендациями, то есть добавлял правила фаервола, которые закрывали доступ к роутеру не из локальной сети. В комментариях писал информацию об уязвимости и оставлял адрес телеграм-канала @router_os, где можно было мне задать интересующие вопросы (у нормального админа они должны были появиться).



С мая по сегодняшний день я «вырвал» из лап ботнета более 100 тысяч устройств Mikrotik.

Учитывая то, что я не могу выступить на MUM 2018 в Москве, то свой доклад я решил опубликовать на habr.com
Читать дальше →
Total votes 81: ↑80 and ↓1+79
Comments115

Математика CSS-шлюзов

Reading time18 min
Views54K

CSS-шлюзом (CSS-lock) называется методика из адаптивного веб-дизайна, позволяющая не перепрыгивать от одного значения к другому, а переходить плавно, в зависимости от текущего размера области просмотра (viewport). Идею и одну из реализаций предложил Тим Браун в статье Flexible typography with CSS locks. Когда я пытался разобраться с его реализацией и создать свои варианты, мне с трудом удавалось понять, что именно происходит. Я выполнил много вычислений и подумал, что полезно будет объяснить другим всю эту математику.

В статье я опишу саму методику, её ограничения и лежащую в её основе математику. Не волнуйтесь: там в основном одни сложения и вычитания. К тому же я постарался всё разбить на этапы и украсил их графиками.
Читать дальше →
Total votes 70: ↑66 and ↓4+62
Comments37

Просто о микросервисах

Reading time11 min
Views257K

Вступление


Чуть ли не каждый второй, кто впервые сталкивается с MSA (Micro Service Architecture), на первых порах восклицает: «Да я эти микросервисы еще …надцать лет назад». Отчасти они правы. И я тоже был из этой самой половины, и не понимал — почему такой шум?



В самом деле! Ведь MSA — это тоже про разработку софта. Какие здесь могут быть революции? Все методики знакомы. В некоторых местах можно даже удивиться: «А разве бывает по-другому»? Фанаты Agile и DevOps тоже скажут, что это всё наше, родное.

Но всё же прошу вас набраться терпения и продолжить читать дальше.
Читать дальше →
Total votes 51: ↑41 and ↓10+31
Comments33

Время Perl

Reading time15 min
Views17K


Perl и CPAN предоставляют множество самых разных инструментов для работы с временем. Традиционный и наиболее известный DateTime вызывает столь же традиционные серьёзные нарекания к скорости работы и потреблению памяти, поэтому он постепенно стал вытесняться из нашей системы альтернативными модулями. TIMTOWDI — это замечательно, но в проекте всё-таки хочется иметь какой-никакой порядок. Поэтому мы решили протестировать несколько самых популярных модулей по скорости, функционалу и удобству использования и выбрать тот самый единственный, который станет нашим основным инструментом.
Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments11

«Простое» программирование на python

Reading time6 min
Views49K


functools (это такая свалка для всяких ненужных мне вещей :-).
— Гвидо ван Россум

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


В статье заимствуются примеры и/или концепции из библиотеки funcy. Во-первых, она клевая, во-вторых, вы сразу же сможете начать ее использовать. И да, нам понадобится ФП.

Читать дальше →
Total votes 59: ↑55 and ↓4+51
Comments88

Git: советы новичкам – часть 1

Reading time8 min
Views141K
В Playrix приходит много новых сотрудников и большинство из них не работали с Git. Особенно это касается гейм-дизайнеров и художников. Хотя и для программистов это не редкость – опыт работы с другими системами контроля версий не слишком помогает. Например, часто встречается опыт работы с SVN. Но Git заметно отличается по идеологии. Заучить, какие кнопки нажимать, в большинстве случаев не сложно, но шаг в сторону – и уже трудно понять, что происходит.



Поэтому мы решили написать ознакомительный материал. Мы поговорим о системе контроля версий и логике её работы, с самых азов. С Git можно работать с помощью  разных клиентов, потому в статье не пойдет речь об интерфейсе пользователя. Это может показаться непривычным, но это сделано намеренно. Вместо этого мы сфокусируемся на рабочем каталоге, коммитах, ветках, командах pull, push и прочих. Когда вы разберетесь в этих понятиях, вам останется выбрать один из Git-клиентов и освоить его интерфейс.
Читать дальше →
Total votes 35: ↑32 and ↓3+29
Comments45

Сине-зеленый деплой

Reading time3 min
Views55K

Я и мои коллеги всегда склоняем своих клиентов полностью автоматизировать процесс деплоя. Автоматизация помогает сократить количество конфликтов и задержек, которые возникают в процессе между "завершением" работы над программой и введением в эксплуатацию. Дэйв Фарли (Dave Farley) и Джез Хамбл (Jez Humble) заканчивают книгу "Непрерывная доставка" (Continuous Delivery) на эту тему. Она основывается на множестве идей, которые в целом связаны с непрерывной интеграцией и подталкивают к возможности быстро пустить софт в работу. Глава о сине-зеленом деплое привлекла мое внимание, потому что это один из малоиспользуемых методов, и я решил кратко его осветить.

Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments12

Подборка интересных CSS-рецептов «Голые пятницы #4»

Reading time5 min
Views60K
голые пятницы

Здравствуй, дорогой читатель хабра!
Сегодня мы поговорим о «липких» блоках, новом свойстве для изображений object-fit, продвинутом использовании CSS-счетчиков, ключевом слове currentColor, и о том, есть ли анимация в z-index.
Читать дальше →
Total votes 39: ↑36 and ↓3+33
Comments32

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

Reading time32 min
Views177K

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

6 книг, которые Билл Гейтс прочитал в 2015 году и рекомендует их всем

Reading time2 min
Views27K
image

В интервью изданию Tech Insider Билл Гейтс рассказал о 6 книгах 2015 года, которые произвели на него впечатление. Сам он читает не менее 50 книг в год, а в рекомендуемую им подборку попали популярные издания по психологии, истории и эпидемиологии. Заметно, что бывшего главу Microsoft больше всего интересуют вопросы психологии как отдельного человека, так и лидера.

«Объясняющий: сложные вещи простыми словами» (Thing Explainer: Complicated Stuff in Simple Words)

Автор книги, бывший сотрудник NASA, также известный комиксами XKCD, Рендолл Монро (Randall Munroe) описывает всевозможные технологически сложные вещи, начиная от смартфона и заканчивая ракетой, ограничиваясь всего 1000 наиболее употребительных английских слов. Биллу Гейтсу эта идея кажется блестящей, поскольку "… если вы не можете объяснить что-то простыми словами, то по-настоящему вы этого не понимаете".
Узнать подробности
Total votes 16: ↑13 and ↓3+10
Comments24

Код с душком (рефакторинг М. Фаулера)

Reading time2 min
Views76K
Всем привет.

Небольшая шпаргалка для новичков, и всех остальных кто забыл, по книге Рефакторинг. Улучшение существующего кода Мартин Фаулер.
Читать дальше →
Total votes 42: ↑20 and ↓22-2
Comments8

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity