Всі статті

Чому не варто використовувати OFFSET і LIMIT для посторінкового виводу

Пройшли ті дні, коли не треба було турбуватися про оптимізацію продуктивності баз даних. Час не стоїть на місці. Кожен новий бізнесмен зі сфери високих технологій хоче створити черговий Facebook, праг...
09 серпня 2020 ·
1
· 244 · Alex

Як написати власну файлову систему на Rust?

Дані що створюються програмами необхідно десь зберігати для подальшого використовування, і вони повинні бути якось структуровані, щоб ми могли швидко знайти необхідну інформацію. Файлова система (ФС)...
31 жовтня 2020 ·
2
· 264 · Alex

LINQ. Огляд

В цій статті пропоную розглянути LINQ як важливий компонент .NET фреймворку, його історію та роль. Чому він був створений і як врешті користуватись цим інструментом. В кінці розглянемо приклади на мов...
01 серпня 2020 ·
2
· 929 · Oleksandr Martyniuk

Жадібні алгоритми

Жадібний алгоритм - інтуїтивний та ефективний спосіб розв'язання задач оптимізації. І хоча його реалізація приваблює своєю очевидністю, він не завжди оптимальний. Необхідно точно розуміти, коли застос...
30 липня 2020 ·
2
· 3.8K · Oleksandr Martyniuk

15 порад по Git для ефективної роботи кожен день

Ця замітка — спроба пояснити ті базові налаштування і прийоми, якими я користуюся кожен день. Рецепти не претендують бути ноу-хау, але можуть допомогти з освоєнням щоденної гігієни роботи з репо...
31 липня 2020 ·
2
· 557 · Alex

Іменовані аргументи в PHP 8

Іменовані аргументи або іменовані параметри, як їх часто називають, підтримуються в PHP 8. В цій статті розглянемо їх докладніше, але спочатку дозвольте показати як вони виглядають на декількох прикла...
26 липня 2020 ·
1
· 305 · Alex

Як Django може обробляти 100 мільйонів запитів на добу

Сьогодні я буду писати про Django - фреймворк, який вірно служить мені протягом останніх п'яти років. Він допоміг мені досягти успіху в розробці високонавантажених рішень, що використовують сьогодні м...
25 липня 2020 ·
2
· 254 · Alex

Чи варто переходити з Python на Nim заради продуктивності?

Nim — це поєднання синтаксису Python і продуктивності C Кілька тижнів тому я бродив по GitHub і натрапив на цікавий репозиторій: проєкт був повністю написаний на мові Nim. До цього я з ним не с...
23 липня 2020 ·
1
· 309 · Alex

Як простіше всього перейти з macOS на Linux

Linux дозволяє робити майже те ж саме, що і macOS. І мало того: це стало можливим завдяки розвиненій open source спільноті. Одна з історій переходу з macOS на Linux в цьому перекладі. Минуло майже два...
25 липня 2020 ·
0
· 467 · Alex

Маловідомі CSS-властивості

Існує багато CSS-властивостей, про які деякі дизайнери просто не знають. Або знають, але забувають використовувати ці властивості там, де вони здатні принести велику користь. Деякі з цих властивостей...
20 липня 2020 ·
2
· 475 · Alex

Вступ до асинхронного програмування на Python

Асинхронне програмування – це вид паралельного програмування, в якому якась одиниця роботи може виконуватися окремо від основного потоку виконання програми. Коли робота завершується, основний по...
14 липня 2020 ·
1
· 1.1K · Alex

Tsunami — масштабований сканер безпеки від Google

Компанія Google відкрила вихідні коди сканера Tsunami — рішення для виявлення небезпечних уразливостей з мінімальною кількістю помилкових спрацьовувань. Tsunami відрізняється від сотень інших ск...
12 липня 2020 ·
0
· 81 · Alex

А ви можете вирішити ці три (оманливо) прості задачі на Python?

З самого початку свого шляху як розробника програмного забезпечення я дуже любив порпатися в нутрощах мов програмування. Мені завжди було цікаво, як влаштована та чи інша конструкція, як працює та чи...
12 липня 2020 ·
1
· 1.4K · Alex

Redis на практичних прикладах

Redis — досить популярний інструмент, який з коробки підтримує велику кількість різних типів даних і методів роботи з ними. У багатьох проєктах він використовується в якості шару кешування, але...
09 липня 2020 ·
1
· 622 · Alex

gogrep: структурний пошук і заміна Go коду

Gogrep — це одна з моїх найулюбленіших утиліт для роботи з Go. Вона дозволяє знаходити код за синтаксичними шаблонами, фільтрувати результати за типами виразів, а також виконувати заміну (т...
07 липня 2020 ·
1
· 116 · Alex

Розуміння JIT в PHP 8

TL;DR Компілятор Just In Time в PHP 8 реалізований як частина розширення Opcache і покликаний компілювати операційний код в інструкції процесора в рантаймі.Це означає, що з JIT деякі операційні коди...
06 липня 2020 ·
3
· 767 · Alex

Python і розробка простого веб-застосунку, який використовує технології машинного навчання

Ті, хто займається машинним навчанням (Machine Learning, ML), зазвичай, реалізуючи різні проєкти, виконує наступні дії: збір даних, їх очищення, розвідувальний аналіз даних, розробка моделі, публікаці...
04 липня 2020 ·
1
· 397 · Alex

Google працює над підтримкою Steam у Chrome OS через віртуальну машину з Ubuntu

Google розвиває проєкт Borealis, націлений на надання в Chrome OS можливості запуску ігрових програм, що розповсюджуються через Steam. Реалізація базується на застосуванні віртуальної машини, в якій з...
03 липня 2020 ·
0
· 89 · Alex

Нейромережа розпізнає ківі для селективного збору врожаю

Точні та стійкі методи розпізнавання ківі — це одна з відкритих проблем у створенні роботів для селективного збору врожаю. Системи комп'ютерного зору постають перед такими труднощами, як зміна с...
02 липня 2020 ·
0
· 31 · Alex

Творець СУБД Redis передав супровід проекту спільноті

Сальвадор Санфіліппо (Salvatore Sanfilippo), творець СУБД Redis, оголосив, що він більше не буде займатися супроводом проєкту і присвятить свій час чому-небудь іншому. За словами Сальвадора, останні р...
01 липня 2020 ·
0
· 48 · Alex

5 сучасних альтернатив старих інструментів командного рядка Linux

Використовуючи сучасніші альтернативи поряд зі старими інструментами командного рядка, можна отримати більше задоволення і навіть підвищити продуктивність праці. У повсякденній роботі в Linux / Unix...
30 червня 2020 ·
2
· 311 · Alex

Гвідо ван Россум запропонував включити в Python оператори для зіставлення із зразком

Гвідо ван Россум (Guido van Rossum) представив на розгляд спільноті чернетку специфікації для реалізації в мові Python операторів для зіставлення зі зразком (match і case). Слід зазначити, що пропозиц...
29 червня 2020 ·
0
· 144 · Alex

Реліз дистрибутиву Linux Mint 20

Представлено реліз дистрибутиву Linux Mint 20, який перейшов на пакетну базу Ubuntu 20.04 LTS. Дистрибутив повністю сумісний з Ubuntu, але істотно відрізняється підходом до організації інтерфейсу кори...
28 червня 2020 ·
1
· 225 · Alex

Стабільний випуск СУБД MariaDB 10.5

Після року розробки та чотирьох попередніх випусків підготовлений перший стабільний реліз нової гілки СУБД MariaDB 10.5, у рамках якої розвивається відгалуження від MySQL, зберігає зворотну сумісність...
25 червня 2020 ·
0
· 137 · Alex