Blogs

Category: none



Ruby on Rails Development Environment Setup

08 Dec 2015    programming, RoR, development

I guess most people who are reading this post will be pretty much familiar with what Ruby on Rails is already without me even talking about it. Anyway, I will provide a short description for Ruby on Rails. Ruby on Rails is a MVC framework aiming at helping fast web development. The whole framework is based on Ruby programming language and it is based on the idea “convention over configuration”. Developers by following those recommended conventions, could write better code and deliver features more timely. There are many useful and powerful gems included in Ruby on Rails and therefore we can call it “battery-included”–all needed for web development are provided by Ruby on Rails and you can just start writing your code right away.

Advice for freshmen who are to enter NUS SoC

12 Oct 2015    advice, programming, NUS, SoC

If you actually searched and found this article because you are going to enter SoC, Congratulations. Honestly I would not claim that this is the best place for learning programming(in Singapore, or Asia, even the world)–it is certainly a nice place for you to stretch your limits and test what you can do. And please, forget about QS or Times rankings, they do not mean anything–average or the whole could be very misleading and what you are supposed to do is just try your own best.

Deployment of web server using Nginx and puma on CentOS

09 Oct 2015    programming, puma, nginx, CentOS, deployment

Nginx is a great web server which is mostly based on reverse proxy. Well, I guess this is not precise, so let us consult its official website:

nginx [engine x] is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP proxy server, originally written by Igor Sysoev. For a long time, it has been running on many heavily loaded Russian sites including Yandex, Mail.Ru, VK, and Rambler. According to Netcraft, nginx served or proxied 23.36% busiest sites in September 2015. Here are some of the success stories: Netflix, Wordpress.com, FastMail.FM.

Learning smart pointers in C++ and Rust

23 Sep 2015    programming, C++, Rust, memory-management, pointer

Recently I have to reading about how memory management is done in Rust, in order versions(Rust 0.8) and get really interested in smarter pointers’ notion(although coming from C++ background, I do know what smart pointers are and why to use them, it was not until knowing Rust that I started to looked at this seriously). And here are some recommended posts from me:

Understanding higher order functions with OCaml

18 Sep 2015    programming, OCaml, functional, higher-order-function

Higher order functions are functions that take one or more functions as parameters or return function as result. But why do we learn higher order functions? Because it is fun, no kidding but programming is fun in general–that is why you are reading this post I guess. But seriously speaking, higher order functions can make your code more concise and reusable, and they are just beautiful and elegant. So in this post I am going to talk about some notions in higher order function programming via OCaml(In case you are new to OCaml, see intro to OCaml).

Introduction to OCaml, with brief touch on functional programming

11 Sep 2015    programming, OCaml, functional, tail-recursion

OCaml is not the most popular programming language without any doubt. In fact, whether it is TIOBE or PYPL or any other programming languages’ popularity ranking, the most popular will be Java, C or Python or JavaScript, non-surprisingly, mostly because they are easy to learn and get started. To be fair, functional programming itself is not as straight-foward as OO or imperative programming languages. Besides, in the early days when computers were not as powerful as today, performance is another issue for adoption of functional programming languages. functional programming languages like Haskell, OCaml and Scheme are still mostly popular in academic area. However, hardwares are becoming cheaper, and human–programmers are more and more expensive(to hire). Therefore, recently functional approach is getting more attention as its declarative feature and elegance. The learning curve may be a bit steep for first time programmers, but it pays off with improvement of efficiency and easier-to-manage hude projects.

Introduction to lambda calculus with fun of λ

28 Aug 2015    programming, lambda-calculus

What is lambda calculus? Well, to be honest, I am new to this too and therefore I would just quote Wikipedia regarding this: