Obfuscated C Code Contest

The International Obfuscated C Code Contest is a contest for people to write unusual C code to stress test the C compiler. It is a very interesting competition where people submit their C codes for judging. In this entries I would like to highlight some winning entries which manage to organize their code as a very nice image yet meaningful to the content that the code generated ( like n! entry ). Enjoy!!!

IOCCC RAY

According to the author, the program below is a small ray-tracer and does not use any C keywords (shocked!) as a program using keywords when printing will need to use more ink because of the boldness of the keywords. You can also see the word IOCCC RAY hidden in the midst of the code. Very inspiring! More details about this winning entry could be found here

X=1024; Y=768; A=3;

J=0;K=-10;L=-7;M=1296;N=36;O=255;P=9;_=1<<15;E;S;C;D;F(b){E="1""111886:6:??AAF"
"FHHMMOO55557799@@>>>BBBGGIIKK"[b]-64;C="C@=::C@@==@=:C@=:C@=:C5""31/513/5131/"
"31/531/53"[b ]-64;S=b<22?9:0;D=2;}I(x,Y,X){Y?(X^=Y,X*X>x?(X^=Y):0,  I (x,Y/2,X
)):(E=X);      }H(x){I(x,    _,0);}p;q(        c,x,y,z,k,l,m,a,          b){F(c
);x-=E*M     ;y-=S*M           ;z-=C*M         ;b=x*       x/M+         y*y/M+z
*z/M-D*D    *M;a=-x              *k/M     -y*l/M-z        *m/M;    p=((b=a*a/M-
b)>=0?(I    (b*M,_      ,0),b    =E,      a+(a>b      ?-b:b)):     -1.0);}Z;W;o
(c,x,y,     z,k,l,    m,a){Z=!    c?      -1:Z;c     <44?(q(c,x         ,y,z,k,
l,m,0,0     ),(p>      0&&c!=     a&&        (p<W         ||Z<0)          )?(W=
p,Z=c):     0,o(c+         1,    x,y,z,        k,l,          m,a)):0     ;}Q;T;
U;u;v;w    ;n(e,f,g,            h,i,j,d,a,    b,V){o(0      ,e,f,g,h,i,j,a);d>0
&&Z>=0? (e+=h*W/M,f+=i*W/M,g+=j*W/M,F(Z),u=e-E*M,v=f-S*M,w=g-C*M,b=(-2*u-2*v+w)
/3,H(u*u+v*v+w*w),b/=D,b*=b,b*=200,b/=(M*M),V=Z,E!=0?(u=-u*M/E,v=-v*M/E,w=-w*M/
E):0,E=(h*u+i*v+j*w)/M,h-=u*E/(M/2),i-=v*E/(M/2),j-=w*E/(M/2),n(e,f,g,h,i,j,d-1
,Z,0,0),Q/=2,T/=2,       U/=2,V=V<22?7:  (V<30?1:(V<38?2:(V<44?4:(V==44?6:3))))
,Q+=V&1?b:0,T                +=V&2?b        :0,U+=V    &4?b:0)     :(d==P?(g+=2
,j=g>0?g/8:g/     20):0,j    >0?(U=     j    *j/M,Q      =255-    250*U/M,T=255
-150*U/M,U=255    -100    *U/M):(U    =j*j     /M,U<M           /5?(Q=255-210*U
/M,T=255-435*U           /M,U=255    -720*      U/M):(U       -=M/5,Q=213-110*U
/M,T=168-113*U    /       M,U=111               -85*U/M)      ),d!=P?(Q/=2,T/=2
,U/=2):0);Q=Q<    0?0:      Q>O?     O:          Q;T=T<0?    0:T>O?O:T;U=U<0?0:
U>O?O:U;}R;G;B    ;t(x,y     ,a,    b){n(M*J+M    *40*(A*x   +a)/X/A-M*20,M*K,M
*L-M*30*(A*y+b)/Y/A+M*15,0,M,0,P,  -1,0,0);R+=Q    ;G+=T;B   +=U;++a<A?t(x,y,a,
b):(++b<A?t(x,y,0,b):0);}r(x,y){R=G=B=0;t(x,y,0,0);x<X?(printf("%c%c%c",R/A/A,G
/A/A,B/A/A),r(x+1,y)):0;}s(y){r(0,--y?s(y),y:y);}main(){printf("P6\n%i %i\n255"
"\n",X,Y);s(Y);}

(more…)

HTTP Status Code

Recently I was working around with a lot of HTTP status code. Thinking this table will be useful for every web developer as references.

Status Code Status Message
1xx Informational
100 Continue
101 Switching Protocols
102 Processing
 
2xx Success
200 OK
201 Created
202 Accepted
203 Non-Authoritative Information
204 No Content
205 Reset Content
206 Partial Content
207 Multi-Status
226 IM Used
 
3xx Redirection
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
305 Use Proxy
307 Temporary Redirect
 
4xx Client Error
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precondition Failed
413 Request Entity Too Large
414 Request-URI Too Long
415 Unsupported Media Type
416 Requested Range Not Satisfiable
417 Expectation Failed
422 Unprocessable Entity
423 Locked
424 Failed Dependency
426 Upgrade Required
 
5xx Server Error
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported
507 Insufficient Storage
510 Not Extended

30+ Nicest Table CSS Designs You Can Apply Into Your Project

Table is a very basic thing in HTML and website building. Many times, when I encounter a table in my project, I usually need to find out a way to style the table to make it nice and be suitable with the website. Fortunately, a lot of techniques and designs of table are already available on the web together with tutorials teaching people to build a very neat and nice table. In this article, I would like to introduce those techniques and designs so that you can refer to when you need to apply one of them into your project.

Let’s start from neat & simple designs from http://fluidmind.org

FLUIDMIND.ORG


This design is a very simple design. However, it manages to change all the default border of a table and add in 1px border to make the table nice and neat to view.


This design improves from the first one by adding in the background color and make the table easy to see vertically.


This design improves the horizontal readability and enhances the view by making the header color outstanding from the rest of the table.

(more…)

5 Very Handy Javascript Techniques

Using with keyword to shorten your code

“with” keyword becomes extremely handy when you need to use many attributes of an object without keep calling the object

var house = {
     paint: "blue",
     size: "big",
     hasYard: true,
     numberOfLivingRooms: 2,
     numberOfStoreRooms: 1,
     numberOfBedRooms: 4,
     numberOfKitchen: 3,
     masterArea: {
           hasBedRooms: true,
           masterAreaBedRooms: 3
    }
};

(more…)

JSON Object - Powerful Javascript Notation Overview

I believe most of you have heard about using XML to store data. However, using JSON object to store data in Javascript is the most convenient way as JSON object is native in Javascript programming. An example of JSON object is as following

(more…)