Good morning(?)!

Save RSS and Atom! This newsletter wouldn't be possible without it!

Also, we are nine issues away from issue #100! Whoohoo! I guess I need to plan for a special one. Any suggestions? Any. No seriously, I don't have any good ideas…

While we are waiting, let's get to our articles!

Articles

(Jul 25) #java #lambda [Reddit]

Java 8 (finally) brought a lot of functional programming features into the language. Today we will look into lazy evaluation. In this article, Grzegorz Piwowarek shows us how lambda expressions allows for lazy evaluation methods. The author goes a few steps further though and adds memoization, thread safety, null checking and methods for a fluent API. A very good start.

(Jul 18) #os-programming #rust [Hacker News]

Continuing his quest for an OS written in Rust (and supplying numerous articles for this newsletter), Philipp Oppermann writes about double faults. A Double Fault is when your exception handler throws an exception. Womp-womp. But what happens when your exception handler for the exception handler fails? Well, read the article :)

(Jul 23) #machine-learning

Some machine learning algorithms require distance calculations. Think clustering, where distance is used to group values. The typical calculation used is Euclidean distance (simply the length of a straight line between two points). However, author William Raseman claims that while it is enough to be used in simple single-variable simulations, it is not enough in multivariant cases like time series data. For the latter, Mahalanobis distance is recommended. In this article, we learn how the distance is calculated and, using examples, why it works better.

(Jul 28) #php #security

This might be the first time we mention PHP… Anyway, PHP supports extensions which can be enabled in php.ini. While it can be used to enable useful features, Juan Manuel Fernández is more interested on how to utilize extensions to keep a backdoor open that doesn't raise suspicion. In this article, we learn where extensions hook, how to enable them secretly, and what we can do once we are live. Pretty scary stuff actually…

Programming language of the day: Felix. "Felix is an advanced high performance statically typed scripting language. It is as easy to run a program as Python:flx filename "just works". But underneath it generates highly optimised machine binaries which outperform all interpreters, bytecode compilers, virtual machines, and most compiled languages including C. Felix is an aggressive inliner which performs whole program analysis."