Kamis, 21 Desember 2023

Tutorial Memperbaiki MySQL Error mysqld: File './binlog.index' not found (OS errno 13 - Permission denied)


 MySQL, sebagai sistem manajemen basis data (DBMS) yang populer, seringkali menjadi tulang punggung aplikasi web dan bisnis. Meskipun andal, pengguna MySQL dapat menghadapi berbagai masalah, salah satunya adalah kesalahan yang cukup umum yang terkait dengan file binlog, yaitu "mysqld: File './binlog.index' not found (OS errno 13 - Permission denied)".

Pesan kesalahan ini menunjukkan bahwa server MySQL tidak dapat menemukan atau mengakses file binlog.index, dan umumnya disebabkan oleh masalah izin (Permission denied). Masalah ini bisa muncul karena server MySQL tidak memiliki hak akses yang cukup untuk membaca atau menulis file binlog.index.

Sabtu, 16 Desember 2023

Lagi, 1 Giga Lebih Foto KTP Mahasiswa dibocorkan Hacker

Dalam sebuah pengungkapan mengejutkan, terjadi kebocoran data yang signifikan, mengancam informasi pribadi warga Indonesia. Data yang terbuka mencakup gambar Kartu Tanda Penduduk (KTP), kartu identitas nasional, beserta foto formal individu. Insiden mengejutkan ini ditemukan oleh sebuah kelompok tak dikenal, yang mengklaim telah mengambil data tersebut dari subdomain tidak dilindungi di **i.edu pada Juli 2023.


Data yang terpengaruh terdiri dari 5121 gambar KTP (1.12 GB tidak terkompres) dan 5488 foto formal (688 MB tidak terkompres), semuanya dalam format JPG. Informasi yang terbuka mencakup detail penting seperti ID nasional (NIK), nama, tempat lahir, tanggal lahir, golongan darah, jenis kelamin, alamat, agama, status perkawinan, pekerjaan, kewarganegaraan, gambar wajah, dan tanda tangan. Sebagian besar gambar KTP adalah kartu ID nasional, tetapi beberapa mungkin termasuk kartu identifikasi lain seperti Kartu Keluarga (KK).

Rabu, 13 Desember 2023

Tutorial Laravel 10 Dashboard Admin - Part 2 Instalasi dan Konfigurasi Awal

Sebelum bisa menggunakan Laravel Orchid, kita harus install package ini. Sebelumnya, kita buat sebuah project dulu. Buat dengan composer create-project:

composer create-project laravel/laravel nama-proyek "10.*" --prefer-dist

ganti nama-proyek dengan kebutuhan.

Selasa, 12 Desember 2023

Tutorial Laravel 10 Dashboard Admin - Part 1 Pendahuluan

Pada bagian pertama dari sesi tutorial Laravel 10 - Dashboard Admin ini kita akan mengenal lebih dulu apa itu package Orchid

Laravel Orchid adalah paket sumber terbuka yang kuat yang menyederhanakan pengembangan dan pembuatan aplikasi bergaya administrasi. Dengan antarmuka yang elegan dan intuitif, para pengembang dapat dengan cepat menerapkan antarmuka yang indah dan fungsional dengan usaha minimal.


Beberapa fitur kunci dari Laravel Orchid meliputi:

Yang baru di FrankenPHP v1.0, Server Khusus PHP yang Dibuat Pakai Golang

FrankenPHP baru saja mencapai tonggak penting minggu ini, mencapai rilis v1.0. FrankenPHP adalah server aplikasi PHP modern yang ditulis dalam bahasa Go, FrankenPHP memberikan kalian server PHP tingkat produksi hanya dengan satu perintah.


Ini mencakup dukungan asli untuk Symphony, Laravel, WordPress, dan lainnya:

Tutorial Flutter: Animasi Blink Pada Teks

Flutter, dengan kerangka UI ekspresifnya, memungkinkan pengembang membuat pengalaman pengguna yang menarik melalui animasi. Dalam posting blog ini, kita akan membongkar sebuah widget Flutter yang disebut TapToScanTicker yang menggabungkan animasi fading in-and-out menggunakan AnimationController dan TweenSequence.

Memahami Widget Flutter

Mari kita mulai dengan memeriksa widget Flutter yang disediakan dalam source code:
class TapToScanTicker extends StatefulWidget {
  const TapToScanTicker({Key? key}) : super(key: key);

  @override
  createState() => _TapToScanTickerState();
}

class _TapToScanTickerState extends State
    with SingleTickerProviderStateMixin {
  late AnimationController _controller;
  late Animation _fadeInOut;

  @override
  void initState() {
    super.initState();

    // Inisialisasi AnimationController
    _controller =
        AnimationController(vsync: this, duration: const Duration(seconds: 2));

    // Buat urutan Tween untuk fading in dan out
    _fadeInOut = TweenSequence([
      TweenSequenceItem(tween: Tween(begin: 0.0, end: 2.0), weight: 2),
      TweenSequenceItem(tween: Tween(begin: 2.0, end: 0.0), weight: 2),
    ]).animate(_controller);

    // Mulai loop animasi
    _controller.repeat(reverse: true);
  }

  @override
  Widget build(BuildContext context) {
    return FadeTransition(
      opacity: _fadeInOut,
      child: Text(
        'Tap to scan'.toUpperCase(),
        style: AppText.b1b?.copyWith(color: AppColors.antiqueRuby),
      ),
    );
  }

  @override
  void dispose() {
    // Dispose AnimationController untuk membebaskan sumber daya
    _controller.dispose();
    super.dispose();
  }
}

Rincian Widget

  • Class TapToScanTicker: Kelas ini adalah stateful widget yang membuat instance dari _TapToScanTickerState.
  • Class _TapToScanTickerState: Kelas state ini memperluas State dan menyertakan SingleTickerProviderStateMixin untuk menyediakan vsync untuk AnimationController.
  • initState: Metode ini menginisialisasi animation controller dan menyiapkan animasi fading in-and-out menggunakan TweenSequence.
  • build: Metode build mengembalikan widget FadeTransition yang menerapkan animasi fading ke widget Text yang menampilkan "Tap to scan".
  • dispose: Metode dispose dipanggil saat widget dihapus dari pohon widget, memastikan bahwa AnimationController dihancurkan dengan benar untuk membebaskan sumber daya.
  • Inti dari widget ini terletak pada logika animasinya. TweenSequence digunakan untuk mendefinisikan urutan tween, menciptakan transisi yang mulus antara nilai-nilai. Dalam kasus ini, animasinya bergantian antara fading in (opacity meningkat) dan fading out (opacity berkurang).
  • Animasi dikontrol oleh AnimationController yang mengulang urutan secara terbalik, menciptakan efek fading in-and-out yang kontinu.

Integrasi Widget

Untuk mengintegrasikan widget TapToScanTicker ke dalam aplikasi Flutter kalian, cukup masukkan ke dalam pohon widget kalian. Contohnya:
class LayarKalian extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: TapToScanTicker(),
      ),
    );
  }
}
Sekarang, kalian memiliki animasi yang halus namun menarik yang mengundang pengguna untuk "Tap to scan" dalam aplikasi Flutter kalian.

Eksperimen dengan widget ini, ubah durasinya, atau sesuaikan gaya teks untuk mengintegrasikannya secara mulus ke dalam desain aplikasi kalian. Kemampuan animasi Flutter memberikan kemungkinan tak terbatas untuk menciptakan antarmuka pengguna yang menyenangkan.

Selamat mencoba lek!