Category Archives: Programming

SQL 的各種 JOIN

SQL 的各種 JOIN 其實是個很好玩的主題,不是很難,但沒有仔細練習過一次通常只能答出常用的那幾種... 而且過一陣子又會忘記 XD 這幾天不知道哪邊看到的舊文章「Say NO to Venn Diagrams When Explaining JOINs」,這篇作者大聲疾呼不要用 Venn diagram 解釋 SQL 的 JOIN,把比較特別的 JOIN 拿出來舉例... 因為 Venn diagram 是講集合交聯集這類的操作,但 JOIN 不僅僅是如此... 舉例來說,CROSS JOIN 對應到 cartesian product 就沒辦法用 Venn diagram 簡單的表示出來,而必須畫的更「具體」:

Posted in Computer, Database, Murmuring, Programming, Software | Tagged , , , , , , , , , | Leave a comment

Cloudflare 推出 SSL 的 SaaS 服務

Cloudflare 把之前需要人力介入的操作,包成 API 直接提供給大家用:「Introducing SSL for SaaS」。 要解決的是「用戶自己的 domain 掛到我的服務上,而且需要 HTTPS」,而 Cloudflare 提供 API 把上面三部跑完,下面的就是 Cloudflare 自己處理 (包括取得用戶的同意):

Posted in CDN, Cloud, Computer, Murmuring, Network, Programming, Security, WWW | Tagged , , , , , , , , | Leave a comment

AWS Lambda 支援 Python 3.6 了

大家都等很久的需求總算推出來了 (雖然我覺得還好...),AWS Lambda 要支援 Python 3.6 了:「AWS Lambda Supports Python 3.6」。會逐步推上線: You can now develop your AWS Lambda functions using Python 3.6. This feature will become available in all AWS Lambda regions within 24 hours.

Posted in AWS, Cloud, Computer, Murmuring, Network, Programming, Software | Tagged , , , , | Leave a comment

Google Chrome 的 Headless 模式與 PhantomJS 的歷史

瀏覽器的 headless 模式讓開發者可以透過 command line 或是 API 界面操作,對於自動化開發測試很有用。而 Google Chrome 將在 59 版 (目前 57 版) 引入 headless 模式:「Headless mode」。 Headless mode allows running Chromium in a headless/server environment. Expected use cases include loading web pages, extracting metadata (e.g., the … Continue reading

Posted in Browser, Computer, GoogleChrome, Murmuring, Network, Programming, Software, WWW | Tagged , , , , , , , | Leave a comment

django 的 LTS

看到「Django 1.11 released」這篇才發現 django 也有設計 LTS 機制... 在「Django’s release process」這邊有介紹: Certain feature releases will be designated as long-term support (LTS) releases. These releases will get security and data loss fixes applied for a guaranteed period of time, typically three years. … Continue reading

Posted in Computer, Murmuring, Network, Programming, Security, Software, WWW | Tagged , , , , , , , | Leave a comment

Tor 在考慮使用 Rust 改寫

不過也不確定是不是愚人節消息就是了:「[tor-dev] Tor in a safer language: Network team update from Amsterdam」。 Tor 考慮使用 Rust 改寫,目前已經完成的部份,以及接下來的規劃: What has already been done: - Rust in Tor build - Putting together environment setup instructions and a (very small) initial draft for coding standards … Continue reading

Posted in Computer, Murmuring, Network, P2P, Programming, Security, Software | Tagged , , , , , , , , , | Leave a comment

AWS Lambda 的 Node.js 支援 6.10 了

AWS Lambda 總算是支援 Node.js 6.10 了:「AWS Lambda Supports Node.js v6.10」。不過 6 還是沒有原生的 async/await,目前的 7 才有... 還是要靠 module 支援。 繼續用 Python 2.7 寫... @_@

Posted in AWS, Cloud, Computer, Murmuring, Network, Programming | Tagged , , , , , , , , | Leave a comment

Stripe 對於控制 API 使用量的作法

在「Scaling your API with rate limiters」這篇 Stripe 的 Paul Tarjan 提到了四種如何保護 API 的作法。 前兩種都是 rate limit。第一種是最標準的「你一分鐘可以用幾次」的方式,這是最容易理解的方式。第二種是「你同時間可以用幾個 API request」,這通常會用在大量消耗資源的 API 上,避免短時間內被打爆。 第三種是拉到整體來看,把 API 分成重要與不重要的,然後直接保留確保重要的 API 有一定的 capacity 可以用: We always reserve a fraction of our infrastructure for critical requests. If our … Continue reading

Posted in AWS, Cloud, Computer, Financial, Murmuring, Network, Programming, Security | Tagged , , , , , | Leave a comment

把 PHP 升級到 7.1

把 blog 這台機器的 PHP 升級到 7.1 了。 據說會再快一些,像是「PHP 7.1 vs. 7.0 performance benchmarks with Symfony」這邊提到的: 看起來沒有 PHP 5.6 升級到 PHP 7.0 那麼大,不過還是有一直在改善。

Posted in Blog, Computer, Murmuring, Network, Programming, Software | Tagged , , , , | Leave a comment

收 Wikimedia (包括維基百科) 的 Recent Changes

所以有新的 streaming protocol 取代本來的 RCStream:「Get live updates to Wikimedia projects with EventStreams」。 這次新的 protocol 是走標準協定: EventStreams is built on the w3c standard Server Sent Events (SSE). SSE is simply a streaming HTTP connection with event data in a particular text … Continue reading

Posted in CMS, Computer, Murmuring, Network, Programming, Wiki, WWW | Tagged , , , , , , , , , , , | Leave a comment