2016年12月22日 星期四

[ES6] Javascript 開發者必須知道的 10 個新功能

1- Default Parameters

當傳入 function 的參數沒有給值時,防止 expection 出現的方法是設定預設值,es6 比起 es5 的使用方法更快:
var link = function(height = 50, color = ‘red’, url = ‘http://azat.co') { … }

2- Template Literals

在字串 (string) 內嵌入變數時,ES5 必須把字串拆散,把變數通過 + 操作加入字串; ES6 容許通過語法 ${val} 嵌入到字串中:
// es5
// var name = ‘Your name is ‘ + first + ‘ ‘ + last + ‘.’
var name = `Your name is ${first} ${last}.`

2016年9月16日 星期五

[php] PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP 錯誤

當執行php程式的時候,error訊息會出現

PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP

這是因為在PHP之後不允許使用class與function使用一樣的名字,一律統一使用建構子
__construct,將class內的function修正後即可繼續正常執行
__construct

2016年8月17日 星期三

[docker]使用docker建立laravel應用環境

 最近在研究跟測試docker建立產品環境給laravel使用,一開始也是當作一般的vm在用,抓回來之後使用完打包重新commit image,但是官方建議使用建立Dockerfile的方式來做這件事情,所以改成使用Dockerfile來處理,紀錄一下設定檔案


[docker]使用docker建立laravel應用環境

 最近在研究跟測試docker建立產品環境給laravel使用,一開始也是當作一般的vm在用,抓回來之後使用完打包重新commit image,但是官方建議使用建立Dockerfile的方式來做這件事情,所以改成使用Dockerfile來處理,紀錄一下設定檔案


2016年6月6日 星期一

[pycon]pycon 2016 day 3 小整理 from 共筆

關於Django & Twisted

  • Scaling Django Application

    Django server only response one request a time
    concurrent request = thread x pools
    Higher scale means higher complexity
    有沒有更好的方法去容納更多的 request ?
    CPU-bound: 數學運算、資料運算等
    IO-bound: Database requests, web requests, other network IO
    ex. 跟資料庫溝通獲取某些資訊

[pycon]pycon 2016 day 2 小整理 from 共筆

關於迪士尼動畫使用的技術

  • Even if we do things in C++, we always make python binding with SWIG or CFFI.
  • Easier to do unit test in Python than C++.
  • All animations are handcrafted.
  • We want xxxxx! Python has a library doing that.
  • Scripting language is not just about syntax and grammar, it’s libraries that matter.
  • Disney’s Hyperion Renderer
  • Early response is important.
  • Disney’s Open Source
  • Free software is free as in puppy. It is free, but you have feed it, etc. You have a lot of responsibility. It is not “free”.
  • Disney’s Github
  • Disney’s Talk
  • Speaker’s Mail

2016年6月4日 星期六

[pycon]pycon 2016 day 1 小整理 from 共筆

關於 TDD (Test-Driven Development)

  • Red, green, refactor cycle
  • 預想好使用情境
  • 一次只會專注一個目標,一次解決一個問題
  • 避免過度設計
結論?
Mindset:設計決策一次只聚焦在一個地方
好好評估環境適不適合TDD(連需求都不確定時,不建議使用TDD)

2016年6月3日 星期五

[MySQL] MySQL Group Replication講座小整理

以下整理一些參加 MySQL Group Replication的摘要:

MySQL Group Replication是一套可以使MySQL有 High Availability的plugin,有以下特點


2016年4月28日 星期四

[linux]firewalld設定與啟動失敗解決方式

在centos7中移除了本來使用的防火牆iptables,改為使用firewall,但是在啟動的時候遇到了啟動失敗,錯誤訊息為"Failed to start firewalld - dynamic firewall daemon."

[linux]fail2ban安裝設定介紹

fail2ban 是 Linux 上的一个著名的入侵保护的开源框架,它会监控多个系统的日志文件(例如:/var/log/auth.log 或者 /var/log/secure)并根据检测到的任何可疑的行为自动触发不同的防御动作。事实上,fail2ban 在防御对SSH服务器的暴力密码破解上非常有用。
在这篇指导教程中,我会演示如何安装并配置 fail2ban 来保护 SSH 服务器以避免来自远程IP地址的暴力攻击

[linux]iftop使用

最基本的使用:
# iftop -i 網路卡代號

b.gif

[linuix]netstat常用語法

以下是一些實用的 netstat 語法,可以檢查主機的連線數量:

顯示主機上所有已建立的連線:
# netstat -na

2016年4月21日 星期四

[Laravel] 性能優化處理

目錄列表:

  1. 設定快取 artisan config:cache
  2. 路由快去 artisan route:cache
  3. 優化類別 artisan optimize

2016年4月20日 星期三

[MySql] 刪除重複資料

有兩種方式   一種是直接對該重複資料的欄位建立uniqle index

ALTER IGNORE TABLE `資料表名稱` ADD UNIQUE INDEX(`欄位1`,`欄位2`...);

還有另一種個人覺得比較好的做法  可以去決定要保留哪一筆資料下來

delete from table_name where id in (select id from people group by id having count(*) > 1)

或是用

DELETE FROM table_name WHERE pk NOT IN (SELECT MAX(pk) From table_name GROUP BY id)

Google Analytics初學者入門簡介