Clean Recycler Adapter. Частина 1

Введення


Списки, списки, списки… Вертикальні, горизонтальні, комбіновані. Практично ні один мобільний додаток не обходиться без них. Більше того, нерідко додатки складаються з одних тільки списків.

І якщо в «однорідних» списках немає нічого страшного, то різні типи комірок вже можуть викликати питання, основні з яких:

  • як полегшити зміна і масштабування типів комірок
  • як мінімізувати кількість місць для зміни, знизивши ризик потенційних помилок
  • як позбутися if-else каліцтва
  • як позбутися потворних перевірок на тип і небезпечних привидів типів

Читати далі →

До конференції «Регулювання криптовалют в Росії: проміжні підсумки» залишилося 3 дні

imageВже в цей четвер 26 січня о 19:00 в Digital October Center відбудеться конференція «Регулювання криптовалют в Росії: проміжні підсумки». В останні місяці ця тема стала особливо актуальною у зв'язку з низкою галузевих подій і публічних заяв.

В кінці листопада минулого року з'явився перший офіційний документ у сфері російського криптовалютного регулювання – лист ФНС Росії від 3 жовтня 2016 року № ОА-18-17/1027 «ПРО заходи щодо здійснення контролю за обігом криптовалют». Один зі спікерів майбутньої конференції – Director, Head of Legal for Tech Group, Deloitte CIS Артем Толкачов проаналізував грудневий документ ФНС. Згідно з коментарем Толкачова, з листа випливає, що здійснення операцій з використанням криптовалют не заборонено.
Читати далі →

З упором на безпеку: побудова керованої з хмари мережі за допомогою обладнання Cisco Meraki MX

При побудові сучасної мережі на перше місце все частіше виходять питання не пропускної здатності, а безпеки і надійності роботи. Як один з варіантів побудови такої мережі, з багатим набором функцій, що забезпечують безпеку і стабільність роботи, пропонуємо розглянути систему безпеки Cisco Meraki MX.



Читати далі →

Області гнучкості

Переклад статті Evan Leybourn «Domain of Agility» виконаний Лілією Алексєєвої (Agile-євангеліст, Ощадбанк) з дозволу автора.

Agile не означає Scrum, а Agility не можна звести тільки до Agile.

Протягом кількох останніх місяців я намагався сформувати просту модель, яка допомогла б розкрити поняття Agility і взаємодія між складовими його елементами. Тепер я хочу представити вам результат цієї роботи — три різні форми гнучкості (Agility) — бізнесу, технічну та процесну. На мій погляд тільки наявність усіх трьох елементів дозволяє нам створити Agile-організацію.


Читати далі →

Стаємо професійними PHP розробниками. Частина 4: Робота в команді на практиці

Пропоную вашій увазі переклад четвертої частини циклу статей «Becoming PHP professional».

» Перша частина. «Відсутня ланка»
» Друга частина. «Важливість інших людей»
» Третя частина. «Робота в команді»

Раніше ми розглянули соціальні аспекти роботи в команді та її плюси і мінуси. Проте, залишилося ще багато речей, на які варто звернути увагу й багато чому навчитися у роботі з іншими людьми.

В цей раз, давайте поговоримо про практичне застосування одержаних знань, зокрема, про віртуальних командах (де всі або деякі члени команди працюють віддалено).

Читати далі →

CodingFuture + Puppet. Частина VI: актуальні чорні списки і захищений стукіт

use cases
Коротко:
  1. Захист сервісів і відкриття портів по стукоту криптографічно стійким і не відтворюваним Single Packet Authorization (SPA) fwknop 2.6.9+.
  2. Динамічно настроюється оновлення чорних списків All Cybercrime IP Feeds by FireHOL.
  3. Повноцінна підтримка
    ipset
    cfnetwork.
  4. Підтримка власних чорних списків.
  5. Типові варіанти застосування.

Читати далі →

Це не ransomware, але в будь-якому випадку може «захопити» Ваш сервер



Цього тижня ми розглянемо «вимагача» (ransomware), який насправді не є таким. І навіть не є шкідливою програмою. Але він здатний «захопити» Ваш сервер.

Кілька днів тому ми бачили типову RDP-атаку через віддалений робочий стіл, яка навела нас на думку, що вона була подібна до тієї атаці, про яку ми розповідали кілька місяців тому і яку кібер-злочинці використовували для зараження пристроїв з допомогою шифровальщика. Але ми сильно помилялися.
Читати далі →

Рефакторинг салону відеопрокату на JavaScript

Моя книга по рефакторінгу в 1999 році починалася з простого прикладу розрахунку і форматування чека для відеомагазинах. На сучасному JavaScript є кілька варіантів рефакторінгу того коду. Тут я викладу чотири з них: рефакторинг функцій верхнього рівня; перехід до вкладеної функції з диспетчером; використовуючи класи; трансформація із застосуванням проміжної структури даних.

Багато років тому, коли я писав книгу по рефакторінгу, я почав з (дуже) простого прикладу рефакторінгу коду, який обчислював рахунок для клієнта за прокат відеофільмів (в ті дні нам потрібно було ходити в салон для цього). Нещодавно я розмірковував про це прикладі, зокрема, як би він виглядав на сучасному JavaScript.

Будь рефакторинг передбачає поліпшення коду в певному напрямку, в тому, яка відповідає стилю програмування команди розробників. Приклад у книзі на Java, а Java (саме в той час) передбачала певний стиль програмування, об'єктно-орієнтований стиль. Однак з JavaScript є набагато більше варіантів, який стиль вибрати. Хоча ви можете дотримуватися Java-подібного об'єктно-орієнтованого стилю, особливо з ES6 (Ecmascript 2015), не всі прихильники JavaScript схвалюють цей стиль. Багато хто дійсно вважають, що використовувати класи Дуже Погано.

Читати далі →

Уроки року боротьби з порушеннями інформаційної безпеки



У 2016 році у мене було дуже багато завдань, пов'язаних з реагуванням на інциденти інформаційної безпеки. Я витратив на них в загальній складності близько 300 годин, самостійно виконуючи необхідні дії або консультуючи фахівців постраждалої сторони. Матеріалом для статті послужили мої записи, зроблені в процесі цієї роботи.
Читати далі →

Sparrow плагіни і Ansible модулі — порівняльний аналіз

Введення
Ansible модулі і sparrow плагіни являють собою будівельні блоки для вирішення найпростіших завдань з області configuration management і автоматизації деплоя. Ansible модулі користуються більш високорівневих сценаріях — плейбуках, написаних на мові YAML, в той час як sparrow плгагины аналогічним чином вбудовуються в sparrowdo сценарії написані на мові Perl6.
Дана стаття — вільний авторський переклад власного оригіналу з англійської.

Читати далі →