Daily Digest #5
- Why uber engineering switched from postgres to mysql
Proses dan alasan kenapa UBER melakukan migrasi dari Postgresql ke Mysql. - On Uber’s Choice of Databases Debunking proses dan keputusan UBER berpindah database dari Postgresql ke Mysql
- The Log: What every software engineer should know about real-time data’s unifying abstraction Bacaan lama, masih relevan untuk banyak case log design sekarang.
- Tracker: Ingesting MySQL data at scale - Part 1 Pinterest dengan data streaming dan juga migrasi data dari mysql ke s3 dan beberapa tools yang digunakan
- Using A Static Site Generator At Scale: Lessons Learned Static site generator at scale, deskripsi dan implementasi bagaimana static site digunakan dalam skala tinggi. untuk informasi, Jakartadev.org juga menggunakan Static Site Generator, yaitu Jekyll.
Tags:
daily,
development
Optimasi Gambar
Sebagai developer, terutama web developer, load time dari satu halaman adalah penting, karena ini bisa dijadikan acuan apakah user akan tetap di web kita atau pergi karena load time website kita yang lama.
Beberapa cara yang digunakan untuk mengurangi load time antara lain dengan browser cache, konfigurasi di webserver, mungkin juga menggunakan proxy cache, dan lainnya, dari banyak hal yang bisa dilakukan salah satunya adalah optimasi gambar, karena file gambar bisa sangat menyita waktu untuk loading, apalagi jika website anda mengandalkan media gambar sebagai alat komunikasi, misalkan e-commerce.
Beberapa pilihan alat untuk mengompress gambar, bisa untuk desktop maupun CLI, untuk command line, saya menggunakan jpegoptim dan pngout sebagai tools untuk mengompress file gambar.
Saya menggunakan ubuntu 14.04 LTS sebagai base dari sistem operasi server
$ sudo apt-get install jpegoptim pngout
menjalankan perintah $ jpegoptim file.jpg , hal ini akan mengompress file gambar dengan menghilangkan info-info yang tidak dibutuhkan seperti comment di exif, atau informasi lain yang menambah berat satu file.
Anda juga bisa menjalankan perintah jpegoptim agar bisa secara masif mengompress file dengan perintah
$ find . -type f -name "*.jpg" -exec jpegoptim -m90 --strip-all --all-progressive {} \;
Untuk perintah di atas, itu akan mencari file .jpg sampai ke dalam folder secara recursive, Opsi . di atas menunjukkan working directory yang sedang anda gunakan, jika hendak mengarahkan ke folder yang lain bisa ditulis PATH-nya, seperti perintah di bawah.
$ find /path/ke/gambar/ -type f -name "*.jpg" -exec jpegoptim -m90 --strip-all --all-progressive {} \;
Opsi yang digunakan adalah -m90 artinya menggunakan kualitas 90, --strip-all menghilangkan informasi exif yang tidak terpakai, dan --all-progressive opsi ini untuk menjadikan gambar itu progressive mode.
Output:
/path/ke/file_gambar.jpg 100x150 24bit N JFIF [OK] 2706 --> 2580 bytes (4.66%), optimized.
note: terkadang ada kasus dimana file anda akan hilang permission code-nya, dan tidak bisa diakses oleh borwser, ini bisa diakali dengan menambahkan perintah seperti berikut
find . -type f -name "*.jpg" -exec jpegoptim -m90 --strip-all --all-progressive {} \; -exec chmod 677 {} \;
dengan cara di atas, anda mengembalikan permission file agar bisa dibaca oleh webserver dan akhirnya ditampilkan ke browser.
Read more →
Tag:
development
Issue #4
News
-
DROWN Attack
-
Ravendb passed half a million downloads
-
Google Releases Cloud Processor For Hadoop, Spark
-
Introducing Autotrack for analytics.js
-
Ansiblefest London 2016
-
What’s New in jQuery 3
-
Google Preps Angular 2 for Final Release
-
Ember.js 2.4 released
Opinion
-
Is DevOps the Holy Grail for information security?
-
We Hire the Best, Just Like Everyone Else
-
Too Sensitive
-
Performance of ES6 features relative to the ES5 baseline operations per second
Tutorial
-
How To Deploy Software
-
Building a Streaming Search Platform
-
MySQL Load Balancing with HAProxy
-
Graphing MySQL performance with Prometheus and Grafana
-
How CloudStats.me moved to clustered MariaDB for high availability
-
Easy Docker on OS X
-
How to Organize Complex Design Projects
-
Server-Side Rendering With React, Node And Express
-
JavaScript Frameworks in 2016
-
Why (and how to) Redis with your MongoDB
Tools
-
Rosie
-
Five Online Database Modelling Services
-
Enzyme: JavaScript Testing utilities for React
-
56 Configurable React Stateless Functional UI Components
-
RQLite
follow on twitter @JakartaDev
Read more →
Tags:
issue,
development
Daily Digest #4
- DROWN Attack
- Ravendb passed half a million downloads
- Google Releases Cloud Processor For Hadoop, Spark
- Introducing Autotrack for analytics.js
- Ansiblefest London 2016
- What’s New in jQuery 3
- Google Preps Angular 2 for Final Release
- Ember.js 2.4 released
- Is DevOps the Holy Grail for information security?
- We Hire the Best, Just Like Everyone Else
- Too Sensitive
- Performance of ES6 features relative to the ES5 baseline operations per second
- How To Deploy Software
- Building a Streaming Search Platform
- MySQL Load Balancing with HAProxy
- Graphing MySQL performance with Prometheus and Grafana
- How CloudStats.me moved to clustered MariaDB for high availability
- Easy Docker on OS X
- How to Organize Complex Design Projects
- Server-Side Rendering With React, Node And Express
- JavaScript Frameworks in 2016
- Rosie
- Five Online Database Modelling Services
- Enzyme: JavaScript Testing utilities for React
- 56 Configurable React Stateless Functional UI Components
- RQLite
Tags:
daily,
development
Issue #3
News
-
The State of Microservices Today
Microservices state saat ini, perusahaan yang mengadopsi konsep ini dari Google, Twitter, Github, bagaimana perusahaaan-perusahaan tersebut mengimplementasikannya di organisasinya.
-
Google Starts Highlighting AMP Pages In Its Mobile Search Results
Accelerated Mobile Page atau AMP adalah project kolaborasi dari banyak perusahaan untuk bisa menampilkan halaman web dengan cepat, tetapi juga ramah dengan iklan, Wordpress sudah mendukung inisitif ini. Pelajari lebih lanjut mengenai AMP ini.
-
NodeJS 5.7.0 stable dirilis
menambahkan fitur baru, bug fix dan juga improvement di performance
-
Xamarin bergabung dengan Microsoft
Big news, Xamarin sebagai platform untuk membuat mobile apps terutama dan bisa cross platform.
-
Github development style
Artikel yang dipublish desember, tapi masih sangat relevan, bagaimana Github melakukan proses developmentnya.
Opini
-
PostgreSQL 9.6 - Part 1 - Horizontal Scalability
Benchmark PostgreSQL 9.6 dan beberapa test lainnya, artikel ini dibagi dalam 4 bagian, dan ini adalah bagian yang pertama.
-
Apache Kafka + ElasticSearch
-
9 things every reactjs beginner should know
Hal yang perlu diketahui oleh developer yang menggunakan Reactjs dalam projectnya, terutama untuk pemula yang baru mengadopsi Reactjs dalam projectnya.
-
5 reasons meteor ideal for startup
5 Alasan kenapa Meteor cocok untuk yang baru memulai aplikasi web, selain karena development dengan menggunakan Meteor bisa sangat cepat, dan beberapa alasana lainnya.
-
All things DevOps dan bagaimana konsep itu mempengaruhi satu organinasi
Suatu organisi dan elemen yang didalamnya bisa melihat Devops ini bisa mempengaruhi (dalam arti baik) suatu keputusan, dari product development, testing, deployment dan efek lain dalam satu bisnis.
Baru setahunan ini saya mengadopsi Devops, dan memang dirasakan semua berjalan lebih cepat, interaksi antara Infrastructure dan development juga operation menjadi tipis -
The Product Managers’ Guide to Continuous Delivery and DevOps
Satu sisi lain melihat CI dan Devops untuk product manager
Tutorial
-
Bagaimana mengamankan Ubuntu 14.04
-
redis untuk storage php session
-
Understanding Javascript async
-
Building blog app dengan menggunakan React
-
5 Steps learning React app
-
Learn the Kubernetes concept in 10 minutes
-
Security Guide: How to Protect Your Infrastructure Against the Basic Attacker
Tools
-
Maltrail: Malicious traffic detection system
-
Kahlan: Unit/BDD PHP Test Framework for Freedom, Truth, and Justice
-
Logatim: An isomorphic logger which implements log levels and ANSI 16 styles.
-
Teletraan: Deploy system at Pinterest
-
Rutil: tools for dump/restore/query Redis
follow on twitter @JakartaDev
Read more →
Tags:
issue,
development
Daily Digest #3
- The State of Microservices Today Microservices state saat ini, perusahaan yang mengadopsi konsep ini dari Google, Twitter, Github, bagaimana perusahaaan-perusahaan tersebut mengimplementasikannya di organisasinya.
- Google Starts Highlighting AMP Pages In Its Mobile Search Results Accelerated Mobile Page atau AMP adalah project kolaborasi dari banyak perusahaan untuk bisa menampilkan halaman web dengan cepat, tetapi juga ramah dengan iklan, Wordpress sudah mendukung inisitif ini. Pelajari lebih lanjut mengenai AMP ini.
- NodeJS 5.7.0 stable dirilis menambahkan fitur baru, bug fix dan juga improvement di performance
- Xamarin bergabung dengan Microsoft Big news, Xamarin sebagai platform untuk membuat mobile apps terutama dan bisa cross platform.
- Github development style Artikel yang dipublish desember, tapi masih sangat relevan, bagaimana Github melakukan proses developmentnya.
- PostgreSQL 9.6 - Part 1 - Horizontal Scalability Benchmark PostgreSQL 9.6 dan beberapa test lainnya, artikel ini dibagi dalam 4 bagian, dan ini adalah bagian yang pertama.
- Apache Kafka + ElasticSearch
- 9 things every reactjs beginner should know Hal yang perlu diketahui oleh developer yang menggunakan Reactjs dalam projectnya, terutama untuk pemula yang baru mengadopsi Reactjs dalam projectnya.
- 5 reasons meteor ideal for startup 5 Alasan kenapa Meteor cocok untuk yang baru memulai aplikasi web, selain karena development dengan menggunakan Meteor bisa sangat cepat, dan beberapa alasana lainnya.
- All things DevOps dan bagaimana konsep itu mempengaruhi satu organinasi
Suatu organisi dan elemen yang didalamnya bisa melihat Devops ini bisa mempengaruhi (dalam arti baik) suatu keputusan, dari product development, testing, deployment dan efek lain dalam satu bisnis.
Baru setahunan ini saya mengadopsi Devops, dan memang dirasakan semua berjalan lebih cepat, interaksi antara Infrastructure dan development juga operation menjadi tipis - The Product Managers’ Guide to Continuous Delivery and DevOps Satu sisi lain melihat CI dan Devops untuk product manager
- Bagaimana mengamankan Ubuntu 14.04
- redis untuk storage php session
- Understanding Javascript async
- Building blog app dengan menggunakan React
- 5 Steps learning React app
- Learn the Kubernetes concept in 10 minutes
-
Security Guide: How to Protect Your Infrastructure Against the Basic Attacker
- Maltrail: Malicious traffic detection system
- Kahlan: Unit/BDD PHP Test Framework for Freedom, Truth, and Justice
- Logatim: An isomorphic logger which implements log levels and ANSI 16 styles.
- Teletraan: Deploy system at Pinterest
- Rutil: tools for dump/restore/query Redis
follow on twitter @JakartaDev
Read more →
Tags:
daily,
development