Latest Entries »

Sublime Code Preview

Sublime Code Preview, a Sublime Text package, inspired by Visual Studio Web Essentials.

sublime code preview ui

Sublime Code Preview UI

Excitingly, my package get merged into sublime package community list last weekend. And within a week, I got a pull request from Carl Furrow. Carl says it is the beauty of the open source. Anyway, it does make me feel so social in the bits and bytes world ;)

This package is totally inspired by Visual Studio Web Essential, which has a awesome code preview window for CoffeeScript, TypeScript etc. I really like feedback it provides as I am writing the code. So I ended up with this package provide similar code preview tool for Sublime Text.

The source code is hosted on github, feel free to contribute new features to the project!

#Appfest Challenge

After #Appfest Sydney, I decided to participate in #Appfest Challenge. The challenge was requiring the participants to build 4 Windows Store apps within a month. I had a lot of fun from building Windows Store apps, and luckily, I won the challenge :) This ASUS VivoTab RT is the prize for the winner.

appfest challenge prize

Here are my apps built for the competition.

View full article »

#Appfest Sydney

#appfest sydney

Just spent 3 days join in the #Appfest Sydney since last Friday. Got a little bit tired. But it’s absolutely fantastic. This event is about windows 8 app, windows phone app and windows azure.

As I join the session of building apps for two platforms, talked by Microsoft technical evangelist, Nick Hodge. He is funny, and his style is somewhat like Scott Hanselman to me.

Shane Morris shared very good slides at keynote session for designing windows and windows phone app.

freebie

What I got from this 3-day event? A lot of freebies, fantastic catering, and most of all, the tips of designing and building windows, windows phone apps.

Mentors are very helpful. So there are many good ideas generated. I really enjoyed. Thanks for organizing such an event. And I decided to start my journey of building windows apps.

Online RSA Key Converter

RSA sign is so popular over the wire for security reason. But there are different formats of representations. So I created an tool to converter RSA keys from XML to PEM and vice versa. Which is not easy to find a tool do it bidirectionally online.

Mercurial on Windows

Coming from Git background, I started to use another famous distributed version control system mercurial for my job.

TortoiseHg is a good GUI tool for Mercurial though. Sometimes I prefer to use CLI. Not like Git Bash. To use hg with command line interface comfortably, I did following stuff.

View full article »

In previous post Steps To Big Data: Hello, Pail, we have defined our fact model and shown how to use Pail to store out data. What is fact model?

A Fact Model, as we see it, structures basic knowledge about business operations from a business perspective. “Basic” means that the knowledge it represents cannot be derived or computed from any other knowledge. It that sense, a Fact Model is a crucial starting point for developing more advanced forms of business knowledge, including measures and rules.

As described above, fact model cannot be derived or computed from any other knowledge. In other words, its purpose is to generate data. The process of generating data from fact model could be illustrated as below.

Cascading supports to create and execute complex data processing workflows on top of Hadoop using any JVM-based language(Java, Scala, JRuby, Clojure, etc.) Most cascading related libraries are in the Maven Repository http://conjars.org/

We are going to use cascading to count users’ actions.

View full article »

Had a presentation last Friday, talked about how we use Glimpse to debug backend code and how to implement a custom plugin to profile our service code.

Full slides: Using Glimpse to debug backend code

Steps To Big Data: Hello, Pail

Just before I had my first anniversary holiday since I had joined communityengine. I started my new role in the recommendation team. The team is relatively new, so we are open to use virtually any technologies.

In the book Big Data (MEAP), Nathan Marz describes a framework calls Pail (dfs-datastores) which is a data storage solution on top of hadoop. It supports schema, merging small files into a large chunk for better hdfs performance etc.

We started to use Pail for our data collection. So what have we done?

  • a data schema defined in protobuf
  • an implementation of PailStructure
  • a job to run the data collection

Ready to dig deeper? Let’s get it started.

View full article »

Faster Status Query for MongoDB

I have been using indexOnly query radically in our project. But I have not got a chance to prove it really makes a difference. So this post will talk about if MongoDB’s compound index can boost query performance in some cases.

View full article »

Feel NuGet Packages Folder Sucks?

NuGet 1.6 introduced a stunning function for dependency management (the phrase, i reckon, is not so popular in .NET community, while it seems hot in others like Java, Ruby, etc.)

With which, you can Enabling Using NuGet Without Checking In Packages Folder (in our project which winded up had 150MB files).

As our engineering team is using Github as source control tool. Our project repository goes nuts, becomes massive. The model we are using is a single integration repository with a handful of feature repositories.

image

Which means if you want all feature repositories setup you are going to download 150MB x 4 = 600MB… well, kick off git clone and go to make a dozen cups of tea or coffee.

This is not a good practice at all, so this post http://coderjournal.com/2011/12/cleaning-up-your-git-repository-for-nuget-1-6/ helps you get rid of packages, and further, clean the repository history tree (you don’t want to keep those files in the history as well).

What we get instead cleaner and tinier repository? For me, at least I get better sense of dependency management.

Follow

Get every new post delivered to your Inbox.