How to get remote file size

get remote file size
Standard

Many time before we download a file from remote server, we need to know the size of the file, and there’s a couple way to get remote file size from http server, here they are:

  • curl, bash

    get remote file size using curl

    get remote file size using curl

  • PHP

    Screen Shot 2016-02-19 at 8.36.56 AM

    get remote file size PHP code

    and  the running result

    get remote file size PHP

    get remote file size PHP

  •  Ruby

    get remote file size ruby

    get remote file size ruby

 

simple way to get remote file size eh ? any suggestion please comment

Pilih kecepatan memory card yang sesuai untuk Gadget mu

memilih memory card
Standard

Apakah kecepatan dari memory card yang kita pakai pada gadget sangat berpengaruh ? Tentu saja. Apapun tipe memory card yang akan kamu beli (SD / Mini / Micro SD) disitu akan tertera simbol speed class baik pada item maupun boxnya. Speed class menunjukan kecepatan transfer data untuk operasi baca maupun tulis. Semakin kecil speed class  akan mempengaruhi kinerja dari gadget baik Smartphone, Camera, Camcoder, dll, pada efeknya ketika speed terlalu rendah smartphone akan terasa lambat (lag) ketika mengakses external storage.

ukuran memory card

ukuran memory card

Ada tiga macam format memory card, SD (Secure Digital), SDHC (Secure Digital High Capacity), dan SDXC (Secure Digital eXtended Capacity). Perbedaan diantara ketiganya ada pada file sistem (cara pengaturan file-file) dan kapasitas data  dari masing-masing  card. Format SDXC mendukung semua kelas kecepatan dan mampu menampung data sampai 2TB. Kebanyakan gadget terkini mendukung semua format ini untuk kompabilitas, namun ada baiknya selalu membaca manualnya sebelum memutuskan membeli.

Saat ini ada 6 tingkatan kelas kecepatan (speed classes). Masing-masing memiliki kegunaan secara optimal, akan kita bahas satu persatu dibawah berikut:

  1. Class 2
    Kecepatan baca tulis: 2MB/s
    Peruntukan perekaman video dengan resolusi SD

    memory card - class 2

    memory card – class 2


    Kecepatan yang rendah dengan harga yang murah, sayang sekali jika gadget mendukung resolusi HD  tentu akan terasa dampak lag saat proses perekaman.

     

  2. Class 4
    Kecepatan baca tulis: 4MB/s
    Peruntukan perekaman video dengan resolusi 720p

    memory card - class 4

    memory card – class 4

    Data transfer lebih cepat dari kelas sebelumnya, meski jika dipaksakan card ini mampu beroperasi untuk perekaman sampai HD, namun dengan harga memory card yang semakin murah lebih baik mengambil kelas lebih diatas.

  3. Class 6
    Kecepatan baca tulis: 6MB/s
    Peruntukan perekaman video dengan resolusi HD

    memory card - class 6

    memory card – class 6

    Dengan budget terbatas memory card ini menjadi pilihan terbaik untuk gadget modern sekarang ini. HD video recording, games, bisa berjalan lancar dengan card ini.

  4. Class 10
    Kecepatan baca tulis: 10MB/s
    Peruntukan perekaman video dengan resolusi HD, dan secara bersamaan main game, mengambil foto

    memory card - class 10

    memory card – class 10

    Pilihan terbaik untuk gadget modern saat ini, dengan kecepatan mencapai 10Mb/s secara nyaman perekaman video HD sangatlah nyaman bisa multitask dengan aplikasi lainya. Beberapa aplikasi yang tersimpan di external memory card akan berjalan jauh lebih cepat responnya dengan menggunakan class 10.

  5. Ultra High Speed 1 (UHS-1)
    Kecepatan baca tulis: 10MB/s
    Peruntukan perekaman video dengan resolusi Full HD, perekaman streaming video, multishot camera dengan format file raw.

    memory card - UHS-1

    memory card – UHS-1

    Jika kamera ataupun smartphone mendukung teknologi UHS-1 dan budget lebih,  gunakan memory card kelas ini, akan terasa perbedaanya dengan versi sebelumnya pada penggunaan yang berat seperti perekaman Full HD video.

  6. Ultra High Speed 3 (UHS-3)
    Kecepatan baca tulis: 30MB/s
    Peruntukan perekaman video dengan resolusi 2K, 4K

    memory card - UHS-3

    memory card – UHS-3

    Heavy user yang menginginkan performa tinggi untuk games, video perekaman 4K dan gadget mendukung dan tentunya kocek yang lebih, memory card buatmu!. Best memory card for speed untuk sekarang ini.

Berikut bisa digambarkan dengan tabel uraian diatas:

tabel class memory card

tabel class memory card

Secara umum class 10 lebih dari cukup untuk penggunaan sehari-hari. Meski jika ingin berinvestasi teknologi UHS untuk performa yang mumpuni terutama jika device yang kamu miliki mendukung tidak ada salahnya membeli memory card jenis ini. Sebisa mungkin hindari pembelian dibawah class 6, bila budgetmu pas pasan pilih class 6.

Apapun pilihan memory card yang akan kamu beli pastikan devicesnya mendukung. RTFM !

Get Timezone offset in android

Timezone
Standard

Membuat aplikasi android yg menampilkan date membutuhkan timezone offset untuk perhitungan masing masing user time. Misalnya sebuah aplikasi berita menampilkan waktu dalam ago dibawah title. Berikut snipet untuk mendapatkan timezone offset di android. data timezone akan disertakan untuk request server, bisa sebagai sorting, atau filter yg lainnya

TimeZone tz = TimeZone.getDefault();
String current_Time_Zone = (TimeZone.getTimeZone(tz.getID()).getDisplayName(
false, TimeZone.SHORT));

return String.valueOf(tz.getRawOffset() / 60000 / 60);

semoga bermanfaat

Yosemite Nokogiri install: libxml2 version 2.6.21 or later is required!

1910798
Standard

Upgrade to Yosemite lately, but it broke couple ruby nokogiri gem when i need to install it. it show error says below

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
/Users/endy/.rbenv/versions/1.9.3-p194/bin/ruby -r ./siteconf20150303-5535-61o6gc.rb extconf.rb

then how to resolve this ?, override system library using brew version. Run this command on terminal

brew install libxml2
ls -l /usr/local/opt/libxml*
lrwxr-xr-x  1 endy  admin  23 Nov 28 03:55 /usr/local/opt/libxml2 -> ../Cellar/libxml2/2.9.2
bundle config build.nokogiri "--use-system-libraries --with-xml2-include=/usr/local/opt/libxml2/include/libxml2"
gem install nokogiri
Building native extensions.  This could take a while...
Successfully installed nokogiri-1.6.6.2
Parsing documentation for nokogiri-1.6.6.2
Installing ri documentation for nokogiri-1.6.6.2
Done installing documentation for nokogiri after 4 seconds
1 gem installed
endy $ gem list nokogiri

*** LOCAL GEMS ***

nokogiri (1.6.6.2, 1.6.5, 1.6.3.1)

semoga bermanfaat

Mengenal lebih dekat MySQL Query

Standard

Here’s my situation there’s a form to query all instructor list based some criteria :
– class periode – program
– category
– class name
– Include Instructors not assigned to any classes

final result must have this format (name, home phone, email) what schema do we have ?
instructor has one address (instructor_addresses)
instructor has many contact (instructor_contact_infos)
instructor has many class (catalog_class_instructor)

class table = catalog_classes class has one periode (periode_id)
class has (program, category) join on table catalog_class_program_category

how i m gonna accomplish this using single query send from PHP ? after an hour or so here’s the final query

optimasi mysql query

0.08 second on my mac for 2k records? not bad

green commentd line : dynamicaly insert / remove before send to mysql

Open Source License, what freedom do you have ?

open_source_license
Standard
  • GPL people can take your code, modify it and must make modifications available under GPL to whomever they give it (good for applications)
  • LGPL same as GPL except they can dynamically link to your program and not give away sources of their program that does it (good for libraries)
  • MIT/BSD people can take your code, do whatever they want with it and only have to keep in the lines that say you wrote the original code
  • MPL people can take your code, modify it, but if they distribute the modifications, they need to make sure modifications are publicly available for 3 years.
  • Apache people can take your code, modify it, distribute under some other compatible license, but need to say in the program’s documentation that your code has been used