Showing posts with label fun. Show all posts
Showing posts with label fun. Show all posts

Monday, September 5, 2011

Re: The grey areas of progressive enhancement

Going through some articles about progressive enhancement and found this one - The grey areas of progressive enhancement.

Well, not everything has to follow the progressive enhancement rules, let's keep it flexible.  If it is something critical for a business or corporate, you don't want that to lose the design.  And I believe it is the spirit of progressive enhancement as well, keep critical elements the same in all platform and let's those non-critical to be enhanced progressively.  

Here are something I can think of at this moment about progressive enhancement:-

  • Normal user won't look at your site using 2 or more browsers at the same time, so their user experience should basically be the same. But of course, those corporate identity design has to be kept as they are critical.
  • The cost of making everything the same in all browsers could be huge. And if it is not critical, why not just save those resources for something else?
  • You are punishing those users who are using older browser if we needs everything to be the same.  Because in order to achieve everything the same, client user may need to download extra images, extra js libraries.  

I came from the background of both "everything has to be the same" and "let's make it progressive enhance / gracefully degrade".  And each one has its good and bad, nothing is perfect honestly.

But for "making everything the same" method, here is my experience as a developer - You will learn the most out from it, but it could be a pain of the butt process.  Honestly if I have time and budget, I would do that, since it is fun. And a lot of famous libraries are coming out because some old browsers do not support certain features (maybe you could be the next one).  And again, if you have time and budget, just go for it :)


Extra
Ok, at the end, let me suggest you a graph and help you to decide when you should use "progressive enchantment" or not :)

The rule is "choose 2 and dump 1" :-
  • If an element has to be the same, and you have limited budget, you need to give a lot of time to it
  • If an element has to be the same, and you have short turn around time, you need to prepare a bigger budget ( hire more contractors, giving OT ... etc )
  • If you have both time and budget limit, think about if an element has to be the same or not. If it is not critical, then why bother?





Tuesday, August 23, 2011

Another Approach to Box Model and Responsive UI (CSS)

Recently came across a "new" approach to create box in html.  Honestly, it is not a new thing, but just not many people have used it or talk about it so far.

After doing a little research and testing on it, I can think of there are quite a number of practical use cases  by using this "new" approach.  Let me show you that and let's later discuss it a little bit.

Traditional Box Model
The traditional box model is created by defining the box width, margin, padding and border ... etc.   Please read it again, "width, margin, padding and border", I'm not crazy, it is related.

If you give it a second thought, the box is created from the inside out.. First by drawing one or two line(s) (width / height ), you created a space. And then you use the padding, margin as "fillers" to expand the space.

Well, I'm not saying the box model is not good.  Honestly, I think the current box model is the correct approach to your problems.  However, what I'm mentioning here is a potential theoretical alternative.


New Approach to Box Model (CSS)
The new method I'm talking about is something very similar to coordinate system in your photoshop.  A box is being drawn by providing 2 coordinates, for example,

pointA  ( 100px, 200px )
pointB  ( 150px, 250px )

With 2 points, you can define a rectangular shape.  But how do you create 2 points in css?  Well, it is easy, position attribute has 'top, left, right, bottom', and the 2 points is just (top, left) and (bottom, right).

But the points we are going to define, instead of exact coordinates, are offset.  What does that mean??  Well, glad that you ask!  Offset is the distance from your browser window.

It also means that your box do not need a width at all, because it is drawing from outside (or defined by the offset in other words ).  Plus, you don't need to put IE hacks for this box, since the padding won't affect the box in this case. Yep, it works on even IE 5.5, cool, huh?

And for the Responsive UI part, you can mix and match the @media query, and I believe you can achieve certain degree of  Responsive UI even without much help from javascript side, since this model is using offset to calculate the box.  Try to view the demo from your smartphone and change the viewport.  Imagine what you can do with @media query in the demo.

Well, I'm talking too much, let's do a demo then :)

Note: This demo is a simple demo for drawing box model using offset.  There are so many use cases on that, and it is only limited by your imagination!!

Note: This new approach by no means is better, it is just a different approach to solve the same problem, used it as you will.




  

Saturday, June 11, 2011

Latest jQuery plugin - HTML5 Spin Wheel

Just created a new jquery plugin just for fun recently. Part of the algorithms are taken from some other places. What I did here is just playing around with the HTML5 canvas, but somehow I also package that as a jquery plugin.

Here is the demo below:-
Try to enter the things you want to put on the wheel, for example,

  • Where to go to lunch today
  • Who is going to wash dishes today
  • Who is paying for lunch today
  • ... etc

Press Add to add more items.  After adding all your items, you can click the spin.



Note:
Feel free to modify the source as you will.  There is an array of applications that can be based on this plugin.  For example, you can integrate that with Yelp to create where to go to lunch today.  This plugin is just a simple demonstration of what HTML5 is capable of, but HTML5 is far powerful that just that.

IE User Note: 
It is recommended you use the latest (modern) browsers, like Chrome / Firefox / IE9, because HTML5 is still relatively new stuff, older browser may not support those at this point.  There are some libraries that can make your browser to recognize HTML5 tags, in our case of canvas, you can take a look at the Google's ExplorerCanvas.    

Thursday, June 9, 2011

What's it like to be recruited? ( by Brace )

This is from my email thread (by Barce), and since it is so funny, I post it to my blog :)


First off, I'm very grateful to my parents for getting me a computer when I was 8. I am not sure where I'd be if it wasn't for that.

I got inspiration from this HN article and did the same. My #s are way higher.
http://news.ycombinator.com/item?id=2608900

As an experiment, I submitted my resume to dice, monster and careerbuilder seeking a Ruby on Rails application developer position.

The result:
Monday: 46 calls, 22 voicemails, 39 emails.
Tuesday: 58 calls, 13 voicemails, 42 emails.
Wednesday: 23 calls, 11 voicemails, 34 emails.

I turned off monster, dice and careerbuilder at 11 am on tuesday and I'm still getting calls & emails.

Recruiters were submitting resumes to one particular job twice without my permission. This happened 4 times and is definitely unethical behavior. It hurts candidates b/c you can't interview at these places anymore.

The question I've asked is: how much are you willing to offer?

Most of the jobs are in the 80k - 100k range.

This means that if you got to a startup with no recruiter and are making 120k, the recruiter's company is making 20k - 40k on the sale of you.

The better recruiters have connections to companies mentioned in Techcrunch and these are at the 130k range and up.

The best rates are at Fortune 500 companies, where 200k is market. Heck, you can get an HTML5 / CSS3 position at one and get that rate.

Another question: How long has this job been advertised?

Sure demand is high, but a great job will never be

The technology:
I totally agree with folks who say that Facebook has made us closer, but recruiting technologies and its industry have made hiring managers and candidates farther apart. Someone or a group of people need to create a technology to disrupt this awful industry of selling people.

http://socialrecruitingreport.com/2011/06/02/removing-the-middle-man/

Recruiters are people who are trying to solve a pattern matching problem with crappy tools, but the better those tools get, the more in jeopardy their jobs are.

How I feel? I feel objectified. It's hard to swallow the image of a bunch of douchebags submitting your resume for jobs you never applied for.

I guess this is what it's like to be extremely attractive woman who has just become single. Some of the recruiters are total players and won't leave you alone when moving on would be more efficient and a better bet. Others are really, really bad, and you can tell they are reading lines from a script.

The recruiters I go with work like this:
1. They tell me *their* story. Why are they in recruiting? What do they want out of life?

2. They really listen. This means asking questions like, "How is Javascript different from AJAX?" Or deciding that what is on paper doesn't match what they are hearing, and that you're underselling yourself.

3. They get you lunch for your time. This is totally optional, but very nice.

4. They wrap up the meeting by telling you something about you that you might've not known about. E.G. one recruiter told me that I saw myself as more than just my job and that I like to protect people.

5. They are very efficient without seeming so.


What to do instead:
If finding a job is a pattern matching problem, and you are a coder, then code that regex that brings you the job of your dreams.

You're looking at 20k - 40k more / year if you can just cut out the middle.

Monday, May 23, 2011

Math that talks about love and sin

This graph, which is a periodic of sine, came across my mind this morning during the reading bible time (or TWA). At first, I doubted if it is related; But after looking at it for a while, it makes some sense actually. 

Well, look at the graph below and tell me what you see/think, or do you have any verse(s) in your mind when seeing this graph. Welcome to leave any comments and I will share mine later :)






Wednesday, April 27, 2011

Cool Color Code

Have you ever try this color code - "BADASS" ??

BADA55

Tuesday, April 5, 2011

A New Word - Greweet

Wow, I just invented a new word today - Greweet ( Gre - weet ).

It's the combination of "Great" and "Sweet".

It is used for expressing your appreciation of somebody's "exceptional" performance or action.

Usage: Well done!! You are so Greweet!

Updated:- I have submitted the word to urban dictionary, and it is published!!
http://www.urbandictionary.com/define.php?term=Greweet