Fred Wu

@fredwu
Legendary
CTO by day, freelancing software consultant by night. Founder of Persumi.
@fredwu 11 years ago in the void | 18 min read | no comments
Update: Please check out this new interview with Matz, done by Engineer Type. A week ago I went to Shanghai, China to attend and to give a talk at RubyConf China. The day before the conference’s first day a bunch of us were invited to a VIP dinner where we met with Matz and got to play with a device running MRuby. And I heard that earlier on that day Matz was ‘adopted’ by a book publisher to do an interview. I have found the interview (in Chinese), and found it to be really useful. So I transla...
@fredwu 11 years ago in the void | 1 min read | no comments
Contrary to what the title of the talk suggests, I am by no means a superstar developer myself. Though I would like to think that I am extremely passionate about what I do, therefore I love to share my thoughts and tips on web development and software engineering. Below is the version I used for my actual talk: https://speakerdeck.com/fredwu/2012-become-a-better-developer-you-can Since I had been preparing for my talk for over a month, I’ve done many revisions to my slides. Here’s an uncut ver...
@fredwu 11 years ago in the void | 1 min read | no comments
I had such a wonderful time at RubyConf China! So here are some photos from the conference. :) Gallery of photos of yours truly on stage: [] Gallery of photos I took mostly on the VIP dinner event the day before the conference: []
@fredwu 11 years ago in the void | 1 min read | no comments
The other day a colleague asked whether or not it’s possible to have SimpleCov return a group that only contains uncommitted changes. The answer is yes! After some digging around, we found the following way: # in spec_helper.rb SimpleCov.start 'rails' do add_group 'Changed' do |source_file| `git ls-files --exclude-standard --others \ && git diff --name-only \ && git diff --name-only --cached`.split("\n").detect do |filename| source_file.filena...
@fredwu 11 years ago in the void | 2 min read | no comments
After a few nights of working on the 2.0 rewrite of jQuery Endless Scroll, I am now releasing one of the tools I built for the project: Skinny Coffee Machine. Skinny Coffee Machine is a simple JavaScript state machine written in CoffeeScript. It is fairly simple to use, with the flexibility of adding and removing observers for state transitions. Define State Machines @coffeeMachine.power = new SkinnyCoffeeMachine default: 'off' events: turnOn: off: 'on' ...
@fredwu 11 years ago in the void | 1 min read | no comments
If you are like me who has no need for a full Xcode installation just to get the command line tools, chances are you are using one of these: Apple’s Command Line Tools or the osx-gcc-installer. Recently Node.js has made some changes so that it no longer installs on OS X via homebrew if you don’t have Xcode installed. If you run brew install nodejs, you will get the following error: \> Error: Failed executing: make install (node.rb:28) And if you run brew install -v nodejs, you will discov...
@fredwu 11 years ago in the void | 1 min read | no comments
Don’t you just hate it when you have a fresh intall of Mountain Lion, RVM and some rubies - then all of a sudden you hit this OpenSSL::SSL::SSLError error message: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed The fix is quite simple actually, all you need to do is to download a CA root certificate: curl http://curl.haxx.se/ca/cacert.pem -o ~/.rvm/usr/ssl/cert.pem And that’s it! Enjoy!
@fredwu 11 years ago in the void | 1 min read | no comments
Like a lot of places, at Locomote we are building a platform that is API-based. As much as I like having comprehensive test suites, I often feel the need to manually test API endpoints to see exactly what the responses are. Tools such as Postman solves part of the issue: they allow us to quickly test API endpoints without messing with cURL. But as a lazy developer, I want more. ;) I want something that: - automatically generates API endpoints from Rails routes definition - defines input p...
@fredwu 11 years ago in the void | 4 min read | no comments
TL;DR - PHP is still a useful tool, but as a PHP developer, have you started playing with other useful tools? Here’s my story. Today Jeff Atwood’s new piece "The PHP Singularity" and Marco Arment’s "PHP Addiction" have started another round of heated discussion on PHP. As someone who started his career as a PHP developer, I feel like sharing my thoughts from a different perspective. I began my career as a freelancer - since JavaScript and PHP were the two programming languages I learnt at scho...
@fredwu 11 years ago in the void | 1 min read | no comments
Ever wondered how you could utilise the render method outside the context of Rails controllers and views? If you wonder why anyone would do that. Well, imagine you are building an awesome form builder, you need to output and/or store rendered partials in the buffer. How do you do that? For example, what if you want to do this in your view? <%=raw Awesome::FormBuilder.new(some_options).html %> You could do something like this: module Awesome class FormBuilder < AbstractController...