Feed aggregator

Tiny 'Micro-Robots' in your Bloodstream Could Deliver Drugs with Greater Precision

Slashdot.org - Sat, 11/22/2025 - 10:34
The Washington Post reports: Scientists in Switzerland have created a robot the size of a grain of sand that is controlled by magnets and can deliver drugs to a precise location in the human body, a breakthrough aimed at reducing the severe side effects that stop many medicines from advancing in clinical trials... "I think surgeons are going to look at this," [said Bradley J. Nelson, an author of the paper in Science describing the discovery and a professor of robotics and intelligent systems at ETH Zurich]. I'm sure they're going to have a lot of ideas on how to use" the microrobot. The capsule, which is steered by magnets, might also be useful in treating aneurysms, very aggressive brain cancers, and abnormal connections between arteries and veins known as arteriovenous malformations, Nelson said. The capsules have been tested successfully in pigs, which have similar vasculature to humans, and in silicone models of the blood vessels in humans and animals... Nelson said drug-ferrying microrobots of this kind may be three to five years from being tested in clinical trials. The problem faced by many drugs under development is that they spread throughout the body instead of going only to the area in need... A major cause of side effects in patients is medications traveling to parts of the body that don't need them. The capsules developed in Switzerland, however, can be maneuvered into precise locations by a surgeon using a tool not that different from a PlayStation controller. The navigation system involves six electromagnetic coils positioned around the patient, each about 8 to 10 inches in diameter... The capsules are made of materials that have been found safe for people in other medical tools... When the capsule reaches its destination in the body, "we can trigger the capsule to dissolve," Nelson said.

Read more of this story at Slashdot.

Panduan Memilih Situs Slot Online yang Aman dan Terpercaya

dancingpenguinsoflight.com - Tue, 11/18/2025 - 23:09

Bermain situs slot online memang mengasyikkan. Ada sensasi memutar gulungan, menunggu simbol jackpot muncul, dan tentu saja peluang menang besar yang bisa mengubah hari kamu. Namun, pengalaman ini bisa berubah menjadi mimpi buruk jika salah memilih situs. Banyak pemain baru yang tergiur bonus besar, tapi akhirnya kecewa karena situs ternyata tidak aman atau tidak membayar kemenangan.

Dalam panduan ini, kita akan membahas cara memilih situs slot online yang aman dan terpercaya, mulai dari lisensi resmi, keamanan, penyedia game, hingga tips untuk pemula agar tidak terjebak penipuan.

1. Ciri-Ciri Situs Slot Online yang Aman dan Terpercaya

Memilih situs slot online yang aman adalah langkah pertama agar pengalaman bermain tetap menyenangkan dan bebas risiko. Selain lisensi, keamanan, dan reputasi, ada banyak faktor lain yang bisa menjadi indikator situs terpercaya. Berikut ciri-cirinya secara lengkap:

Mengantongi Lisensi Resmi Internasional

Salah satu tanda paling penting dari situs resmi adalah lisensi dari regulator terpercaya. Misalnya:

  • PAGCOR – regulator dari Filipina yang mengatur perjudian online.
  • MGA (Malta Gaming Authority) – dikenal ketat di Eropa.
  • Curacao eGaming – populer untuk operator Asia.
  • BMM Testlabs / iTech Labs – pihak ketiga yang mengaudit fairness game.

Lisensi ini memastikan bahwa permainan adil dan situs diawasi secara legal. Jadi, sebelum daftar, cek selalu lisensi yang ditampilkan.

Sistem Keamanan yang Terbukti

Keamanan adalah faktor utama yang sering diabaikan pemain baru.

  • SSL 256-bit: Semua data pemain terenkripsi.
  • Proteksi Firewall: Menghindari hacker dan akses ilegal.
  • Enkripsi Data: Menjaga informasi pribadi, nomor rekening, dan saldo tetap aman.

Berdasarkan pengalaman pemain, Situs Slot dengan sistem keamanan kuat biasanya lebih jarang mengalami masalah pencurian akun atau delay pembayaran.

Transparansi dan Reputasi Situs Slot
  • Review Pemain: Cari testimoni asli di forum atau grup Telegram.
  • Lama Operasi Website: Situs Slot yang bertahan 3–5 tahun lebih stabil.
  • Bukti Riwayat Pembayaran: Situs Slot terpercaya menampilkan bukti WD secara konsisten.

Contoh: Pemain yang baru mendaftar di Situs Slot resmi biasanya bisa melihat bukti WD harian dari pemain lain, sehingga menambah rasa percaya.

2. Penyedia Game Slot yang Bekerjasama Provider Terkenal dan Legal

Situs Slot Online terpercaya biasanya bekerja sama dengan provider terkenal. Provider resmi ini menjamin kualitas permainan, RNG yang adil, dan pembayaran yang transparan. Berikut detail beberapa provider populer:

Pragmatic Play
  • Kekuatan: Slot dengan grafis tajam, tema variatif, dan fitur bonus menarik.
  • Game Populer: Sweet Bonanza, The Dog House Megaways, Gates of Olympus.
  • Keunggulan: Fitur Buy Spin dan Free Spin banyak memberi peluang kemenangan besar.
  • Tips: Cocok untuk pemain yang suka volatilitas tinggi dan jackpot besar.
  • Pengalaman Pemain: Banyak yang melaporkan jackpot muncul di jam malam sekitar 22.00–01.00.
PG Soft
  • Kekuatan: Mobile-friendly, cocok untuk bermain di ponsel dengan animasi halus.
  • Game Populer: Medusa II, Candy Burst, Dragon Hatch.
  • Keunggulan: Volatilitas sedang, RTP cukup stabil.
  • Tips: Ideal untuk pemula karena kemenangan lebih sering meski nominal lebih kecil.
  • Pengalaman Pemain: Pemain yang sering bermain di jam siang cenderung mendapat kemenangan rutin kecil.
Habanero
  • Kekuatan: Game cepat dan interaktif, banyak bonus mini di dalam permainan.
  • Game Populer: Hot Hot Fruit, Lucky Lady’s Charm, Highway Kings.
  • Keunggulan: Cocok untuk pemain yang ingin game cepat dan sensasi dinamis.
  • Tips: Mainkan slot dengan volatilitas rendah dulu untuk membiasakan strategi.
  • Pengalaman Pemain: Bonus mini sering muncul di tengah putaran, menambah peluang menang.
CQ9
  • Kekuatan: Provider Asia dengan tema unik, sering menghadirkan jackpot progresif.
  • Game Populer: Fortune Lion, Magic Cauldron, Double Fortune.
  • Keunggulan: Jackpot progresif besar bisa mengubah kemenangan pemain dengan cepat.
  • Tips: Main di jam gacor malam hari untuk peluang jackpot lebih tinggi.
  • Pengalaman Pemain: Banyak pemain melaporkan jackpot besar muncul sekitar akhir pekan.
Joker Gaming
  • Kekuatan: Slot klasik hingga modern, mudah dimainkan dengan volatilitas sedang.
  • Game Populer: Joker Jewels, Roma, Dragon of Fortune.
  • Keunggulan: RTP transparan dan mekanisme fair play jelas.
  • Tips: Cocok untuk pemain yang mencari kombinasi kemenangan sering dan jackpot sedang.
  • Pengalaman Pemain: Game klasik seperti Roma sering menjadi favorit komunitas karena mudah menang dan sensasi slot tradisional tetap terasa.
Microgaming
  • Kekuatan: Salah satu provider tertua, terkenal dengan jackpot progresif.
  • Game Populer: Mega Moolah, Thunderstruck II, Immortal Romance.
  • Keunggulan: Jackpot besar bisa mencapai miliaran, volatilitas tinggi.
  • Tips: Cocok untuk pemain yang menargetkan kemenangan besar dan sabar bermain.
  • Pengalaman Pemain: Jackpot Mega Moolah sering muncul di akhir pekan atau malam hari.
NetEnt
  • Kekuatan: Grafis superior, animasi halus, game inovatif.
  • Game Populer: Starburst, Gonzo’s Quest, Dead or Alive II.
  • Keunggulan: Fitur free spin interaktif, RTP tinggi.
  • Tips: Mainkan game dengan RTP tinggi untuk peluang menang lebih stabil.
Play’n GO
  • Kekuatan: Slot inovatif dengan tema kreatif.
  • Game Populer: Book of Dead, Reactoonz, Fire Joker.
  • Keunggulan: Volatilitas tinggi, cocok untuk pemain yang mencari sensasi besar.
  • Tips: Main di jam gacor malam untuk memaksimalkan peluang free spin.
Yggdrasil
  • Kekuatan: Slot 3D dengan efek visual dan animasi premium.
  • Game Populer: Vikings Go Berzerk, Holmes and the Stolen Stones, Golden Fish Tank.
  • Keunggulan: Bonus interaktif dan fitur wild unik.
  • Tips: Cocok untuk pemain yang ingin sensasi slot berbeda dari mainstream.
Red Tiger
  • Kekuatan: Slot volatilitas tinggi dengan jackpot harian dan mingguan.
  • Game Populer: Dragon’s Fire, Pirates’ Plenty, Dynamite Riches.
  • Keunggulan: Jackpot harian memberikan peluang menang ekstra.
  • Tips: Main di jam gacor malam hari untuk jackpot lebih sering.
Blueprint Gaming
  • Kekuatan: Slot inovatif dengan tema film, musik, dan budaya pop.
  • Game Populer: The Goonies, Ted, Genie Jackpots.
  • Keunggulan: Jackpot progresif, bonus unik, volatilitas sedang-tinggi.
  • Tips: Pilih game dengan RTP tinggi untuk kemenangan lebih konsisten.
Evoplay
  • Kekuatan: Slot 3D dan mini-game interaktif.
  • Game Populer: Necromancer, Medusa: Quest for Power, Tales of Darkness.
  • Keunggulan: Gameplay inovatif dan grafis cinematic.
  • Tips: Cocok untuk pemain yang suka slot immersive dan story-driven.
 Spinomenal
  • Kekuatan: Game slot dengan bonus free spin besar dan tema kreatif.
  • Game Populer: Book of Gold: Multichance, Magic Stars 3, Hot 777.
  • Keunggulan: RTP jelas, volatilitas menengah, bonus free spin sering muncul.
  • Tips: Cocok untuk pemain yang mencari kemenangan rutin kecil hingga sedang.
Pragmatic Play Live
  • Kekuatan: Fokus pada live casino dengan dealer profesional.
  • Game Populer: Live Blackjack, Live Roulette, Live Baccarat.
  • Keunggulan: Menyediakan pengalaman kasino nyata online.
  • Tips: Cocok untuk pemain yang ingin sensasi dealer nyata tanpa pergi ke kasino.
Mengapa Memilih Provider Terkenal Penting
  1. Fair Play – Semua provider resmi diaudit oleh pihak ketiga (iTech Labs / BMM Testlabs).
  2. RTP Transparan – Memberi peluang menang yang jelas.
  3. Keamanan & Stabilitas – Game lebih stabil, anti lag, dan cocok untuk mobile maupun desktop.
  4. Varian Game Lengkap – Dari slot klasik, slot modern, hingga jackpot progresif.

Tip: Pilih provider sesuai gaya bermainmu. Pemula bisa mulai dengan PG Soft atau Joker Gaming. Pemain berani dengan target jackpot besar bisa pilih Pragmatic Play atau CQ9.

Ragam Game dan RTP Jelas
  • Info RTP Harian: Mempermudah pemain memilih slot dengan peluang menang terbaik.
  • Fitur Scatter & Buy Spin: Menambah sensasi bermain dan peluang bonus.
  • Volatilitas Slot: Slot volatil tinggi memberi jackpot besar tapi jarang menang, sedangkan slot volatil rendah sering menang kecil.

Tips: Catat jam gacor favoritmu berdasarkan pengalaman pemain lain. Banyak situs menampilkan data RTP harian yang bisa dijadikan acuan.

3. Proses Deposit dan Withdraw yang Cepat Metode Pembayaran Lengkap

Situs terpercaya menyediakan berbagai metode, misalnya:

  • Bank lokal
  • E-wallet (DANA, OVO, GoPay)
  • Pulsa
  • QRIS
Kecepatan Transaksi
  • Waktu Proses WD: Idealnya kurang dari 24 jam.
  • Verifikasi Aman: Sistem otomatis atau manual, tapi cepat dan aman.
  • Bukti WD & Transparansi: Pemain bisa melihat bukti transaksi secara real-time.

Pengalaman: Banyak pemain pemula memilih Situs Slot hanya karena bonus besar, tapi akhirnya kecewa karena withdraw lama dan tidak jelas.

4. Layanan Customer Service 24 Jam Fast Response

Situs Slot terpercaya menyediakan CS yang cepat merespons pertanyaan, keluhan, atau bantuan teknis.

Banyak Channel Layanan
  • Livechat
  • WhatsApp
  • Telegram

Contoh: Pemain yang mengalami kendala login di malam hari bisa langsung menghubungi CS via WhatsApp, dan masalah terselesaikan dalam beberapa menit.

5. Bonus, Promosi, dan Program Member Bonus Tidak Berlebihan

Situs Slot aman menawarkan bonus wajar agar tidak menimbulkan ketergantungan. Bonus terlalu tinggi sering menipu dengan syarat yang menyulitkan pemain.

Syarat & Ketentuan Jelas
  • Turnover: Minimal jumlah taruhan untuk klaim bonus.
  • Batas Withdraw: Tidak menyulitkan penarikan kemenangan.
  • Masa Berlaku Bonus: Tercantum jelas di syarat dan ketentuan.

Tips: Selalu baca S&K sebelum menerima bonus agar tidak salah paham.

6. Tips Memilih Situs Slot Online bagi Pemula

Bagi pemula, memilih Situs Slot Online yang tepat bisa menentukan pengalaman bermain yang menyenangkan dan bebas risiko. Berikut beberapa tips penting:

1. Cek Rating Situs

Sebelum mendaftar, selalu cek rating dan review situs dari forum atau website terpercaya.

  • Situs dengan rating tinggi biasanya memiliki reputasi baik, pembayaran cepat, dan customer service responsif.
  • Perhatikan review negatif: apakah masalahnya terkait teknis minor atau masalah serius seperti withdrawal tertunda atau penipuan.

Contoh: Pemain baru yang memeriksa rating di forum Telegram biasanya lebih aman karena mereka bisa melihat pengalaman pemain lain dalam waktu nyata.

2. Bandingkan Kemenangan Pemain Lain

Melihat bukti kemenangan pemain lain bisa memberi gambaran apakah situs membayar secara konsisten.

  • Cari screenshot WD, riwayat transaksi, atau testimoni di grup komunitas.
  • Perhatikan pola: apakah kemenangan datang secara rutin atau sporadis.

Tips: Pemula disarankan untuk mencoba deposit kecil dulu untuk melihat proses WD sebelum bermain besar.

3. Pilih Situs dengan Komunitas Aktif

Situs Slot dengan komunitas aktif di Telegram atau WhatsApp memberi banyak keuntungan:

  • Update RTP harian, jam gacor, dan promo terbaru.
  • Bisa tanya tips strategi dari pemain berpengalaman.
  • Mendapat informasi terbaru jika ada gangguan server atau maintenance.

Pengalaman pemain: Bergabung di grup komunitas membantu pemain baru mengetahui jam gacor favorit provider tertentu, sehingga peluang menang lebih tinggi.

4. Periksa Provider Game yang Tersedia

Situs Slot terpercaya bekerja sama dengan provider terkenal (Pragmatic Play, PG Soft, Habanero, CQ9, Joker Gaming).

  • Provider resmi menjamin RNG adil dan RTP transparan.
  • Pemula bisa memilih slot dengan volatilitas rendah dulu, agar kemenangan lebih sering dan risiko lebih kecil.
7. Rekomendasi Situs Slot Online Gacor & Terpercaya

Memilih Situs Slot Online gacor bukan sekadar soal bonus besar. Pemain berpengalaman biasanya melihat reputasi, pengalaman WD pemain lain, dan RTP harian sebelum bergabung. Beberapa situs yang terkenal aman dan gacor misalnya:

  • Warkop4D – situs slot online yang satu ini memang sudah terbukti dari reputasi situsnya, pengalaman wd yang cepat dan  fitur kemenangan yang mudah.
  • PragmaticPlayID – Provider resmi dengan game slot populer. Banyak pemain menyebutkan pengalaman menang besar saat fitur Buy Spin aktif.
  • PG Soft Arena – Slot mobile-friendly, volatilitas sedang, cocok untuk pemula.
  • Habanero Pro – Game cepat, sering memberikan kemenangan kecil tapi stabil.

Tip: Gabung di forum atau grup Telegram untuk update RTP harian dan jam gacor tiap slot. Pengalaman pemain lain sangat membantu menentukan jam main terbaik.

8. Legalitas dan Regulasi Perjudian Online Regulasi Internasional yang Valid

Situs resmi biasanya memiliki lisensi dari badan internasional. Ini menjamin permainan adil, pembayaran transparan, dan perlindungan pemain. Misalnya:

  • MGA (Malta Gaming Authority) – salah satu lisensi paling ketat.
  • Curacao eGaming – populer di Asia, banyak operator lokal yang memilikinya.
Cara Mengecek Nomor Lisensi Situs
  1. Cari nomor lisensi di footer website.
  2. Kunjungi website regulator resmi.
  3. Masukkan nomor lisensi untuk memastikan validitas.

Pengalaman: Banyak pemain baru gagal mengecek lisensi, sehingga deposit awal mereka berisiko. Selalu pastikan lisensi aktif sebelum bermain.

9. Keamanan Data dan Privasi Pemain Kebijakan Privasi Situs

Baca privacy policy situs. Situs terpercaya menjelaskan dengan jelas bagaimana data pribadi dan finansial pemain diproses.

Perlindungan Data Pribadi Pemain
  • Enkripsi SSL 256-bit.
  • Proteksi firewall dan sistem deteksi intrusi.
  • OTP login dan verifikasi dua langkah untuk menjaga akun tetap aman.

Contoh nyata: Pemain Warkop4D melaporkan percobaan login ilegal, tapi akun tetap aman berkat fitur OTP dan anti-bot.

10. Kualitas Tampilan dan User Interface (UI/UX) Desain Website yang Mudah Dipahami

Situs Slot Online terpercaya menampilkan navigasi sederhana: kategori game, promosi, login, dan info RTP mudah diakses.

Mode Mobile-Friendly

Bermain via smartphone tidak mengurangi kualitas grafis atau kecepatan game. Pemain bisa menikmati slot favorit kapan saja, di mana saja.

Tips: Pilih Situs Slot dengan mode mobile-friendly, karena banyak pemain gacor memanfaatkan jam kosong di ponsel untuk menang.

11. Kualitas Server & Kecepatan Website Waktu Loading Cepat

Server yang stabil memastikan game slot dan live casino berjalan lancar tanpa lag.

Anti Down / Anti Lag

Situs Slot profesional memiliki backup server, sehingga downtime sangat jarang.

Server Anti-Blokir

Memastikan akses tetap lancar meski ada pembatasan regional.

Contoh: Seorang pemain PG Soft sempat panik karena server down di jam prime time, tapi backup server memastikan putaran slot tetap bisa dimainkan.

12. Variasi Permainan yang Tersedia Permainan Slot

Slot menjadi permainan paling populer karena mudah dimainkan dan berpotensi memberikan kemenangan besar. Situs terpercaya menawarkan:

  • Berbagai Tema: Buah klasik, petualangan epik, film populer, hingga tema fantasi atau horor.
  • Fitur Bonus: Scatter, Wild, Free Spin, dan fitur Buy Spin untuk meningkatkan peluang menang.
  • Jam Gacor: Berdasarkan pengalaman komunitas, slot sering memberikan payout tinggi di malam hari, sekitar pukul 21.00–02.00.

Tips Pemain Berpengalaman:

  • Pilih slot dengan volatilitas sesuai target: volatil tinggi untuk jackpot besar, volatil rendah untuk kemenangan rutin.
  • Manfaatkan fitur Free Spin untuk memaksimalkan peluang menang.
  • Catat jam gacor tiap game untuk menentukan waktu bermain terbaik.

Contoh Cerita: Seorang pemain PG Soft mencatat kemenangan rutin di slot bertema Dragon Hatch pada jam 23.00–01.00, memanfaatkan RTP yang lebih tinggi di waktu tersebut.

Live Casino

Live casino memberikan sensasi seperti berada di kasino nyata dengan dealer sungguhan secara real-time. Beberapa jenis populer:

  • Blackjack: Strategi kartu penting, cocok untuk pemain yang suka perhitungan cepat.
  • Roulette: Peluang menang bergantung pada pilihan taruhan (merah/hitam, angka tunggal, dsb.).
  • Baccarat: Cocok untuk pemain pemula, karena aturan sederhana dan cepat.

Tips Pemula:

  • Pilih meja dengan taruhan sesuai bankroll.
  • Perhatikan jam ramai: Live casino lebih ramai di malam hari, tapi terkadang memberikan sensasi menang lebih tinggi karena dealer lebih aktif.
  • Bermain live juga membantu belajar strategi lawan nyata dan mengasah intuisi.
Togel / Arcade / Sportsbook

Selain slot dan live casino, Situs Slot terpercaya biasanya menyediakan permainan tambahan:

  • Togel Online: Menawarkan kesempatan menang dengan angka prediksi. Pemain harus memahami pola historis untuk strategi sederhana.
  • Arcade / Mini Games: Memberikan hiburan ringan dengan kemenangan kecil tapi sering, cocok untuk pemula.
  • Sportsbook: Menambah opsi taruhan olahraga bagi yang ingin mencoba selain slot, misalnya sepak bola, basket, atau e-sports.

Tips:

  • Sesuaikan permainan dengan gaya dan strategi. Jangan gabungkan semua sekaligus jika baru mulai.
  • Pemain berani bisa mencoba slot volatil tinggi untuk jackpot besar, tetapi tetap batasi deposit agar tidak overbet.
  • Gunakan catatan kemenangan dan jam gacor untuk meningkatkan peluang menang secara konsisten.
Tips Umum Memilih Permainan
  1. Pilih game sesuai volatilitas dan RTP yang sesuai target.
  2. Manfaatkan jam gacor yang dibagikan komunitas atau grup Telegram.
  3. Mulai dengan taruhan kecil untuk mengenal mekanisme game sebelum bermain besar.
  4. Campur permainan untuk mengurangi kebosanan, tetapi tetap fokus pada game favorit untuk strategi maksimal.

Contoh Nyata: Pemain baru Warkop4D memulai dengan slot volatil rendah di siang hari, lalu berpindah ke live casino malam hari. Hasilnya, mereka bisa menikmati kemenangan rutin sekaligus merasakan sensasi dealer real-time.

13. Sistem Fair Play & RNG (Random Number Generator) Cara Kerja RNG

Random Number Generator memastikan hasil tiap putaran acak dan adil. Tidak ada manipulasi hasil.

Tanda Situs Slot Tidak Mencurangi Pemain
  • Audit independen BMM / iTech Labs.
  • RTP transparan harian.
  • Review pemain positif di forum dan media sosial.

Cerita nyata: Pemain yang mencoba Situs Slot tanpa audit resmi sering kehilangan saldo tanpa alasan, berbeda dengan Situs Slot berlisensi yang selalu membayar.

14. Fitur Keamanan Tambahan OTP Login

Memberikan lapisan keamanan ekstra, mencegah akses ilegal.

Anti Bot & Anti Hacker

Sistem mendeteksi aktivitas mencurigakan, menghindari manipulasi game.

Sistem Deteksi Penipuan

Transaksi abnormal akan ditahan sementara, mencegah kerugian pemain.

Tip: Aktifkan semua fitur keamanan yang ditawarkan situs untuk pengalaman bermain maksimal.

15. Fitur Komunitas & Sosial Media Group Telegram atau WhatsApp
  • Update RTP harian, tips gacor, info promo.
  • Bisa konsultasi pengalaman pemain lain sebelum memilih jam main.
Informasi RTP Harian
  • Membantu menentukan slot terbaik di hari itu.

Turnamen / Event Slot
  • Event mingguan atau bulanan menambah keseruan dan peluang menang ekstra.

16. Panduan Bermain Slot Secara Aman Mengatur Batas Deposit

Tetapkan limit harian/mingguan agar tidak overbet.

Bermain Bijak
  • Hindari chasing loss.
  • Fokus pada game favorit dengan RTP stabil.
Tips Menghindari Kerugian
  • Catat kemenangan & kerugian.
  • Pilih jam gacor berdasarkan pengalaman pemain lain.
17. Kesalahan Umum Pemain Saat Memilih Situs Slot Online Terlalu Tergiur Bonus Besar

Bonus tinggi kadang disertai syarat sulit dicapai, sehingga pemain malah rugi.

Tidak Mengecek Lisensi

Banyak kasus pemain deposit besar tapi situs tidak membayar karena ilegal.

Tidak Membaca S&K Promo

Syarat bonus tidak jelas bisa membuat pemain kehilangan kemenangan.

Contoh nyata: Seorang pemain baru tergiur bonus 200%, deposit besar, tapi gagal WD karena turnover tidak tercapai sesuai syarat.

18. Testimoni Pemain dan Bukti Kemenangan Cek Review Asli

Forum, grup Telegram, atau media sosial bisa jadi sumber review asli.

Bukti WD yang Transparan
  • Bukti transaksi harian.
  • Screenshot pemain lain yang berhasil WD.

Pengalaman: Pemain Warkop4D sering berbagi bukti WD di grup Telegram, menambah kepercayaan pemain baru.

19. Perbandingan Situs Slot Online untuk Pemain Baru Faktor Perbandingan
  • Keamanan & lisensi
  • Bonus & promosi
  • Ragam permainan & RTP
  • Layanan CS
Platform yang Lebih Direkomendasikan

Situs yang menggabungkan semua faktor di atas biasanya lebih mudah dipercaya dan memberikan pengalaman bermain yang menyenangkan bagi pemula maupun pemain berpengalaman.

Tip: Bandingkan beberapa situs sebelum memutuskan deposit pertama. Pilih yang punya komunitas aktif, review positif, dan RTP transparan.

20. Kesimpulan

Memilih situs slot online yang aman dan terpercaya adalah kunci untuk pengalaman bermain yang menyenangkan. Pastikan situs memiliki lisensi resmi, keamanan data terjamin, layanan CS responsif, dan proses transaksi cepat. Dengan panduan ini, kamu bisa bermain lebih percaya diri, bijak, dan tentunya berpeluang menang lebih besar.

Categories: LAMP, Linux, SysAdmin

What’s KernelCare?

LinuxJournal.com - Wed, 03/30/2022 - 11:00
by Suparna Ganguly

This article explains all that you need to know about KernelCare. But before studying about KernelCare, let’s do a quick recap of the Linux kernel. It’ll help you understand KernelCare better. The Linux kernel is the core part of Linux OS. It resides in memory and prompts the CPU what to do.

Now let’s begin with today’s topic which is KernelCare. And if you’re a system administrator this article is going to present valuable information for you.

What is KernelCare?

So, what’s KernelCare? KernelCare is a patching service that offers live security updates for Linux kernels, shared libraries, and embedded devices. It patches security vulnerabilities inside the Linux kernel without creating service interruptions or any downtime. Once you install KernelCare on the server, security updates automatically get applied every 4 hours on your server. It dismisses the need for rebooting your server after making updates.

It is a commercial product and is licensed under GNU GPL version 2. Cloud Linux, Inc developed this product. The first beta version of KernelCare was released in March 2014 and its commercial launch was in May 2014. Since then they have added various useful integrations for automation tools, vulnerability scanners, and others. 

Operating systems supported by KernelCare include CentOS/RHEL 5, 6, 7; Cloud Linux 5, 6; OpenVZ, PCS, Virtuozzo, Debian 6, 7; and Ubuntu 14.04.

Is KernelCare Important?

Are you wondering if KernelCare is important for you or not? Find out here. By installing the latest kernel security patches, you are able to minimize potential risks. When you try to update the Linux kernel manually, it may take hours. Apart from the server downtime, it can be a stressful job for the system admins and also for the clients.

Once the kernel updates are applied, the server needs a reboot. This is usually done during off-peak work hours. And this causes some additional stress. However, ignoring server reboots can cause a whole lot of security issues. It’s seen that, even after rebooting, the server experiences issues and doesn’t easily come back up. Fixing such issues is a trouble for the system admins. Often the system admin needs to roll back all the applied updates to get the server up quickly.

With KernelCare, you can avoid such issues.

How Does KernelCare Work?

KernelCare eliminates non-compliance and service interruptions caused by system reboots. KernelCare agent resides on your server. It periodically checks for new updates. In case it finds any, the agent downloads those and applies them to the running kernel. A KernelCare patch can be defined as a piece of code that’s used to substitute buggy code in the kernel. 

Go to Full Article
Categories: Linux

Getting Started with Docker Semi-Self-Hosting on Linode

LinuxJournal.com - Tue, 03/29/2022 - 11:00
by David Burgess

With the evolution of technology, we find ourselves needing to be even more vigilant with our online security every day. Our browsing and shopping behaviors are also being continuously tracked online via tracking cookies being dropped on our browsers that we allow by clicking the “I Accept” button next to deliberately long agreements on websites before we can get the full benefit of said site.

Watch this article:

Additionally, hackers are always looking for a target and it's common for even big companies to have their servers compromised in any number of ways and have sensitive data leaked, often to the highest bidder.

These are just some of the reasons that I started looking into self-hosting as much of my own data as I could.

Because not everyone has the option to self-host on their own, private hardware, whether it's for lack of hardware, or because their ISP makes it difficult or impossible to do so, I want to show you what I believe to be the next best step, and that's a semi-self-hosted solution on Linode.

Let's jump right in!

Setting up a Linode

First things first, you’ll need a Docker server set up. Linode has made that process very simple and you can set one up for just a few bucks a month and can add a private IP address (for free) and backups for just a couple bucks more per month.

Get logged into your Linode account click on "Create Linode".

Don't have a Linode account?  Get $100 in credit clicking here

On the "Create" page, click on the "Marketplace" tab and scroll down to the "Docker" option. Click it.

With Docker selected, scroll down and close the "Advanced Options" as we won't be using them.

Below that, we'll select the most recent version of Debian (version 10 at the time of writing).

In order to get the the lowest latency for your setup, select a Region nearest you.

When we get to the "Linode Plan" area, find an option that fits your budget. You can always start with a small plan and upgrade later as your needs grow.

Next, enter a "Linode Label" as an identifier for you. You can enter tags if you want.

Enter a Root Password and import an SSH key if you have one. If you don't that's fine, you don't need to use an SSH key. If you'd like to generate one and use it, you can find more information about how to do so here "Creating an SSH Key Pair and Configuring Public Key Authentication on a Server").

Go to Full Article
Categories: Linux

Manage Java versions with SDKMan

OpenSource.com - Tue, 03/15/2022 - 01:01
Manage Java versions with SDKMan Seth Kenlon Tue, 03/15/2022 - 02:01 Up Register or Login to like.

Java is more than just a programming language: It's also a runtime.

Applications written in Java are compiled to Java bytecode then interpreted by a Java Virtual Machine (JVM), which is why you can write Java on one platform and have it run on all other platforms.

A challenge can arise, however, when a programming language and an application develop at different rates. It's possible for Java (the language) to increment its version number at the same time your favorite application continues to use an older version, at least for a while.

If you have two must-have applications, each of which uses a different version of Java, you may want to install both an old version and a new version of Java on the same system. If you're a Java developer, this is particularly common, because you might contribute code to several projects, each of which requires a different version of Java.

The SDKMan project makes it easy to manage different versions of Java and related languages, including Groovy, Scala, Kotlin, and more.

SDKMan is like a package manager just for versions of Java.

More on Java What is enterprise Java programming? Red Hat build of OpenJDK Java cheat sheet Free online course: Developing cloud-native applications with microservices arc… Fresh Java articles Install SDKMan

SDKMan requires these commands to be present on your system:

  • zip
  • unzip
  • curl
  • sed

On Linux, you can install these using your package manager. On Fedora, CentOS Stream, Mageia, and similar:

$ sudo dnf install zip unzip curl sed

On Debian-based distributions, use apt instead of dnf. On macOS, use MacPorts or Homebrew. On Windows, you can use SDKMan through Cygwin or WSL.

Once you've satisfied those requirements, download the SDKMan install script:

$ curl "https://get.sdkman.io" --output sdkman.sh

Take a look at the script to see what it does, and then make it executable and run it:

$ chmod +x sdkman.sh
$ ./sdkman.shConfigure

When the installation has finished, open a new terminal, or run the following in the existing one:

source "~/.sdkman/bin/sdkman-init.sh"

Confirm that it's installed:

$ sdk versionInstall Java with SDKMan

Now when you want to install a version of Java, you can do it using SDKMan.

First, list the candidates for Java available:

$ sdk list java
=================================================
Available Java Versions for Linux 64bit
=================================================
Vendor   | Version      | Dist | Identifier
-------------------------------------------------
Gluon    | 22.0.0.3.r17 | gln  | 22.0.0.3.r17-gln
         | 22.0.0.3.r11 | gln  | 22.0.0.3.r11-gln
GraalVM  | 22.0.0.2.r17 | grl  | 22.0.0.2.r17-grl
         | 21.3.1.r17   | grl  | 21.3.1.r17-grl
         | 20.3.5.r11   | grl  | 20.3.5.r11-grl
         | 19.3.6.r11   | grl  | 19.3.6.r11-grl
Java.net | 19.ea.10     | open | 19.ea.10-open
         | 18           | open | 18-open
         | 17.0.2       | open | 17.0.2-open
         | 11.0.12      | open | 11.0.12-open
         | 8.0.302      | open | 8.0.302-open
[...]

This provides a list of different Java distributions available across several popular vendors, including Gluon, GraalVM, OpenJDK from Java.net, and many others.

You can install a specific version of Java using the value in the Identifier column:

$ sdk install java 11.0.12-open

The sdk command uses tabbed completion, so you don't need to view a list. Instead you can type sdk install java 11 and then press Tab a few times to get the options.

Alternately, you can just install the default latest version:

$ sdk install javaSet your current version of Java

Set the version of Java for a terminal session with the use subcommand:

$ sdk use java 17.0.2-open

To set a version as default, use the default subcommand:

$ sdk default java 17.0.2-open

Get the current version in effect using the current subcommand:

$ sdk current java Using java version 17.0.2-openRemoving Java with SDKMan

You can remove an installed version of Java using the uninstall subcommand:

$ sdk uninstall java 11.0.12-openMore SDKMan

You can do more customization with SDKMan, including updating and upgrading Java versions and creating project-based environments. It's a useful command for any developer or user who wants the ability to switch between versions of Java quickly and easily.

If you love Java, or use Java, give SDKMan a try. It makes Java easier than ever!

The SDKMan project makes it easy to manage different versions of Java and related languages, including Groovy, Scala, Kotlin, and more.

Image by:

Image by WOCinTech ChatCC BY 2.0

Java What to read next This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. 6482 points (Correspondent) Vancouver, Canada

Seldom without a computer of some sort since graduating from the University of British Columbia in 1978, I have been a full-time Linux user since 2005, a full-time Solaris and SunOS user from 1986 through 2005, and UNIX System V user before that.

On the technical side of things, I have spent a great deal of my career as a consultant, doing data analysis and visualization; especially spatial data analysis. I have a substantial amount of related programming experience, using C, awk, Java, Python, PostgreSQL, PostGIS and lately Groovy. I'm looking at Julia with great interest. I have also built a few desktop and web-based applications, primarily in Java and lately in Grails with lots of JavaScript on the front end and PostgreSQL as my database of choice.

Aside from that, I spend a considerable amount of time writing proposals, technical reports and - of course - stuff on https://www.opensource.com.

Open Sourcerer People's Choice Award 100+ Contributions Club Emerging Contributor Award 2016 Correspondent Columnist Contributor Club Author Comment Gardener Register or Login to post a comment.
Categories: OpenSource

Open exchange, open doors, open minds: A recipe for global progress

OpenSource.com - Tue, 03/15/2022 - 01:00
Open exchange, open doors, open minds: A recipe for global progress Ron McFarland Tue, 03/15/2022 - 02:00 Up Register or Login to like.

Could open organization principles successfully apply to entire societies?

That's the question I asked as I read the book Open: The Story of Human Progress by Johan Norberg, which aims to examine the relative success of "open societies" throughout global history.

Learn about open organizations Download resources Join the community What is an open organization? How open is your organization?

In this review—the first article in an extended discussion of the work from Open Organization community members—I will summarize more precisely what Norberg means when he uses the term "open" and offer an initial assessment of his arguments. Ultimately, however, our discussion will explore more expansive themes, like:

  1. the importance of open societies,
  2. what the future could (or should) look like in a more open world, and
  3. how these principles impact our collective understanding of how organizations operate in service of "the greater good"
Four dimensions of openness

Essentially, Norberg is looking at four dimensions of "open," which he calls:

  1. "open exchange" (global goods and service flows across borders),
  2. "open doors" (global movement of people),
  3. "open minds" (global receptivity to new and different ideas), and
  4. "open societies" (how cultures should be governed to benefit from the above three)

Let me discuss each one more extensively.

Open exchange

Norberg uses the phrase "open exchange" to refer to the movement of goods and services not just across borders but within them as well. Simply put, he believes that people across the world prosper when trade increases, because increased trade leads to increased cooperation and sharing.

His argument goes like this: when a nation (and to be sure, Norberg aims his advice at contemporary nation-states) allows and includes foreign goods into their market, in general they also gain expertise, skills, and knowledge, too. Surplus goods/services that one may have should be sold anywhere they might provide value and add benefit for someone else—and those benefits might include, for example, favors, ideas, knowledge, not just goods and services themselves. Reciprocity and relatively equal exchange is for Norberg an unavoidable aspect of human nature, as it builds binding relationships that promote more generosity. Generosity in turn promotes more trade, creating a cycle of prosperity for all involved.

This view holds for organizations working with uncommon trade partners as well. Greater organizational specificity leads to the need for more cooperation and sharing, which leads to even more specialization. So here we can see a link between open societies and open organizations regarding trade issues.

Open doors

For Norberg, "open doors" refers to people's ability to move across national borders, for one reason or another. He believes the gradual inclusion of foreigners into a society leads to more novel and productive interactions, which leads to greater innovation, more ideas, and more rapid discoveries. For a society to be productive, it must get the right talent performing the right tasks. Norberg argues that there should be no barriers to that match-up, and people should be mobile, even across borders, so they can achieve it.

Norberg outlines how, throughout history, diverse groups of people solve problems more effectively—even if they create more friction as they do so, as members have their assumptions questioned. This kind of open environment must be promoted, supported, and managed, however, in order to avoid groupthink, the predominance of voices that are merely the loudest, and the outsized influence of niche interests.

Critical to the success of "open doors" are recognition, respect, understanding, acceptance, and inclusivity toward others. Norberg discusses the importance of these qualities, citing the World Values Survey, which measures some of them. Done well, open doors can allow societies to cross-fertilize, borrowing ideas and technology from each other and multiplying that which works best.

We could say that's equally true for an organization wanting to develop a new product or market, too.

Open minds

"Open economies stimulate open-mindedness," Norberg writes. For him, "open minds" are those receptive to thoughts and belief systems that may seem different, foreign, or alien to them—those that both offer and receive different perspectives. Open minds, Norberg claims, lead to more rapid progress.

Open minds flourish when given the space to encounter new ideas and explore them freely—rather than, say, simply accept the given dogma of an age. According to Norberg, people from a wide range of disciplines, specialties, and skills coming together and sharing their perspectives stimulates growth and progress. But this is only possible when they exist in an environment where they feel free to question the status quo and possibly overturn long-standing beliefs. Barriers to creating those environments certainly exist (in fact, the entire second half of Norberg's book offers a deeper analysis of them).

Open minds flourish when given the space to encounter new ideas and explore them freely—rather than, say, simply accept the given dogma of an age.

Of course this is true in organizations as well. The more people (and the more different people) who look at a problem, the better. This not only leads to faster solutions but helps overcome anyone's individual biases. Serendipitous solutions to problems can seemingly come out of nowhere more often, as there will be better and more peer review of strongly held positions. And yet differences create friction, so standards of protocol and behavior are required to ensure progress.

For Norberg, the world benefits when scientists, philosophers, industrialists, and craftspeople can influence one another's thinking (and are receptive to having their thinking changed!). The same is true in open organizations when people with different roles and functions can work together and enrich one another's thinking. More experiments and greater collaboration among disciplines lead to richer discoveries.

Open Organization resources Download resources Join the community What is an open organization? How open is your organization? Open societies

Combining open minds, open exchange, and open doors can lead to fully open societies globally, Norberg argues, and "the result is discoveries and achievements." Governments, he asserts, should work to foster those kinds of societies across the globe. In this way, societies can tap into the greatest talent from the entire global community.

According to Norberg, more inclusive societies based on these open policies can lead to material gains for people—fewer hours working, the ability to launch careers earlier (or retire earlier), longer lives in general, and more. This is not to mention reductions in extreme poverty, child and maternal mortality, and illiteracy globally. On top of that, for Norberg global cultural collaboration leads to better utilization of ecological, natural, and environmental resources. All this can be achieved through specific specialties that advance societies at an exponential rate though openness.

Open makes a historical argument. Norberg believes that throughout the ages it was not defenders of tradition that prospered most. Instead, those thinkers, engineers, and philosophers that challenged the status quo made the greatest contribution to global prosperity. Those figures benefitted from societies that were more open to improvements because they governed their own experiments, fostered rapid feedback loops, and built systems that quickly self-correct during setbacks.

Yet like any history, Norberg's is partial and selective, presenting isolated cases and examples. And some of those include even the most brutal empires, whose violence Norberg tends to overlook. In future parts of this review, we'll dive more deeply into various aspects of Norberg's analysis—and discuss its implications for thinking about a more open future.

Openness, this new book argues, has always been a necessary cornerstone of human civilization.

Image by:

Opensource.com

The Open Organization What to read next This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. Register or Login to post a comment.
Categories: OpenSource

22 Raspberry Pi projects to try in 2022

OpenSource.com - Mon, 03/14/2022 - 13:00
22 Raspberry Pi projects to try in 2022 Opensource.com Mon, 03/14/2022 - 14:00 Up 1 reader likes this

The possibilities for Raspberry Pi projects continue to perpetuate this Pi Day! The beloved single-board computer recently turned ten years old. To celebrate, we put together a list of recent Raspberry Pi tutorials written by members of the Opensource.com community. 

More on Raspberry Pi What is Raspberry Pi? eBook: Guide to Raspberry Pi Getting started with Raspberry Pi cheat sheet eBook: Running Kubernetes on your Raspberry Pi Whitepaper: Data-intensive intelligent applications in a hybrid cloud blueprint Understanding edge computing Our latest on Raspberry Pi 10 Raspberry Pi projects for your home

The Raspberry Pi is ripe for DIY projects for the home. Why risk your data with a proprietary home automation tool when you can take full control with a $35 computer? Opensource.com authors have shared how they've built thermostats, monitored their home climate, set parental controls, and much more in the following tutorials.

5 Raspberry Pi projects for productivity

You can be productive without a ton of fancy tools. Whether you want to host your personal blog or start crypto trading with a reduced carbon footprint, the Raspberry Pi has you covered.

7 Raspberry Pi projects just for fun!

The Raspberry Pi is probably most famous for its serious use case of fun! The Pi offers lots of options for tinkering with Linux, learning about computers, or celebrating your favorite holiday.

Go ahead and mark your calendar for trying out a few of these creative Raspberry Pi projects this year.

Celebrate Pi Day by checking out these creative and useful Raspberry Pi projects.

Image by:

Dwight Sipler on Flickr

Raspberry Pi What to read next Build a router with mobile connectivity using Raspberry Pi How I run my blog on a Raspberry Pi Control your Raspberry Pi remotely with your smartphone This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. Register or Login to post a comment.
Categories: OpenSource

Collect sudo session recordings with the Raspberry Pi

OpenSource.com - Mon, 03/14/2022 - 01:00
Collect sudo session recordings with the Raspberry Pi Peter Czanik Mon, 03/14/2022 - 02:00 Up 1 reader likes this

I've used the sudo command for years, and one of my favorite features is how it saves a record of everything happening in a terminal while running a command. This feature has been available for over a decade. However, sudo 1.9 introduced central session recording collection, allowing you to check all administrative access to your hosts on your network at a single location and play back sessions like a movie.

I use this feature on my Raspberry Pi, and I recommend it to other Pi users. Even if you fully trust your users, logs and session recordings can help debug what happened on a given host if it acts strangely: Oops, wrong file deleted in /etc.

More on Raspberry Pi What is Raspberry Pi? eBook: Guide to Raspberry Pi Getting started with Raspberry Pi cheat sheet eBook: Running Kubernetes on your Raspberry Pi Whitepaper: Data-intensive intelligent applications in a hybrid cloud blueprint Understanding edge computing Our latest on Raspberry Pi Why sudo?

Sudo gives administrative access to users. Unless you limit access to a short list of commands, you practically provide full access to your hosts. The pi user can use sudo without even entering a password on the Raspberry Pi OS. On other operating systems, the default configuration grants members of the wheel group full administrative access.

Before you begin

The new sudo_logsrvd application handles collection. Earlier versions of the Raspberry Pi OS only had sudo version 1.8. The latest version is based on Debian 11 and includes sudo version 1.9.5. You also need a second host with sudo 1.9, which sends recordings to sudo_logsrvd.

Configuring sudo_logsrvd

For a production environment, I recommend using TLS encrypted connections between sudo and sudo_logsrvd. However, to simply understand how session recording works, you can go without encryption. This also means that there is nothing to configure other than creating the storage directory and starting sudo_logsrvd:

$ sudo mkdir /var/log/sudo-io
$ sudo chmod 700 /var/log/sudo-io
$ sudo sudo_logsrvd

The sudo_logsrvd is now waiting for connections.

Configuring sudo

Configure sudo 1.9 on a host using visudo and append the following lines to the sudoers file. You will need to replace the IP address with the one of your Raspberry Pi. Note that if you do not have a second machine with sudo 1.9, you can use the same Raspberry Pi running sudo_logsrvd for testing.

Defaults ignore_iolog_errors
Defaults log_servers = 172.16.167.129:30343
Defaults log_output

The first line is your escape route while experimenting with sudo_logsrvd: It ensures that sudo works even if sudo_logsrvd is inaccessible. This configuration is not recommended for production environments as users can execute commands without proper recording.

The next two lines configure where to send recordings and enable recordings.

Testing

For testing, do something that you cannot figure out from sudo logs in syslog: A shell session. Be aware that sudo 1.9.8 changes this, but it is not yet available in Linux distributions. In this case, the logs show only that a shell is started, but nothing about what happened inside:

$ sudo -s

# id
uid=0(root) gid=0(root) groups=0(root),117(lpadmin)

# cd /root/

# ls -la
total 36
drwx------  5 root root 4096 Feb 16 12:27 .
drwxr-xr-x 18 root root 4096 Jan 28 04:22 ..
-rw-------  1 root root  827 Feb 16 12:49 .bash_history
-rw-r--r--  1 root root  571 Apr 10  2021 .bashrc
drwx------  3 root root 4096 Feb 16 10:54 .cache
-rw-------  1 root root   41 Feb 16 11:12 .lesshst
drwxr-xr-x  3 root root 4096 Feb 16 12:27 .local
-rw-r--r--  1 root root  161 Jul  9  2019 .profile
drwx------  3 root root 4096 Jan 28 04:21 .vnc

# exit
$

Even if the logs do not show anything useful, you can still use the sudoreplay command to list and playback recordings:

$ sudo sudoreplay -l
Feb 16 12:37:54 2022 : pi : TTY=/dev/pts/1 ; CWD=/home/pi ; USER=root ; HOST=raspberrypi ; TSID=000001 ; COMMAND=/usr/bin/ls -l /etc/ssl/private/
Feb 16 12:38:14 2022 : pi : TTY=/dev/pts/1 ; CWD=/home/pi ; USER=root ; HOST=raspberrypi ; TSID=000002 ; COMMAND=/usr/bin/ls -la /etc/ssl/private/
Feb 16 12:49:21 2022 : pi : TTY=/dev/pts/1 ; CWD=/home/pi ; USER=root ; HOST=raspberrypi ; TSID=000003 ; COMMAND=/bin/bash
Feb 16 12:50:03 2022 : pi : TTY=/dev/pts/1 ; CWD=/home/pi ; USER=root ; HOST=raspberrypi ; TSID=000004 ; COMMAND=/bin/bash
Feb 16 12:50:28 2022 : pi : TTY=/dev/pts/1 ; CWD=/home/pi ; USER=root ; HOST=raspberrypi ; TSID=000005 ; COMMAND=/usr/bin/sudoreplay -l

$ sudo sudoreplay 000004
Replaying sudo session: /bin/bash

# id
uid=0(root) gid=0(root) groups=0(root),117(lpadmin)
# cd /root/
# ls -la
total 36
drwx------  5 root root 4096 Feb 16 12:27 .
drwxr-xr-x 18 root root 4096 Jan 28 04:22 ..
-rw-------  1 root root  827 Feb 16 12:49 .bash_history
-rw-r--r--  1 root root  571 Apr 10  2021 .bashrc
drwx------  3 root root 4096 Feb 16 10:54 .cache
-rw-------  1 root root   41 Feb 16 11:12 .lesshst
drwxr-xr-x  3 root root 4096 Feb 16 12:27 .local
-rw-r--r--  1 root root  161 Jul  9  2019 .profile
drwx------  3 root root 4096 Jan 28 04:21 .vnc

# exit
$What is next?

I hope you learned something new today and will try it on your own Raspberry Pi. The setup I described here is good enough for testing. For production use, I recommend creating a startup script for sudo_logsrvd, which is missing from the Debian package, and you should use TLS between sudo and sudo_logsrvd. You can learn more about configuring TLS encryption from the documentation or my blog. The nice thing is that you can also use sudo_logsrvd on the Raspberry Pi in production in your home or small office. Unless you have dozens of sudo clients all utilizing the terminal heavily (like ls -laR /), not even the SD card of the Pi is a bottleneck.

Logs and session recordings can help debug what happened on a given host if it acts strangely. Try this setup on your Raspberry Pi.

Raspberry Pi Sysadmin What to read next 22 Raspberry Pi projects to try in 2022 This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. Register or Login to post a comment.
Categories: OpenSource

Use your Raspberry Pi as a data logger

OpenSource.com - Sun, 03/13/2022 - 13:00
Use your Raspberry Pi as a data logger Stephan Avenwedde Sun, 03/13/2022 - 14:00 Up 1 reader likes this

Data logging can be done for various reasons. In a previous article, I wrote about how I monitor the electricity consumption of my household. The Raspberry Pi platform is a perfect match for such applications as it allows communication with many kinds of analog and digital sensors. This article shows how to log the CPU temperature of a Raspberry Pi and create a spreadsheet-based report on demand. Logging the CPU temperature won't require any additional boards or sensors.

Even without a Raspberry Pi, you can follow the steps described here if you replace the specific parts of the code.

More on Raspberry Pi What is Raspberry Pi? eBook: Guide to Raspberry Pi Getting started with Raspberry Pi cheat sheet eBook: Running Kubernetes on your Raspberry Pi Whitepaper: Data-intensive intelligent applications in a hybrid cloud blueprint Understanding edge computing Our latest on Raspberry Pi Setup

The code is based on Pythonic, a graphical Python programming fronted. The easiest way to get started with Pythonic is to download and flash the Raspberry Pi image. If you don't have a Raspberry Pi, use one of the other installation methods mentioned on the GitHub page (e.g., Docker or Pip).

Once installed, connect the Raspberry Pi to the local network. Next, open the web-based GUI in a browser by navigating to http://pythonicrpi:7000/.

You should now see the following screen:

 

Download and unzip the example available on GitHub. The archive consists of several file types.

Use the green-marked button to upload the current_config.json, with the yellow-marked button upload the XLSX file and the remaining *.py files.

 

You should have this configuration in front of you after you upload the files:

 

Implementation

The application can be separated into two logical parts: Logging and report generation. Both parts run independently from each other.

Logging

The top part of the configuration can be summarized as the logging setup:

 

Involved elements:

  • ManualScheduler - 0x0412dbdc: Triggers connected elements on startup (or manually).
  • CreateTable - 0x6ce104a4: Assembles an SQL query which creates the working table (if not already existent).
  • Scheduler - 0x557616c2: Triggers subsequent element every 5 seconds.
  • DataAcquisition - 0x0e7b8360: Here we collect the CPU temperature and assemble an SQL query.
  • SQLite - 0x196f9a6e: Represents an SQLite database, accepts the SQL queries.

I will take a closer look at DataAcquisition - 0x0e7b8360. Open the built-in web editor (code-server) by navigating to http://pythonicrpi:8000/. You can see all the element-related *.py files in the left pane. The DataAcquisition element is based on the type Generic Pipe. Open the file with the related id:

generic_pipe_0x0e7b8360.py

 

In this element, responsible for reading the CPU temperature, you can uncomment the lines of code depending on whether you're running this on a Raspberry Pi or not.

The above code produces an SQL query that inserts a row in the table my_table containing the Unix timestamp in seconds and the actual CPU temperature (or a random number). The code is triggered every five seconds by the previous element (Scheduler - 0x557616c2). The SQL query string is forwarded to the connected SQLite - 0x196f9a6e element, which applies the query to the related SQLite database on the file system. The process logs the CPU temperature in the database with a sampling rate of 1/5 samples per second.

Report generation

The bottom network generates a report on request:

 

Involved elements:

  • ManualScheduler - 0x7c840ba9: Activates the connected Telegram bot on startup (or manually).
  • Telegram - 0x2e4148e2: Telegram bot which serves an interface for requesting and providing of reports.
  • GenericPipe- 0x2f78d74c: Assembles an SQL query comprising the data of the report.
  • SQLite - 0x5617d487:
  • ReportGenerator- 0x13ad992a: Create a XLSX-based report based on the data.

The example code contains a spreadsheet template (report_template.xlsx) which also belongs to this configuration.

Note: To get the Telegram bot running, provide a Telegram bot token to communicate with the server. core.telegram.org describes the process of creating a bot token.

The Telegram element outputs a request as a Python string when a user requests a report. The GenericPipe- 0x2f78d74c element that receives the request assembles a SQL query which is forwarded to the SQLite - 0x5617d487 element. The actual data, which is read based on the SQL query, is now sent to the ReportGenerator- 0x13ad992a, which I will take a closer look at:

generic_pipe_13ad992a.py

def execute(self):

        path = Path.home() / 'Pythonic' / 'executables' / 'report_template.xlsx'

        try:
                wb = load_workbook(path)
        except FileNotFoundError as e:
                recordDone = Record(PythonicError(e), 'Template not found')
                self.return_queue.put(recordDone)
                con.close()
                return
        except Exception as e:
                recordDone = Record(PythonicError(e), 'Open log for details')
                self.return_queue.put(recordDone)
                con.close()
                return

        datasheet = wb['Data']

        # create an iterator over the rows in the datasheet
        rows = datasheet.iter_rows(min_row=2, max_row=999, min_col=0, max_col=2)

In the first part, I use the load_workbook() of the openpyxl library to load the spreadsheet template. If successfully loaded, I acquire a reference to the actual sheet in the datasheet variable. Afterward, I create an iterator over the rows in the datasheet, which is stored in the variable rows.

        # Convert unix time [s] back into a datetime object, returns an iterator
        reportdata_dt = map(lambda rec: (datetime.datetime.fromtimestamp(rec[0]), rec[1]), self.inputData)
       
        # iterate till the first iterator is exhausted
        for (dt, val), (row_dt, row_val) in zip(reportdata_dt, rows):
                row_dt.value = dt
                row_val.value = val

        reportDate = datetime.datetime.now().strftime('%d_%b_%Y_%H_%M_%S')
        filename = 'report_{}.xlsx'.format(reportDate)
        filepath = Path.home() / 'Pythonic' / 'log' / filename
        wb.save(filepath)
        wb.close()
       
        recordDone = Record(filepath, 'Report saved under: {}'.format(filename))
        self.return_queue.put(recordDone)

The last part starts with the variable reportdata_dt: The variable holds an iterator which, when used, converts the raw Unix timestamp of the input data from the SQLite database (self.inputdata) back to a Python datetime object. Next, I zip the reportdata_dt iterator with the previously created rows iterator and iterate till the first of them is exhausted, which should be reportdata_dt. During iteration, I fill the columns of each row with the timestamp and the value. In the last step, I save the spreadsheet with a filename consisting of the actual date and time and forward the filename to the Telegram - 0x2e4148e2 element.

The Telegram - 0x2e4148e2 then loads the file from disk back into memory and sends it to the user who requested the report. This video shows the whole procedure:

 

Remote video URL

The report the user receives look like this:

 

Wrap up

This article shows how to easily convert the Raspberry Pi into a data logger. The Raspberry Pi platform allows you to interact with sensors of any kind, enabling you to monitor physical values as well as computed values. Using spreadsheets as the basis for your reports gives you a lot of flexibility and makes those reports very customizable. The openpyxl library in combination with Pythonic makes it simple to automate this process.

Here's how to log the CPU temperature of a Raspberry Pi and create a spreadsheet-based report on demand.

Image by:

Opensource.com

Raspberry Pi What to read next 22 Raspberry Pi projects to try in 2022 How I run my blog on a Raspberry Pi Collect sudo session recordings with the Raspberry Pi This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. Register or Login to post a comment.
Categories: OpenSource

Understanding the Digital World: My honest book review

OpenSource.com - Sat, 03/12/2022 - 02:00
Understanding the Digital World: My honest book review David Both Sat, 03/12/2022 - 02:00 Up Register or Login to like.

I read a lot of books. I especially like to read books about computers, Linux, and the digital world we live in. I also enjoy reading books on the history of computing about and by and the people who helped make this digital world what it is today.

Imagine my excitement when I discovered the new second edition of an important book by Brian W. Kernighan, one of the leading figures in the creation of Unix, author or co-author of many influential books, and a professor of Computer Science at Princeton University. Understanding the Digital World combines computer history, technology, and personal story, along with discussions about how today's technology impacts our privacy.

More Linux resources Linux commands cheat sheet Advanced Linux commands cheat sheet Free online course: RHEL technical overview Linux networking cheat sheet SELinux cheat sheet Linux common commands cheat sheet What are Linux containers? Our latest Linux articles

Kernighan teaches a course at Princeton each year, "Computers in Our World," intended for computer users who are not Computer Science majors. He wrote this book to bring much of the information contained in that course to the world at large.

Kernighan starts with an exploration of the technology itself. The title of Chapter 1 is, "What is a Computer?" Covering the CPU and how it works, he describes various forms of storage, including RAM, cache, disk, and other types of secondary storage, and how they all work together. After this overview of the hardware, he describes algorithms, how they are used to solve problems, and how they get incorporated into computer programs. In later chapters, Kernighan discusses the internet, the TCP/IP protocols that drive it, and some of the tools used to communicate using the internet.

He looks at the data about ourselves (stored on our computers) that gets transmitted across the internet—with or without our permission. Although there are references to security throughout the book, Kernighan spends a great deal of these latter chapters discussing the many ways in which our data is vulnerable and ways to implement at least some level of protection.

The parts that scared me most were the discussions about how organizations can track our movements on the internet—the effects of this (and tools such as data mining) on our online experiences. I am familiar with using tools like firewalls and strategies such as using good passwords and deleting or deactivating programs and daemons that I am not using. But the ease with which we can get spied upon (there is no more accurate word for it) is appalling no matter what actions we may take.

My first inclination after reading this book was to send it to the two of my grandkids that I am helping to build gaming computers. This book is a good way for them to learn how computers work at a level they can understand. They can also learn about the pitfalls (beyond those their parents have discussed with them) about how to be safe on the internet. I also suggested to their parents that they read it, too.

It is not all gloom and doom. Far from it. Kernighan manages to scare me while simultaneously ensuring that readers understand how to mitigate the threats he discusses. In the vast majority of his scenarios, I had already implemented many of the protections he covers.

This book has made me think more closely about how I work and play on the internet, the methods I use to protect my home network, and how I use my portable devices. Kernighan's level of paranoia is sufficient to ensure that readers pay attention while reassuring us that we can still use the internet, our computers, and other devices with a reasonable amount of safety so long as we take the appropriate precautions.

No! I am not going to tell you all of that. You'll get no spoilers from me.

Kernighan indicates to readers the sections that may get too technical, and you can skip over them. Still, overall this is a pretty easy read and accessible even for many non-technical readers. This was intentional on the author's part. So even if your technology quotient is fairly low, this book is still understandable. Despite the fact that he wrote the first edition of this book only five years ago, this second edition includes important new material that makes it even more applicable to today's technology and the lightning-fast dissemination of data. I found the new section on artificial intelligence quite enlightening.

I highly recommend this book to anyone who wants to learn more about how computers work and impact privacy and security in the modern world.

Brian W. Kernighan's second edition of Understanding the Digital World is worth a read for computer enthusiasts of any skill level.

Image by:

opensource.com

Linux What to read next This work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License. Register or Login to post a comment.
Categories: OpenSource

Syndicate content
Comment