css3 - Yahoo News Search Results

Account Executive (Tupelo Bureau)

WCBI- TV is seeking an Account Executive Account Executive for the Tupelo Bureau for the development of new business for WCBI (CBS), My Mississippi, North Mississippi CW and WCBI.com and to work with the sales department to achieve goals and strategies set forth by management.

We're hiring!

Looking for a job where you can stretch your creative legs? OnMilwaukee.com is hiring a full-time WordPress developer.

Learn .Net Framework

Learning .Net Framework is a step by step guide/tutorial on .Net Framework, it is aimed at those who are starting or have just started...

Use code DEAL

SAVE 30% - Use code DEAL

Lackawanna County Library System to launch new catalog system

A new digital catalog is coming to the Lackawanna County Library System on March 26. This change will bring convenient new features such as custom user names, simpler searching and a history of material checked out. The new catalog will also include customized lists, where users will have the opportunity to group titles into categories for easy...


recent bookmarks tagged css3

something went wrong

Posted on

Top Answers About CSS3 on Quora

Top Answers About CSS3

Do developers memorize all tags, classes and functions?

No, and you should never try to. Aside from What WG's HTML5 being a bit of a moving target in some respects, even with XHTML 1.1 and CSS, it is virtually impossible to memorize them. A real developer keeps notes, uses references, and/or uses tools that assist them--for example, IntelliSense in many of Microsoft's developer IDEs. They also rely heavily on their search engine of choice--DMOZ, Bing, Google, Yahoo, DuckDuckGo, etc... .

As a web designer, I myself keep references nearby (O'Reilly "Definitive Guide" series is always useful for this, both ebook and physical copies), and use tools like Visual Studio and Microsoft Expression Web for the IntelliSense feature. I also make sure I have a tabs for WebPlatform's documentation and the Mozilla Developer Network open, both being great reference sources when I need to look up a tag or function.

See question on Quora

Posted on 12 January 2015

Do developers memorize all tags, classes and functions?

"You don't have to know everything; you just have to know where to find it."
- Nickie Haflinger (as "Sandy Locke"), The Shockwave Rider, John Brunner

No, I don't have all the Java APIs memorized; there are simply too many of them, when you count all the classes in the standard Java class library, as well as all the libraries and frameworks that I commonly use (or are commonly used at IQN), not to mention all the classes specific to FrontOffice that I have to know about.

But this is why I make use of various assistive tools:
  • Autocomplete and pop-up source help within my IDE.  This is one reason why I strive for good JavaDocs on the code I write; the IDE can make use of it and display it.
  • A local copy of the Java library reference, that I can bring up in a browser tab.
  • Links to the online documentation for various libraries, whether they be the Spring framework, Apache Commons, or Google Guava.
  • And, when all else fails, there's always Google. :-)
I have some of it memorized, so that I can perform many simple operations without needing to refer to anything.  But I don't hesitate to look something up when in doubt; a little time spent doing that can save time later in compile/debug cycles.  (I don't make many compiler errors at build time these days...and those that do slip through are usually because I haven't looked hard enough to find them using the IDE tools.)

Hat tip: Daniel Catalan for the A2A.

See question on Quora

Posted on 1 December 2014

What are common mistakes user experience designers make?

1. Trying to account for every imaginable use case

One of the most common mistakes I see designers make is not recognizing that trying to account for every single thing that every type of user might want to do isn't always a great approach.

In some ways this seems counterintuitive... Isn't it good to create a design that fits absolutely everyone's needs? In theory, yes. But in practice, this ends up manifesting itself as half your system's functionality only being used by 10% of your users. As a designer, you lose focus on what matters and add complexity that 90% of your users are burdened with (see Microsoft Word).

The way this problem often appears is someone says "Well how does your design handle X user, in Y situation, with Z circumstances" and the designer responds by immediately adding in a feature to account for this, without seriously considering how rare or low impact the use case may be.

The way to avoid this is to be extremely clear with yourself about who your 90% user is and ruthlessly driving the design with them in mind. That's what matters.

2. Overfitting a problem

We can think of the process of designing a product as observing some kind or organizational or human behavior in the real world and building a tool to support, extend, and amplify these behaviors. At a high level, if we can build a product that effectively models and extends the human or organizational behavior, we've built a useful product (this is exactly what many user-centered design methods are meant to support).

Whenever we create model of some behavior (be it statistics or UX design), though, there is always a possibility of overfitting.

Overfitting occurs when a statistical model describes random error or noise instead of the underlying relationship. - Wikipedia

One of the biggest mistakes that UX designers make is not attempting to understand the difference between the random noise and underlying relationships in human and organizational behavior.

If you can design a product that supports just these underlying relationships and solves just the core challenges, you've likely built a very long-lasting, impactful product that will appeal to many people. Products that do this extremely well can transform industries.

3. Only improving a design by making small, careful iterations

The final mistake that I commonly see UX designers make is assuming that making small, careful iterations to a design is always the best way to create the best product. This is often an effect of always AB testing designs and blindly choosing the winner. This approach is similar to hill climbing.

Hill climbing is an iterative algorithm that starts with an arbitrary solution to a problem, then attempts to find a better solution by incrementally changing a single element of the solution. If the change produces a better solution, an incremental change is made to the new solution, repeating until no further improvements can be found.

Hill climbing is good for finding a local optimum (a solution that cannot be improved by considering a neighbouring configuration) but it is not guaranteed to find the best possible solution out of all possible solutions. The characteristic that only local optima are guaranteed can be cured by using restarts. - Wikipedia

As a UX designer, it is your job to recognize the situations when the best approach is to try something entirely different in hopes of finding a dramatically better solution, rather than just optimizing your existing approach.

See question on Quora

Posted on 26 October 2014

What is the length in millimeter of 1px (that we mention in CSS)?

Others have written some pretty detailed explanations. One way to think about it would be like graph paper. Let's say you have two sheets of paper. One has 5 squares per inch, another has 10 squares per inch. Now create a line by coloring in squares in a diagonal. The one on the paper with 10 squares per inch will look a bit smoother than the one with 5 squares per inch.

Any image we see on screen is simply a version of that, it is composed of colored in squares. The type you see now appears smooth because the squares are very tiny. Computers will also use gradations of color to make things look smoother. So if this type is black it will actually include shades of gray to make it look less jagged.

When we design for the Web, rather than for print, we stop thinking about real world measurements and think instead of relative measurements. If I'm creating a Web page that has a maximum width of 960 pixels, the size one sees with depend on the device one views it on.

My Macbook Pro has a resolution of 1680px x 1050px at 129 px per inch. Thus my 960px web page will have plenty of background color showing on either side.

An Apple iPhone 4 has a resolution of 960×640 at 326 px per inch. My site will just fit that device.

Now lets imagine I place a 300x300px photo on the site. On my Mac it will look about 2.33 inches wide. That's somewhat small but if the picture isn't too detailed it will look OK. That same image on the iPhone will be less than an inch wide. While it has the same number of pixels it may be harder to see any detail just because it is so small.

The same is true of type. 16px type on my Mac looks fine but on the iPhone it will look smaller. Even young people may want to reach for reading glasses to read the type.

Knowing this we try to design things in a manner that they will look good on a variety of devices and not worry about millimeters or inches. If we know are sites will be viewed on phones and tablets we will think about resolution and may create "responsive" sites that adapt to different scenarios. In this case I might create a style sheet that uses larger type on smaller devices.

One time we do think about real world measurements is when creating stylesheets for print versions of sites. In that case we can use inches or millimeters to define things because we know they are meant to be printed on paper with a fixed dimension. Thus my print stylesheet might be set up to be 8.5 inches wide.

See question on Quora

Posted on 13 October 2014

I have learned HTML, CSS and CSS3, but I am unable to design a complete webpage. What should I do to learn to use them to build a website?

I learnt the same way you did and ended up not been able to build a complete website. All you have to do is install a Dreamweaver software, most sites, if not all you see on the internet are designed using Adobe dreamweaver software. Install it and learn to use the software to create amazingly stunning websites.

See question on Quora

Posted on 4 October 2014

I have learned HTML, CSS and CSS3, but I am unable to design a complete webpage. What should I do to learn to use them to build a website?

This is a complete web page:
<!DOCTYPE html>
<title>This is a webpage</title>
<style type="text/css">
body { font-family: sans-serif; }
a:link, a:visited, a:active { text-decoration: none; }
a:hover { text-decoration: underline; }
<p>This is a web page</p>
<p>Now let's read some more <a href="http://quora.com">Quora</a>.</p>

If you can't build that, you haven't learned HTML or CSS. You've learned some tags and maybe some selectors. It's bringing those together that makes a web page. A website is just a bunch of pages that work together to achieve a particular goal.*

There are thousands of books and websites that can teach you how to design, code, and deploy a simple page or an entire site. Here is one: Build Your Own Webpage

As Tim Samoff mentions in the comments on my answer, what will probably help bring this all together for you is a better understanding of the CSS Box Model. This link from CSS-Tricks (a great site, BTW) which Tim recommended will serve you well: The CSS Box Model | CSS-Tricks

*I'm oversimplifying. I know that.

See question on Quora

Posted on 3 October 2014

Do developers memorize all tags, classes and functions?

Computer languages are just like human languages.

You don't know every single word of the English language, right? You know the common ones that you use frequently, and if you need to write about a specific specialized topic, you look up the words you need for that topic.

I write in Objective-C, and that language is redundantly redundant. Every task has at least five different ways to do it, often with object and methods that are exactly the same, just with a different two-letter prefix based on their ancestral origin.

You want an object that represents a color? you have UIColor, CGColor, CIColor,  and for OpenGL you also use a GLKVector4. all that just to store and manipulate a red, green, blue and alpha value.

Trust me, nobody can memorize everything.

BTW- For HTML, you will probably eventually memorize al  the tags. there are not all that many, compared with the objects and methods of a programming language.

See question on Quora

Posted on 29 August 2014

Do developers memorize all tags, classes and functions?

Short answer: no.

Longer answer: Many developers I know, including myself, actually have a pretty bad memory and put zero effort into memorizing things like this. Instead, you just keep looking things up until you no longer need to. This takes less time than you think.

Looking things up is actually a skill that you can master, and it gets easier and easier the more things you look up, especially since developer documentation is often organized in a way to facilitate quick lookups.

See question on Quora

Posted on 26 August 2014

Are there other websites like W3Schools that have examples of code and let you run a live version of the code, so you can play around with it?

http://www.tutorialspoint.com (the ones where there is a "try it" button in the corner)
 http://compileonline.com doesn't have examples but it'll let you compile or run code in pretty much any language you want. and
http://jsfiddle.net as Karan suggested.
also there are numerous exercise based websites like http://www.codeacademy.com that use a live canvas to let you play around with the code.

See question on Quora

Posted on 6 August 2014

Do developers memorize all tags, classes and functions?

I started to learn programming 8 years ago. I am now a software developer in C++ and I do at a professional level for 3 years.

Few days ago I just Google'd "printf format specifiers" (can't use streams, don't ask, long story) to see how the hell I can put some numbers in a string. Even though I did it countless times during my life. Is like one of the first things you learn in C.
I also forget the name of classes or services I use almost daily. Or my source control password. I forget what kind of algorithms STL provides or commonly used commands.

Really, I am just plain bad when it comes to memorizing. But I don't consider myself a bad developer because of this. Part of my bad memory is also because I don't actually try to memorize those. I prefer to memorize things that actually improve the quality of my work.

Sure, you'll get used and learn some of the syntax you use, but even if you forget or can't remember some, just find it. Look in the documentation or whatever. So if I were you I would not worry a single second about memorizing stuff. Worry about understanding.

See question on Quora

Posted on 5 June 2014

Is there a general style-guide for writing css, or is it more like put whatever you want in there as long as the websites looks like you want it to?

That's very much open for debate. CSS is quite free form. The ultimate test is, as you have correctly identified, does it work? But code also has to be maintained, so some attention to how code is written is important for maintainabillity. To that end, a little organization and commenting can go a long way. I tend to break mine into sections, by function (e.g. header styles, body styles, footer styles). But there are many ways to do it.

See question on Quora

Posted on 4 May 2014

Do developers memorize all tags, classes and functions?

There are developers I know who do commit everything they can to memory.  I don't like working with them, myself, because that's about all they can do and I already have a search engine that doesn't cost a salary.

There are things you'll remember, but I'd say nothing you should specifically memorize.  Look everything up when it seems unfamiliar, and try to have seen as much as possible, but...you never spent any time memorizing which of your friends are which, did you?  Which house is yours?  No, because it's something you deal with a lot.

Natural memory works on repetition and connections.  You'll know one tag from another because you'll use certain tags together all the time, not because you wrote a song listing each one.

Also, if you understand the reasoning behind designs, it's a lot easier to figure out what you can't remember.  There was a time I could guess at just about any function in the Windows API, because I spoke regularly with friends who worked at Microsoft and understood the mindset.

All that is, of course, unless you enjoy memorizing things.  I mean, some people do spend months memorizing digits of pi, so if that's your thing, go nuts.  Nobody's going to make fun of you for knowing things off the top of your head.

See question on Quora

Posted on 20 March 2014

Do developers memorize all tags, classes and functions?

Just as with a natural language, you have an active and a passive vocabulary with a development language. That active vocabulary is a collection of keywords which you use daily, and understand fluently. The passive vocabulary is a set of keywords which you recognize, but may not think of immediately.

For HTML, you should have an active vocabulary of about 20 - 30 elements. Look over web pages on just about any web site (including Quora) and you'll find the same 30ish HTML elements; <body>, <div>, <p>, <ul>, etc. These you should know well.

Your active vocabulary are those HTML tags that you've read about - from a book or a blog. It's ok that you don't know the half-a-dozen different elements that exist for a <table>. but if you see a <colgroup>, it should seem familiar to you.

Your goals in growing as a front-end developer are three fold:
  1. Develop a core 'active vocabulary' of words and concepts which you grasp fluidly
  2. Develop a wider 'passive vocabulary' of words and concepts with which you are familiar
  3. Shift "passive vocabulary" items into your active vocabulary after you learn new concepts.
in HTML, learn the key elements to build a web page, but start learning form attributes. Once you know all of the ins and outs of an HTML5 form, repeat the process with tables.

In CSS, learn the properties and values needed to produce a basic layout. Become familiar with background images and borders. Learn backgrounds and borders fluidly while you're picking up CSS3 effects. Master the CSS3 effects while you learn animations.

In JavaScript, start with jQuery. Learn about 30 or so methods: hide, show, toggle, parent(), child, find, etc. Once you can select things, learn Ajax. Once you're good with Ajax, learn vanilla JavaScript.

There's never a point at which you learn "everything" in a development language. But there is a point in which you answer more questions than you ask.

See question on Quora

Posted on 19 March 2014

Do developers memorize all tags, classes and functions?

  1. Find a project worth doing
  2. Work on the project until you don't know something
  3. Look up that thing you don't know
  4. Continue doing the project

This involves no explicit memorization, yet you will end up memorizing the things that you use the most. With each successive iteration of this process you will find that you need to look up less and less. However, you will always need to look up something.

Being able to quickly find answers to the questions you don't know is by far the most important skill you could develop on the path to becoming a great programmer. This will stick with you your whole career and is one of the most widely applicable skills that you will learn.

See question on Quora

Posted on 18 March 2014

Do developers memorize all tags, classes and functions?

I personally like to put in my own classes. I use things like "contain" (max-width container), "halfer" (50% column), and "cta" (colorful button) in almost all my projects. This is because I don't really like other people's classes and I hate when they use underscores (because they require a shift button! dash is better).

With that said, if you use a framework like Bootstrap a lot, then it's worth remembering the important classes. I imagine that 20% of the classes and tags available account for about 80% of your usage (pareto's principle). Same with basic HTML. We all know <p> and <h2>, but could you use <video>, with all necessary file types, without looking? Probably not, but then again, you rarely need to use the <video> tag, so it's not worth remembering. Just Google it once in a blue moon when you need it.

See question on Quora

Posted on 18 March 2014

Do developers memorize all tags, classes and functions?

You should know them all enough that you can recognize what you would need in a given situation. From there, you can Google the tag or property name.

It's a lot like high school physics. Memorizing the formulas is great, but what's really important is being able to recognize, "oh, this system conserves angular momentum," then Googling the moment of inertia of whatever shape you have. If you do remember that solid spheres that I = 2/5 mr^2, then you can do it more quickly.

See question on Quora

Posted on 17 March 2014

What are 5 essential skills every Web Developer should have?

The idea here is that most of us should already know most of what is on this list. But there just might be one or two items you haven't really looked into before, don't fully understand, or maybe never even heard of.

Interface and User Experience
  • Be aware that browsers implement standards inconsistently and make sure your site works reasonably well across all major browsers. At a minimum test against a recent Gecko engine (Firefox), a WebKit engine (Safari and some mobile browsers), Chrome, your supported IE browsers (take advantage of the Application Compatibility VPC Images), and Opera. Also consider how browsers render your site in different operating systems.
  • Consider how people might use the site other than from the major browsers: cell phones, screen readers and search engines, for example. — Some accessibility info: WAI and Section508, Mobile development: MobiForge.
  • Staging: How to deploy updates without affecting your users. Have one or more test or staging environments available to implement changes to architecture, code or sweeping content and ensure that they can be deployed in a controlled way without breaking anything. Have an automated way of then deploying approved changes to the live site. This is most effectively implemented in conjunction with the use of a version control system (CVS, Subversion, etc.) and an automated build mechanism (Ant, NAnt, etc.).
  • Don't display unfriendly errors directly to the user.
  • Don't put users' email addresses in plain text as they will get spammed to death.
  • Add the attribute rel="nofollow" to user-generated links to avoid spam.
  • Build well-considered limits into your site - This also belongs under Security.
  • Learn how to do progressive enhancement.
  • Redirect after a POST if that POST was successful, to prevent a refresh from submitting again.
  • Don't forget to take accessibility into account. It's always a good idea and in certain circumstances it's alegal requirement. WAI-ARIA and WCAG 2 are good resources in this area.
  • Don't make me think


  • Implement caching if necessary, understand and use HTTP caching properly as well as HTML5 Manifest.
  • Optimize images - don't use a 20 KB image for a repeating background.
  • Learn how to gzip/deflate content (deflate is better).
  • Combine/concatenate multiple stylesheets or multiple script files to reduce number of browser connections and improve gzip ability to compress duplications between files.
  • Take a look at the Yahoo Exceptional Performance site, lots of great guidelines, including improving front-end performance and their YSlow tool (requires Firefox, Safari, Chrome or Opera). Also, Google page speed (use with browser extension) is another tool for performance profiling, and it optimizes your images too.
  • Use CSS Image Sprites for small related images like toolbars (see the "minimize HTTP requests" point)
  • Busy web sites should consider splitting components across domains. Specifically...
  • Static content (i.e. images, CSS, JavaScript, and generally content that doesn't need access to cookies) should go in a separate domain that does not use cookies, because all cookies for a domain and its subdomains are sent with every request to the domain and its subdomains. One good option here is to use a Content Delivery Network (CDN).
  • Minimize the total number of HTTP requests required for a browser to render the page.
  • Utilize Google Closure Compiler for JavaScript and other minification tools.
  • Make sure there’s a favicon.ico file in the root of the site, i.e. /favicon.ico. Browsers will automatically request it, even if the icon isn’t mentioned in the HTML at all. If you don’t have a/favicon.ico, this will result in a lot of 404s, draining your server’s bandwidth.

SEO (Search Engine Optimization)
  • Use "search engine friendly" URLs, i.e. use Page on example.com instead Page on ofexample.com
  • When using # for dynamic content change the # to #! and then on the server$_REQUEST["_escaped_fragment_"] is what googlebot uses instead of #!. In other words,./#!page=1 becomes ./?_escaped_fragments_=page=1. Also, for users that may be using FF.b4 or Chromium, history.pushState({"foo":"bar"}, "About", "./?page=1"); Is a great command. So even though the address bar has changed the page does not reload. This allows you to use ? instead of #! to keep dynamic content and also tell the server when you email the link that we are after this page, and the AJAX does not need to make another extra request.
  • Don't use links that say "click here". You're wasting an SEO opportunity and it makes things harder for people with screen readers.
  • Have an XML sitemap, preferably in the default location /sitemap.xml.
  • Use <link rel="canonical" ... /> when you have multiple URLs that point to the same content, this issue can also be addressed from Google Webmaster Tools.
  • Use Google Webmaster Tools and Bing Webmaster Tools.
  • Install Google Analytics right at the start (or an open source analysis tool like Piwik).
  • Know how robots.txt and search engine spiders work.
  • Redirect requests (using 301 Moved Permanently) asking for www.Example Domain to Example Domain(or the other way round) to prevent splitting the google ranking between both sites.
  • Know that there can be badly-behaved spiders out there.
  • If you have non-text content look into Google's sitemap extensions for video etc. There is some good information about this in Tim Farley's answer.

  • Understand HTTP and things like GET, POST, sessions, cookies, and what it means to be "stateless".
  • Write your XHTML/HTML and CSS according to the W3C specifications and make sure they validate. The goal here is to avoid browser quirks modes and as a bonus make it much easier to work with non-standard browsers like screen readers and mobile devices.
  • Understand how JavaScript is processed in the browser.
  • Understand how JavaScript, style sheets, and other resources used by your page are loaded and consider their impact on perceived performance. It is now widely regarded as appropriate to move scripts to the bottom of your pages with exceptions typically being things like analytics apps or HTML5 shims.
  • Understand how the JavaScript sandbox works, especially if you intend to use iframes.
  • Be aware that JavaScript can and will be disabled, and that AJAX is therefore an extension, not a baseline. Even if most normal users leave it on now, remember that NoScript is becoming more popular, mobile devices may not work as expected, and Google won't run most of your JavaScript when indexing the site.
  • Learn the difference between 301 and 302 redirects (this is also an SEO issue).
  • Learn as much as you possibly can about your deployment platform.
  • Consider using a Reset Style Sheet or normalize.css.
  • Consider JavaScript frameworks (such as jQuery, MooTools, Prototype, Dojo or YUI 3), which will hide a lot of the browser differences when using JavaScript for DOM manipulation.
  • Taking perceived performance and JS frameworks together, consider using a service such as theGoogle Libraries API to load frameworks so that a browser can use a copy of the framework it has already cached rather than downloading a duplicate copy from your site.
  • Don't reinvent the wheel. Before doing ANYTHING search for a component or example on how to do it. There is a 99% chance that someone has done it and released an OSS version of the code.
  • On the flipside of that, don't start with 20 libraries before you've even decided what your needs are. Particularly on the client-side web where it's almost always ultimately more important to keep things lightweight, fast, and flexible.

Bug fixing
  • Understand you'll spend 20% of your time coding and 80% of it maintaining, so code accordingly.
  • Set up a good error reporting solution.
  • Have a system for people to contact you with suggestions and criticisms.
  • Document how the application works for future support staff and people performing maintenance.
  • Make frequent backups! (And make sure those backups are functional) Ed Lucas's answer has some advice. Have a restore strategy, not just a backup strategy.
  • Use a version control system to store your files, such as Subversion, Mercurial or Git.
  • Don't forget to do your Acceptance Testing. Frameworks like Selenium can help.
  • Make sure you have sufficient logging in place using frameworks such as log4j, log4net or log4r. If something goes wrong on your live site, you'll need a way of finding out what.
  • When logging make sure you capture both handled exceptions, and unhandled exceptions. Report/analyse the log output, as it'll show you where the key issues are in your site.
Lots of stuff omitted not necessarily because they're not useful answers, but because they're either too detailed, out of scope, or go a bit too far for someone looking to get an overview of the things they should know. Please feel free to edit this as well, I probably missed some stuff or made some mistakes.

Resource>> What technical details should a programmer of a web application consider before making the site public?

See question on Quora

Posted on 26 January 2014

Which tools and services do you use in your work?

In addition to a lot of awesome stuff people have said, We love and recommend:

Zoompf, better than ySlow or pagespeed. (Disclaimer: I work for them, so I'm biased.)
Github (who doesn't?)
Image Magic.

I'm sure there are others, but we are big fans of those and use them all the time.

See question on Quora

Posted on 18 October 2013

What are 5 essential skills every Web Developer should have?

  1. Be an egoless programmer. Remember that you are not your code. The only way to improve is to be open to feedback from others and give honest, non-judgemental feedback to others.
  2. Be a team player. Building software is a team sport. You don’t “own” your parts of the code. Instead, your job is to make sure the whole package works as expected. Don’t be a typical “well, it works on my machine” guy. It has to work on users machines.
  3. Be a learner. Technology is changing fast. What was hot 5 years ago is no longer the best—stuff that’s relevant today didn’t even exist 5 years ago. You have to constantly learn new things (e.g. languages, libraries, patterns).
  4. Be a T-shaped person. Specialize in one narrow field and have a general understanding of a broader range of technologies. This makes you a very valuable asset within any organisation.
  5. Be relentlessly resourceful. Become a go-to person that can solve any problem. You don’t have to be able to solve every problem yourself, but you always know where to go to find the answer.

    As in Why no one is looking for ‘rockstar programmers’ stop believing in the Ninja/Rockstar myth.

See question on Quora

Posted on 2 October 2013

How significant is knowledge of JavaScript now, considering that many of its features are being replicated by CSS3?

There is a flaw in your question. 'Many' of Javascript's functions are not being replaced by CSS. A very small few dynamic features of design, which Javascript used to perform since there was no alternative, have now been put back where they belong - in the stylesheet.

Javascript does much, much more than simply manipulate the DOM for style and animation. The vast majority of all interactivity on the web is handled by Javascript. Turn it off in your browser as a test and see how different the web is.

There isn't really a front-end rival to Javascript. The same prime position is held by PHP for back-end scripting, though PHP has more viable rivals than does Javascript.

See question on Quora

Posted on 13 September 2013

Which tools and services do you use in your work?

Sublime -
Firebug -
oh wait Firebug -

The easiest way to create your CSS sprites

Firefox - still has the most useful tools -
take a full-size screenshot -

goto developer toolbar -
in the command line type -
screenshot --fullpage filename.png (saves to your download folder)

firefox addons -

webdeveloper toolbar
event bug (firebug addon)
user agent switcher

php (sometimes ruby, python, perl, flash etc...)
LAMP -mostly
bash scripts

handy bookmarklets -

Visual Event

Prototyping -
Home - Pencil Project

could go on for days - (will update with links etc...)

See question on Quora

Posted on 14 May 2013

What is the best method for adding 2x images to webpages that will be displayed on the new iPad with Retina graphics?

Making your app ready for Retina displays doesn’t have to be a hassle. Whether you are building a new app or upgrade an existing one, this guide is designed to help you get the job done smoothly.

Make it Retina first

The easiest and most time-saving way to add retina support is to create one image that is optimized for retina devices and serve it to non-retina devices as well.

By now every modern browser uses bicubic resampling and does a great job with downsampling images. Here is a comparison of downsampling in Photoshop vs Google Chrome using an image from our Growth Engineering 101 website.

There are two ways to let the browser downsample images for you. Using img tags and using CSS background images.

If you have img tags serve the retina optimized image and set the width and height attributes to half of the resolution of the actual image (e.g. 400x300 if the image dimensions are 800x600).

<img src=”http://www.example.com/retina-image-800x600-2x.png” width=”400” height=”300”>

If you use images as CSS background you can use the background-size property of CSS3 to downsample the image for non-retina devices.

<div class=”photo”></div>

.photo {     background-image: url(retina-image-800x600-2x.png);     background-size: 400px 300px;     background-repeat: no-repeat;     display: block;     width: 400px;     height: 300px; }

In both cases make sure to use even numbers in both dimensions to prevent displacement of pixels when the image is being downsampled by the browser.
When downsampling is not good enough
Usually browser downsampling should work very well. That said there are some situations where downsampling in the browser might make images blurry.

Here we have a bunch of 32x32 px social icons.
And here is how they look like downsampled to 16x16px by Photoshop’s as well as Google Chrome’s bicubic filter. It seems like we get better results from Photoshop in this case.

To get the best results for our users we can create two versions of the same image. One for retina devices and another one downsampled by photoshop for non-retina devices.

Now you can use a CSS media query to serve retina or non-retina images depending on the pixel density of the device.

/* CSS for devices with normal screens */ .icons {     background-image: url(icon-sprite.png);     background-repeat: no-repeat; } /* CSS for high-resolution devices */ @media only screen and (-Webkit-min-device-pixel-ratio: 1.5), only screen and (-moz-min-device-pixel-ratio: 1.5), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (min-device-pixel-ratio: 1.5) {     .icons {         background-image: url(icon-sprite-2x.png);         background-size: 200px 100px;         background-repeat: no-repeat;     } }

If you use a background color for small icons on the other hand, downsampling by the browser works pretty well. This is the same downsampling example with white background.

Polishing your Downsampled Images

If you’re still not satisfied with the results from Photoshop’s downsampling you can go the extra mile and hand-optimize the non-retina version to get super crisp results.

Below are some examples of images from the Blossom product website that I hand-optimized for people on non-retina devices.

Borders & Strokes

Here is an example of downsampling issues with hairlines where I re-draw the lines of the downsampled image.
View the Retina Version of this Image on Dribbble.
Here is an example of downsampling issues with text. In this case I manually re-wrote the text “Feature Pipeline” to get to a crisp result.

The Image above is the Retina Version

When details, crisp fonts and clean hairlines are important you might want to go the extra mile.

Try to avoid Images

The main disadvantages of rasterized images are their big file size and that they don’t scale well to different sizes without affecting the image quality. Great alternatives to rasterized graphics are CSS, Scalable Vector Graphics (SVG) and Icon Fonts.

If you have any chance to build graphical elements of your app in CSS go for it. You can use it to add gradients, borders, rounded corners, shadows, arrows, rotate elements and much more.

Here are a few examples of interaction elements in Blossom that are implemented in CSS. The subtle gradient is powered by CSS gradients and the custom font in use on this button is Kievit served via Typekit. No images.
In the following screenshot the only two images used are the user avatar and the blue stamp. Everything else – the circled question mark, the dark grey arrow next to it, the popover, its shadow and the arrow on top of it are all pure HTML and CSS.

Here you can see how projects in Blossom look like. It’s a screenshot of a project’s website used as cover on a stack of paper sheets. The paper sheets are implemented with divs that are rotated using CSS.

Also the circled arrow in the righthand side of the screenshot below is pure CSS.

Here are some awesome tools that can help you to save time when you are creating effects using CSS.

CSS Generator:
Cross browser CSS3 syntax by @RandyJensen.
CSS3Generator by @RandyJensen

CSS Arrows:
CSS for tooltip arrows by @ShojBerg.

Generating CSS for Sprites:
Sprite Cow helps you get the background-position, width and height of sprites within a spritesheet as a nice bit of copyable css. It’s built by TheTeam and it’s a real time saver and definitely worth giving a try.
Generate CSS for sprite sheets

The main advantage of SVG is that unlike rasterized graphics they scale reasonably well to various sizes. If you have simple shapes they usually are also way smaller than PNGs and are often used for things like charts.

Icon Fonts are often used as a replacement for image sprites. Similar to SVG they can be scaled up infinitely without any loss of quality and are usually smaller in size compared to image sprites. On top of that you can use CSS to change their size, color and even add effects like shadows.
Both SVG and Icon Fonts are well supported by modern browsers.

Retina ready Favicons

Favicons are really important for users who want to have an overview about which app belongs to which browser tab. A Retina ready Favicon will not only be easier to identify but also stand out among a crowd of Favicons that are not optimized for high resolution devices yet.

To make your Favicon Retina ready I can highly recommend X-Icon Editor. You can either upload a single image and let the editor resize it for different dimensions or you can upload separate images optimized for each size to get the best results.

How to make existing Images Retina ready

If you want to upgrade an app with existing images it is a bit more work as you need to re-create all images to make them Retina ready but this doesn’t need to be super hard.

First of all try to identify images that you can avoid by using alternatives like CSS, SVG and Image Fonts as mentioned previously. Buttons, Icons and other common UI widgets usually can be replaced with modern solutions that don’t require any images.

In case you actually need to re-create rasterized images you need to go back to your source files. As you might assume, simply resizing your rasterized bitmap images twice as big doesn’t get the job done because all the details and borders get pixelated.

But no need to despair – image compositions which mostly contain vectors i.e. in Adobe Photoshop or Illustrator are quite easy to scale up. That said don’t forget to check if your Photoshop effects in the blending options such as strokes, shadows and bevels still look as intended.

In general, making most Photoshop Compositions directly out of vectors (shapes) and Photoshop’s Smart Objects will save you a lot of time in the future.

How to optimize the File Size of Images
Last but not least optimizing the file size of all images in an application or website could effectively save up to 90% of image loading times. When it comes to retina images, the file size reduction gets even more important as they have a higher pixel density which also increases their file size.

In Photoshop you can optimize the image filesize via the “Save for Web” feature. On top of that there is an amazing free tool called ImageAlpha, which can reduce the filesize of your images even more with just a minor loss of quality.

Unlike with Photoshop you can use ImageApha to convert 24-bit alpha channel PNGs to 8-bit PNGs with alpha channel support. The icing on the cake is that these optimized images are cross-browser compatible and even work for IE6.
You can play around with different settings in ImageAlpha to get the right trade-off between quality and file-size. In the case below we can reduce the file size by almost 80%.

When you are done setting your desired compression levels ImageAlpha’s save dialog also offers you to “Optimize with ImageOptim” - another awesome free tool.

ImageOptim automatically picks the best compression options for your image and removes unnecessary meta information and color profiles. In the case of our stamp file ImageOptim was able to reduce our file size by another 34%.

After we’ve updated all assets of Blossom for high resolution displays and used ImageAlpha & ImageOptim to optimize the file size we actually ended up saving a few kb in comparison to the assets we had before.

Save Time, read this Book

If you want to learn more about how to get your apps ready for retina displays I can highly recommend "Retinafy your web sites & apps" by Thomas Fuchs. It’s a straightforward step by step guide which saved me a lot of time and nerves

Awesome Retina Ready Sites on the Web
Chat and Tasks for Teams
Simple version control for designers
Panic - Shockingly Good Software.

You can find the Blog Version of this Post here:

See question on Quora

Posted on 8 May 2013

What types of questions are asked in front-end developer interviews?

Here are some of the questions that I was asked:

  • explains CSS box model and list them in order (inside out or outside in)
  • difference between events DOMContentLoaded and window.onload
  • where can you put your javascript script tags and why?
  • why do you use ul tags over any other tags like div for menu
  • what are some HTML5 new tags?
  • semantic HTML
  • explain CSS position property, its values and what is each of it relative to? ( common front-end interview question)
  • how do you get DOM elements using pure JS and are those supported by IE
  • how do you stop a form from getting submitted?
  • how do you reduce the load time of images? (CSS sprites)

See question on Quora

Posted on 5 May 2013

Which tools and services do you use in your work?

to name a few...

EDIT (MAY 17, 2014): Recently I made drastic changes to my front-end workflow. I no longer use Sublime Text. I went for the IDE route with WebStorm. It's just feels way better when you're punching tons of javascript. Also I no longer use CodeKit. All my task running needs are now covered by Gulp.js.

See question on Quora

Posted on 4 May 2013

How can someone be a better Front-end Developer?

If you're trying to become better, it's likely another book won't help that much. Books and blog posts unless targeted to something specific will just give you the illusion of progress. If you're already capable and just trying to take your skills to the next level I would recommend finding sites doing interesting things and trying to recreate it on your own. Then once you've finished or get stuck, look at how they do it and look at how they solved issues you had and try to think about why.

You'll learn much faster trying to solve specific problems on your own than is possible with any blog post or book.

See question on Quora

Posted on 15 December 2012

What are the most important client-side (HTML5/CSS/JavaScript) libraries and why?

Since the original answer was written back in 2012, let me update my current preferred 2015 client side stack:

As a dessert for those quickly built sites you can load Bootstrap & Font Awesome directly from Bootstrap CDN (http://www.bootstrapcdn.com/)

Lets take a quick round around the track and see the essentials for any client-side athlete. The equipment depends on your goal range.

Palms sweating, heart pumping. Ready for another race. Go!

Accelerating into the first corner
(Happily, HTML5Boilerplate gives you all this out from the box, so you'll get a headstart. Winning!)

Making good headway, just don't stop now!

Time to show what you've got!

Aiming for the big boys. Give everything you have!

Fistpump for victory. Also, check out these goodies.

See question on Quora

Posted on 22 August 2012

What are the most important client-side (HTML5/CSS/JavaScript) libraries and why?

One of most used library (I'm an author of this library) what I use every day is jQuery Role: https://github.com/kossnocorp/role.

Instead of popular class– and id-based selectors jQuery Role provide easy way to find and manipulate elements with role attribute:
will return

It's great idea because logic no more depend on styles. You can easy refactor css and don't fear break something.

See question on Quora

Posted on 14 August 2012

What are the most important client-side (HTML5/CSS/JavaScript) libraries and why?

"Most important" is obviously subjective, but at the highest level here's what I use:
HTML5 Boilerplate - Great starting point, includes
Modernizer (typically comes with Boilerplate) - for feature-detection, so you can use progressive enhancement or graceful degradation at your leisure
jQuery - Manipulating markup, monitoring events, adding interactivity

Those are the core that I've used on the vast majority of my recent sites. All of the frameworks listed above definitely look interesting though, and I'm looking forward to learning more about them, and possibly integrating them into my next project!

See question on Quora

Posted on 14 August 2012

What are the most important client-side (HTML5/CSS/JavaScript) libraries and why?

A kickstart...
http://jquery.com | jQuery: for manipulating the DOM
http://d3js.org | d3: kinda like jQuery for SVG elements
http://processingjs.org | Processing.js: for manipulating canvas elements
http://backbonejs.org | Backbone.js: for managing client-side data structures
http://underscorejs.org | Underscore.js: powerful functional programming ideas
http://twitter.github.com/bootstrap | Twitter Bootstrap: accelerates UI styling and events
http://modernizr.com | Modernizr: browser feature detection
http://www.mathjax.org | MathJax: Latex math formulas in the browser
http://html5boilerplate.com/ | HTML5 Boilerplate: Industry-standard starting point for HTML5-based pages or sites
http://browserify.org/ | Browserify: enables browser-side require() the node.js way
http://handlebarsjs.com/ | Handlerbars.js: templating

See question on Quora

Posted on 7 August 2012

Is anyone working on alternatives to HTML, CSS and JavaScript?

By your list of grievances, I think you are misdirecting your wrath.  HTML, CSS and JavaScript are not your nemeses. Microsoft, Apple, Mozilla, Google, and Opera are your true enemy.  The problem you describe isn't poor choice in Domain Specific Languages, but the choice of web browsers that is afforded the unwashed masses.

The only real solution to your complaints is to remove choice at the client level.  Microsoft had achieved this for about 6 years. Flash held video captive for about the same amount of time.  All you'd need is for a product like Google Chrome to take up the mantle as the next emperor and then all of your pain goes away.

Or, you could look at the half-full side.

If you didn't use HTML for unstructured documents, what would you use? XML?  SGML? XHTML? DOCX? PDF? I think we've dodged some high-caliber hollow-point bullets there, don't you think?

If you didn't use CSS to design, what then? XSLT? PostScript? Any of a dozen proprietary design formats? Just rasterize the whole page? I'm pleased as punch that CSS gives visual structure to flexible, distributed documents.

Yeah, JavaScript looks like a bastard, but is there a even a close contender? VBScript, Shockwave, ActionScript, and Java applets are all dead husks rotting on the battlefield.  JavaScript, meanwhile, has become the fastest scripting language as well as the most common.  I'm thinking more hybrid than bastard.

Yes, there are ugly parts.  There are kangaroo committees and backroom deals, and let's face it, some outright mistakes. But as far as organic communities go, this is pretty good. For all their tragedies, I'm glad the commons have this one victory.

See question on Quora

Posted on 24 May 2012

What are 5 essential skills every Web Developer should have?

This is an awesome question.

I'm the CTO of https://www.hiretheworld.com/ and we went from a team of 3 founders in January of 2011 to 15+ people by the end of last year.

When we started hiring, our focus was on development. I was the only tech guy and needed a lot of help in development. I'm super happy with our current team, and here are some things I looked for in developers:

1. Know how to program : Not syntax, but program. Anyone can learn syntax, but the principles of programming are applied everywhere.

2. Willingness to learn: The web is super fast moving. New web tech that comes out literally every day, is unbelievable. My ideal web developer would have to be open to trying new technology. If you don't like change, you will NEVER be a good developer.

3. Intelligence: Challenge yourself and your colleagues. There are about a billion different ways you can code up a web page, but are you intelligent enough to understand the differences, and use what suits your needs best?

4. Love of the game: Love what you do. Don't get enough of it.

5. Be normal: communicate normally, interact normally. Be easy to work with.

Thankfully, we found everything in our developers. We've also recently started a tech blog, http://www.hiretheworld.com/blog... to talk about some of the cool stuff that these guys pump out day in and day out.

Good luck finding your dev guys, and let me know if I can help more :)

See question on Quora

Posted on 16 May 2012

What are 5 essential skills every Web Developer should have?

  1. Pulse on the Industry and the User
    It's impossible to know where web development will go in 5 years, but those who follow standards bodies or at least read tech blogs have a much better understanding of upcoming changes and growing trends.

    It's not enough to follow the industry. Web developers must also understand their users and how they use the product. Analytics tools like StatCounter and Google Analytics are my favorites for gathering basic metrics of user interactions. A web developer should know if a third of the traffic is from a mobile device or that visitors are from Spanish-speaking countries. Maybe it's time to think about optimizing for mobile and internationalization.

    I list this as the number one skill because being proficient here will trickle down and facilitate the other skills.

    Things are changing and a lot has already changed. HTML 5, CSS 3, ECMAScript 5, and so on. If you can see these things coming, you will be able to adjust your priorities.

    Developers must have an understanding of the state of the browser market and to some extent even the OS market. Did you know users of Windows XP are unable to upgrade to IE 9? Want to guess what the most popular operating system is? (hint: it's XP). Knowing this, do you think it's a good idea to drop support of IE 8, even though 9 is out? Maybe for your user base, that could be a good idea. But my point is that you should know where all of the pieces are on the board before you make your move.

  2. Programming Competency
    Web developers must be able to code. This is supposed to sound obvious. An effective web developer must be able to write syntactically valid HTML, CSS, and even JavaScript.

  3. Testing
    All web developers must be able to test their code in multiple browsers. It's easy to test for our own personal browser of choice and ignore the rest, but the web is about diversity and the browser landscape is very diverse.

    JavaScript testing also falls under this category. Developers must use tools to detect and debug scripting errors. Chrome, Safari, and Internet Explorer all come with built-in developer tools that allow you to step through JavaScript and execute code in an interactive console. Firefox has limited native support for this, but the Firebug plugin is the de facto standard.

    If you are going to write code, you must be prepared to make sure that it works.

  4. Accessibility
    Developers must be able to write code that is flexible enough to be used in different ways. Search engines and screen readers for the blind are two examples of machines interpreting your code. Sites that are heavy with Flash or foreground images for UI tend to struggle here.

    Accessibility at it's core is really about usability. Can the user use your product? Web developers must know about any obstacles between the user and the product to better design it. Is the product usable on small screens like mobile devices or even older monitors? Do users know to click on a particular button to continue to the next page or is the page difficult to understand?

    How about users with images, cookies, or JavaScript disabled? What if they're just using a really old version of a browser? What do you do for them?

    Know your user, set limits to what you will and will not support, implement a cross-compatible solution, and test thoroughly.

  5. Security
    I leave security for last, but really it's a top priority. Every web developer must understand how malicious people can use their product to attack the site or other even other users.

    If the web developer has skill #1, they should be familiar with the security concerns of the industry and common defenses.

One non-skill that I think deserves recognition on this list is motivation. Web developers should be passionate about what they do and never stop learning more. Read those blogs, pick up a few higher-level books, and go to the networking events like conferences and local meetups. Strive to learn more, improve skills, and educate others.

See question on Quora

Posted on 26 March 2012

What are 5 essential skills every Web Developer should have?

Given that the question is for a "Web Developer", I am assuming that they are provided with the page design from a "Web Designer", and that any server side code is written by a "Web Services" or "Back-End Systems Developer":

  • HTML
  • CSS
  • JavaScript
  • Understanding of common security attacks and how to prevent them.
  • Know how to use source code control systems such as Subversion and Git.

See question on Quora

Posted on 26 March 2012

What is the best method for adding 2x images to webpages that will be displayed on the new iPad with Retina graphics?

WebKit deals in logical pixels and a device pixel ratio to render stuff. It knows nothing about the physical pixels of the display. So when you really have 640x960 pixels on the display, your iPhone's Safari will tell you that you have 320x480 pixels to work with a device pixel ratio of 2. If you try to supply an image without any hints, it'll try to render the image at 1x scale in twice the width/height you want (which will be upscaled). However you can give it some hints to tell it what to render at. And this technique is applicable both to iOS devices (which have 1x and 2x scale devices) and Android devices (which have 0.75x, 1x, 1.5x, and 2x scale devices).

Let's pretend you have a source image that is 200x200 at 1x scale, and 400x400 at 2x scale.

If you'd like to use <img> tags to render images, you can pass your 2x scale image as the src, as long as you set the width/height to 200x200 (either as tag attributes or as CSS styles). This is generally not preferable, as you can't really differentiate between different scaled devices this way (unless you're using JavaScript, and at that point you might as well use the next technique). But if you only want to make one asset one time, and don't mind the extra bandwidth, you can use this approach.

The best approach is to use CSS background and background-image to supply your images. The trick here is to use the CSS background-size property to set the render size of the image at 1x (in this case, background-size: 200px 200px). You can combine this with CSS background-position to achieve sprited assets (where you put all your images into one giant image and slice out the relevant parts of it).

The big advantage here is that you can target specific screen scale factors with CSS, using a trick known as CSS media queries. This lets you specify entire CSS files, or parts of CSS files, to load for devices at 1x scale, at 2x scale, and other scales (as well as ranges of scales). This means that 1x scale devices are only loading 1x assets, and 2x scale devices are only loading 2x scale assets. The best way to do this is split your assets into multiple CSS files, and load them using the media attribute, like so:

<link rel="stylesheet" href="1x.css" media="only screen and (-webkit-device-pixel-ratio: 1)" />
<link rel="stylesheet" href="2x.css" media="only screen and (-webkit-device-pixel-ratio: 2)" />

You can also do this in one CSS file like so:

@media only screen and (-webkit-device-pixel-ratio: 1){
.image{ ... }

@media only screen and (-webkit-device-pixel-ratio: 2){
.image{ ... }

There are also -webkit-min-device-pixel-ratio and -webkit-max-device-pixel-ratio selectors you can use, so you can use specific assets for a range of device pixel ratios (which matters if you're targeting Android). The scaling will Just Work across all device pixel ratios when you do this.

You can also query for this property in JavaScript. window.devicePixelRatio will return 1 for 1x scale, 1.5 for 1.5x, 2 for 2x, etc.

UPDATE: As of iOS 5.1, it appears there is an issue with high-resolution JPG images being presented in this manner. WebKit on Retina iPads will downscale the image and then upscale it again, leading to a significantly uglier image. The only known workaround is to use PNG images instead of JPGs (which obviously sucks for high-resolution images, which consume significantly more bandwidth than JPGs). Apple has been made aware of this issue: rdar://problem/11097671. If your image contains greater than 2 * 1024 * 1024 (2097152) pixels when you multiply the width and height together, you must use PNGs, or the image will not appear crisp on the Retina display.

UPDATE 2: There is supposedly a way to work around this, by saving JPEGs in Progressive mode. There is a "Progressive" checkbox in Photoshop's Save For Web which enables this. I haven't tested this myself, but multiple people have reported that it works. Thanks to Iain Anderson in the comments below, as well as codezero on Hacker News.

See question on Quora

Posted on 19 March 2012

Is there an HTML5 framework with dedicated CSS3 for iPad and iPhone?

One year later....

There are a lot of frameworks out there:
- PhoneGap
- Pugpig (for book & magazine)
- BakerFramework and LakerCompendium (for book & magazine)
- SenchaTouch
- jQuery Mobile
- Titanium

Some are free others need you to pay some fees. It really depends on your needs and preferences.

If you need some framework to be responsive, you need to use media queries. The possible list for this type of framework can be found with simple search in Google, so I'm not listing frameworks here.

Obviously you can define your own, which can be the most interesting work to do.

See question on Quora

Posted on 1 March 2012

Which is better: Less, Compass or Sass?

LESS has a cleaner, less verbose syntax, fitting with the name. I agree that it is easier to learn as well. I like to use the following tools along with LESS:

  • Preboot.less: Useful mixins and variables from the main guy behind Twitter Bootstrap. Not a giant framework like Bootstrap, just some useful stuff for buttons, gradients, columns, etc. http://markdotto.com/bootstrap/

  • Compilers:

    • SimpLESS: Similar to less.app but cross-platform, converts LESS to CSS on save. http://wearekiss.com/simpless

    • Winless: Similar to Less.app or SimpLESS but Windows obviously. http://winless.org/

    • CrunchApp: A text editor just for LESS that saves to CSS, uses Adobe Air. Useful if your favorite code editor is not LESS friendly. (Although it is similar enough to CSS that if you can have the editor use CSS code highlighting it should be good enough. http://crunchapp.net/

    • Livereload or CodeKit: Two awesome tools, unfortunately Mac only,  Livereload can be made to work on Windows but its tricky. These both automatically reload web pages you are working on whenever you save changes. Cool tools that do much more than LESS, but they do both convert LESS to CSS on save.

See question on Quora

Posted on 17 February 2012

Is Twitter Bootstrap a good tool to use?

Absolutely. There's two ways that I use it:

1) I use the snippets for figuring out things in CSS. I taught myself quite a bit of CSS from looking through the Bootstrap code and seeing what things did, etc. I also use certain parts of it for other projects, e.g. the forms.

2) You can easily use it for making a project in HTML, and just use Bootstrap to make it look pretty.

See question on Quora

Posted on 23 January 2012

Is anyone working on alternatives to HTML, CSS and JavaScript?

"The more I dive into html5, css3 and javascript, the more I hate them"

This is probably a sign that you are working at the wrong level of abstraction.

Analogy: x86 assembler is horrible, but you rarely hear programmers complaining about it. Why? Because they use more abstract tools like compilers and bytecode interpreters which deal with all lower level details.

Review your task from an architectural perspective and I suspect you will find that there is an abstraction which will remove much of the boilerplate and detail work from what you are doing. (CSS is one of these, which makes me wonder if you are using it well.) Other examples: Frameworks, content management systems, and JavaScript libraries.

(update) "we are all coping with their inconsistencies"—I rarely see myself as "coping with inconsistencies". Each of HTML, CSS and JavaScript do a good job in their own (orthogonal) spheres. What I mainly see are a lot of misuses (for example, CSS that is so poor that it almost freezes development), and a lot of unexploited potential. For example, have you considered the full implications of Facebook's XHP to run-of-the-mill view templating?

See question on Quora

Posted on 20 November 2011

When should you use the !important declaration?

declaration can be useful when applying styles to content in a page which already has CSS you don't have any control over, for example, when building a JavaScript widget that users can embed on their site to display some of your content. When applying styles to the widget, it might be useful to use
to make sure the page's original CSS doesn't override the widget's CSS.

There's a stylesheet called CleanSlate[1] which is used as an extreme reset stylesheet for that purpose; it resets the styling of HTML elements to their default values, and it uses
extensively to accomplish this.

The stylesheet can be useful when distributing content (e.g. a widget, or syndicated news) to third-party websites. The CSS rules in the host site may be unknown and unpredictable, or may change in future without notice, or there may be so many websites you need to distribute to that it is impractical to write specific CSS that overrides the styles in each one. In such situations, the CleanSlate stylesheet will aggressively reset your portion of the content (and nothing else) back to some reasonable default values that you can then build from.

[1]: https://github.com/premasagar/cl...

Other than that, I feel
is an act of desperation that should only be used very, very sparingly as a last resort. Don't abuse it.

(Image via Reddit: http://www.reddit.com/r/webdev/c...)

See question on Quora

Posted on 25 October 2011

Is the "Mobile First" design model appropriate for smaller sites / clients?

In the sub-$5K space, I'd be tempted to go with a service like WordPress or even Tumblr, which have built-in mobile support... I wouldn't expect to be able to build everything from scratch for that amount of money--and I would expect the customer to want a way to update content extremely cheaply (or free), which again would push me toward a hosted CMS, and there are many with mobile support...

So I don't see any necessity to pitch Mobile First when you can piggy-back on an existing CMS that will be essentially required because of the price constraints.

See question on Quora

Posted on 9 July 2011

Why does IE9 have such poor support for CSS3 and HTML5?

Microsoft made the choice to implement finalized features of the CSS3 specs. So, technically they might look behind, but actually, they are very much on par with other browsers when you consider that they already had a way to do most of the CSS3 filter effects with the ms-filter notation.

So, the way I look at things, is not about having to add a extra line in CSS that matters, but make sure you have the capability. Anyway, today, even between FF and Webkit based browsers, you have to put the -moz- and -webkit- for most of them.

Changing the -ms-filter to -ms-_css3notation_ would not have any practical benefits. However, the fact that they have hardware accelerated HTML5 Canvas has a much bigger impact (and hopefully push the others to do the same)

See question on Quora

Posted on 11 May 2011

Why does IE9 have such poor support for CSS3 and HTML5?

Microsoft Internet Explorer 9 is a top-notch browser with solid and performant support for HTML, CSS, the DOM, and JavaScript. With the exception of WebGL, which is not a part of HTML (5 or any other version) or CSS (3 or any other version) IE 9 is right up at the front of the pack with Firefox, Chrome, and Opera.

If you're going to assert something in your question, it's worth adding some supporting evidence. If you don't have supporting evidence, perhaps you should rephrase the question so it doesn't come from an unsupported premise.

Your question would have been better worded "Where does Microsoft's IE 9 rank among the other modern browsers in its support for the latest HTML and CSS features?" or something like that.

See question on Quora

Posted on 8 May 2011

When is it appropriate to use tables in HTML?

The question you need to ask yourself is, is the data I want to put into this grid actually tabular data.  If it is, use a table. If it's not, then don't.

But what is tabular data. Based on the number of times I've seen someone wrongly claim lists or other structures to be tabular data, I'm going to try to offer a definition that's easy to use.

If you can look at the contents of the table and say to yourself, all of the items in this particular column share something in common that makes them distinct from those other columns AND all the items in this particular row share something in common that makes them distinct from those other rows, then you probably have tabular data and it probably makes sense to organize it in a table.

See question on Quora

Posted on 2 January 2011

reddit.com: search results

Huge list of CSS3 Resources,Tutorials and Libraries to Help You Become a Novice to Expert ...

All the web designers(beginners or intermediates) around the world are excited about the power of CSS3 and the flexibility it offers. With that in mind, I’ve rounded up here a huge list of CSS3 resources, tutorials, tips for you to learn more. In this list I’ve also gathered you some of the best sources of CSS3 goodness.

In order to fully enjoy this gallery you might want to use a modern browser such as Chrome.

CSS3 Resources

*The ultimate list of CSS3 resources, tips, and Tutorials - Really an ultimate article for CSS3 beginners that also has advanced resources

*Push Your Web Design Into The Future With CSS3 - Here are five techniques snatched from the future that you can put into practice in your website designs today.

CSS3 Tutorials

The tutorials are extremely helpful, not only for the professionals, but, also for the beginners.

Swatch Book with CSS3 and jQuery - creating an animated swatch book using CSS rotation transforms and JavaScript.

3D Thumbnail Hover Effects - A tutorial about how to create 3D thumbnail hover effects with CSS 3D transforms and jQuery.

Create a stunning menu in CSS3 - open up your favorite code editor, and let’s make a slick navigation menu using only CSS3.

Custom Drop-Down List Styling - A tutorial on how to create some custom drop-down lists

Making an Impressive Product Showcase with CSS3 - Spicing up a plain old product page with some CSS3 magic!

Animated 3D Bar Chart with CSS3 - A tutorial on how to create an animated 3d bar chart using CSS only.

A Pure CSS3 Cycling Slideshow - This effect will only work properly in modern browsers that support the CSS3 properties.

How to Create an Interactive Graph using CSS3 & jQuery - Code an Interactive Graph using jQuery and CSS3.

Create a Sticky Note Effect in 5 Easy Steps with CSS3 and HTML5

Apple-like Login Form with CSS 3D Transforms - In this tutorial you will see how one can use transforms to create an interesting flipping effect on an Apple-inspired form

How To Create Depth And Nice 3D Ribbons Only Using CSS3 - It is an interesting article that everyone should try the field.

7 Super Easy CSS Recipes to Copy and Paste - Keep in mind that since this stuff is still cutting edge, older browsers won’t support most of it.

How to Create a Stylish Image Content Slider in Pure CSS3 - Use this tutorial just to play around with the last CSS3 features that you will be able to use in the feature.

CSS3 breadcrumbs - Learn how to create your own cool CSS3 breadcrumbs.

Calendar using jQuery and CSS3 - How to Create Calendar using jQuery and CSS3

Orman Clark's Vertical Navigation Menu: The CSS3 Version

Some of the excellent CSS3 Tutorials for Beautiful Design - 50 more resources (some may be repeated)

CSS3 Libraries and Examples

Blur Menu - This is a really well executed and polished demo of a CSS only menu.

CSS3D Clouds - In this demo app you can generate and play around with some astonishingly realistic clouds.

Logos In Pure CSS - Company logos created in pure CSS.

CSS A/Z - An entirely HTML/CSS animated sketch for each letter made (hopefully) every day for 26 days.

Navigation Bar by Jan Kadera - A simple but very stylish navigation bar

Google Doodle in CSS - CSS version of a little Google Doodle animation.

Sliding Image Panels - This is smooth as butter, uses absolutely no JS and the details are polished to the last pixel.

Double ring - A beautiful animated ring in a single div element

Colorful CSS3 Animated Navigation Menu - How to create a colorful navigation menu with animated dropdowns. (No cheating!)

Animate.css - This is hugely popular on github

Spinkit - Spinkit is a collection of easily customizable loading indicators

Buttons - Nothing more, nothing less, just a huge collection of buttons.

On/Off FlipSwitch - Generate pure CSS3 On/Off flipswitches with animated transitions.

Colors.css - Colors.css is for those of you who hate color picking for a hex code.

CSS3 Video Tutorials

CSS3 Video tutorials - 51 videos

submitted by steveharrry to learnprogramming
[link] [20 comments]

Posted on 17 March 2015

Learn HTML5 and CSS3 in under a week. [Update - 150 free coupons]

After my earlier post, we hit over 100 students enrolled. That's 100 soon to be web developers breaking down the programming "wall". Some of my students have already began getting customers to build websites for them! After my previous post I received many positive messages as well as some people that truly wanted to learn, but missed the chance of getting a free coupon. Since Reddit has been so awesome, I'm giving away 150 free coupons for this subreddit. My goal is to get over 250 students learning and enrolled by tonight!


If you used a coupon, make sure to up vote this so we can get everyone we can enrolled!

Update: We just hit 223 enrolled students, that's 223 people that will finally get past the programming "wall" and on their way to becoming web-developers!!

Update 2: Incredible, we hit our goal with 257 enrolled students! Here's one last coupon for those who missed! https://www.udemy.com/html5-and-css3-become-a-web-development-ninja/?couponCode=Reddit30

After that, I'm going to heavily discount the course for everyone on this subreddit to only $19: https://www.udemy.com/html5-and-css3-become-a-web-development-ninja/?couponCode=RedditDiscount

Due to all the awesome feedback, I've decided to lower the cost of this course even more to $15 https://www.udemy.com/html5-and-css3-become-a-web-development-ninja/?couponCode=Reddit15

Also, this is my first course I created on Udemy, I'd love feedback and see what you guys liked/disliked so I can make my next possible course even better.

Just a quick update: We've hit almost 300 enrolled students today!

To address the 3-star issue: This is because I've received my first 1 star review. I've tried multiple times to get in touch with him both during the course and when he posted the review. He hasn't responded to a single message yet and looking at my students he only got through 5% of the course when he put in that review. For whoever this was, I'd love it if you can get in touch with me so we can figure something out :-)

Final update: We've hit 317 enrolled students. I've gotten a ton of positive feedback as well as what people liked/disliked. After this success I've decided that I'm most likely going to be making a much more in depth Web Development course. Anybody who purchases this course will automatically get it free once it's released!

submitted by PrettyCoolGuy13 to learnprogramming
[link] [95 comments]

Posted on 1 February 2015

Hey! I launched my HTML5 and CSS3 Udemy course and I’m offering it free to Reddit for today

Hey guys, I launched my first course last week with some good feedback (5 star reviews) so far and have already got students building websites for others! Pretty awesome! I'd love others to be doing the same and help those beginners trying to get past that programming "wall". Just use the following link: https://www.udemy.com/html5-and-css3-become-a-web-development-ninja/?couponCode=RedditRocks Update: Awesome, all of the free coupons codes got used up, so here's another one for the rest of the day: https://www.udemy.com/html5-and-css3-become-a-web-development-ninja/?couponCode=RedditRocks2 Update 2: Thank you so much for all the interest Reddit! Here's the last free one: https://www.udemy.com/html5-and-css3-become-a-web-development-ninja/?couponCode=RedditRocks3

After that, since Reddit is so awesome, everybody on here gets over 60% off: https://www.udemy.com/html5-and-css3-become-a-web-development-ninja/?couponCode=RedditDiscount Can't wait to see you in class! :-)

Update: I've decided to extend the 60% off coupon to everybody on here forever :-)

submitted by PrettyCoolGuy13 to learnprogramming
[link] [21 comments]

Posted on 31 January 2015

Hey! I updated my HTML5 and CSS3 course and giving it away free on Reddit this week

I've updated my "HTML and CSS Course for Beginners" and am giving it away free on Reddit this week. We have over 10,000 people in the course with great reviews, but now have it on a new platform that I want to test out and make sure it works well so I'm offering it free this week. I'd love to have you sign up and let me know what you think about the platform.

Once you sign up you have lifetime access to the material. Go here to sign up and get it for free: http://courses.makerbased.com/course/html-and-css/?couponCode=redditVIP


submitted by bonesy2286 to learnprogramming
[link] [154 comments]

Posted on 12 November 2014

What are the benefits of site logos fully made in CSS3 over SVG?

For responsive design, I know SVG is the go-to format and most sites have SVG logos of their company/brand on their site headers. But is there any benefit to having the logos made entirely in CSS as opposed to drawing out a vector in Illustrator and saving a SVG of it?

With all the recent updates to CSS3, it's very possible to make many logos solely via CSS. For example, here's a lot of company logos re-created in CSS3: http://www.bchanx.com/logos-in-pure-css-demo

I'm looking to see if there's any real reason someone would want to do this, especially in terms of long-term sustainable web practices. If anyone can shed some light on the subject, I'd appreciate it.

submitted by QuestionAxer to web_design
[link] [23 comments]

Posted on 10 August 2014

I saw this GIF and I thought it would be interesting to recreate it using CSS3. (x-post /r/WebDev)

This GIF is very soothing and I thought it might look interesting if I could recreate it using CSS3 animation.

I created a script in PHP that allowed me to generate the percentages and degree values to get the flow correct, and to keep me from having to copy and paste over and over for all the browser specific prefixes.

Remove the "overflow: hidden;" property of ".graphic" to see the full circle, which feels just as, if not more, soothing as the semi-circle.


submitted by arobson13 to css
[link] [8 comments]

Posted on 29 June 2014

I saw this GIF and I thought it would be interesting to recreate it using CSS3.

This GIF is very soothing and I thought it might look interesting if I could recreate it using CSS3 animation.

I created a script in PHP that allowed me to generate the percentages and degree values to get the flow correct, and to keep me from having to copy and paste over and over for all the browser specific prefixes.

Remove the "overflow: hidden;" property of ".graphic" to see the full circle, which feels just as, if not more, soothing as the semi-circle.


submitted by arobson13 to webdev
[link] [78 comments]

Posted on 29 June 2014

CSS3 Might Allow Dual Flairs

Reddit recently added support for CSS3 in subreddit css. One new feature of that is multiple background images. I think (based on brief testing) that this javascript snippet in your browser's console will create an unholy combination in my test comment below.

Note: some of the hovering features will be disabled because I'm removing things to get around the CSS that's already on flair.

$(".flair-georgiatech").removeClass("flair-georgiatech").removeClass("flair").attr("href","asdfad").html(" ").addClass("flair-testytest").css({"background-image":"url(http://a.espncdn.com/combiner/i?img=/i/teamlogos/ncaa/500/59.png&transparent=true), url(http://a.espncdn.com/combiner/i?img=/i/teamlogos/ncaa/500/61.png&transparent=true)","width":"60px","height":"30px","background-position":"left center, right center","background-repeat":"no-repeat","background-size":"30px","min-width":"60px","min-height":"30px","display":"block"});

submitted by epmatsw to CFB
[link] [30 comments]

Posted on 29 April 2014

Did you notice that the up vote rockets now have animation?

/u/doombeef was the 1st to post about reddit now allowing css v3 for subreddit usage.


So, what's in store for /r/dogecoin next, animated flairs?

Note: The Only way to turn off the new animations is to uncheck the "allow subreddits to show me custom styles" box in preferences under display options.


Welcome to r/dogecoin! This thread is for questions about Dogecar and Dogecoin, so ask away



This is like the doge version of catnip!


Makes me want to do a Barrel Roll!


submitted by slowpokex2 to dogecoin
[link] [419 comments]

Posted on 29 April 2014

Naut 2.1: CSS3 Additions!

Not a very exciting update (yet!), but I wanted to push out some general CSS3 additions that were enabled just now by reddit.


  • Added transitions to several objects such as the tabmenu and submission links.
  • Added minor tweaks for low-resolutions. Try resizing your browser window to see.
  • Fixed filter error.

Unfortunately I'm leaving for a rather long holiday soon so I won't be able to update but I'll definitely do more with it when I get back. I'm not sure how push requests on GitHub work but if you have a nice tweak - give it a shot!

Moderators that already use /r/Naut can just copy paste this bit to add the transition stuff.

When you update, the stylesheet might give an error because the filter property was removed. You have to search and find every instance of it (there are about 5) and remove the whole line. The layout won't be affected.


submitted by Cryptonaut to naut
[link] [31 comments]

Posted on 29 April 2014

Now that reddit allows css3...

Cant we now get the upvote to go upwards(I cant seem to find the post about it, but someone already made the code, they just couldnt implement it due to the old restrictions on what the subreddits could put in the css)

Edit: I found this: http://www.reddit.com/r/dogecoin/comments/23797m/based_on_the_gif_posted_here_earlier_i_wrote_a/ Its not exactly what I was looking for(I remember an actual css code that someone posted) but it shouldnt be that hard to write from scratch, just a few animations of the upvote going upwards and on the moon)

submitted by dombeef to dogecoin
[link] [50 comments]

Posted on 29 April 2014

CSS Change: The filter has been rewritten.

As mentioned in the /r/changelog thread, reddit's CSS filter has been replaced. The new filter is based on tinycss2 which tokenizes CSS for us and allows reddit to apply a whitelist of functions and properties to the CSS.

Existing stylesheets will not be affected by this new filter until the next time you try to save changes.

Bad news

  • IE versions older than IE8 no longer get subreddit CSS. We don't support these browsers for core development on reddit.com anyway and they are much more susceptible to various security issues with user-supplied stylesheets. As a result of this, the new filter drops support for some IE-specific hacks:
  • Backslashes continue to be disallowed in stylesheets. Characters considered "control codes" in Unicode (except linefeeds, carriage returns, and tabs) are also disallowed. Note that stylesheets are encoded as UTF-8 and as such you can use unicode codepoints in it directly without having to resort to escape sequences. ☃
  • Some invalid CSS that passed the old filter is no longer accepted as valid. These are generally typos and syntax errors that were missed by the old parser and should be fixed anyway.

Good news

CSS 3! A plethora of new CSS powers are available now:

And a bunch more. See the code for the full list of properties and functions allowed.

This has been a long time coming. Thank you for your patience and I'm really excited to see what cool new things come out of this (within reason!)

EDIT: note: if you find any deficiencies with the filter, please report them to me in this thread — tinycss2 is almost certainly not where the issue is.

submitted by spladug to cssnews
[link] [183 comments]

Posted on 29 April 2014

Pure CSS3 Star Wars Lightsaber Checkboxes

Hey guys,

I was bored today, and decided to play around with the checkbox "hack".

For those who don't know what that is, it's basically creating CSS click events with checkboxes and it doesn't involve any javascript.

This is how it's done:

input[type=checkbox]:checked ~ div { } 

So here's my code, let me know what you all think. It's not really meant to be UI/UX friendly, but just a neat little demo.

Thanks all!

Landing Page



submitted by scotchio to css
[link] [24 comments]

Posted on 19 May 2013

CSS3 Cross-Browser Compatibility—What's Your Method?

Dear Designers/Front-End Web Developers,

Some of my favorite CSS3 selectors are lacking support in IE6, IE7, and FF3.

While it may be easy to ignore this by deciding to not support these browsers, in some cases this may just be lazy, and... if designing for a business, this may not even an option.

Recently I used CSS Expressions to "extend" compatibility to IE7 for the ::before & ::after selectors, similar to what's described in Styling Elements With Glyphs, Sprites and Pseudo-Elements by Thierry Koblentz.

With all the different workarounds out now, including jQuery plugins.. I'm wondering, what is your method?



Edit: So far I've only gotten 2 responses to the actual question above.
I'm still holding out hope!

Edit: As mentioned above, dropping support for browsers isn't always an option. Additionally, it's not really a best practice.

Edit: How do so many of you just not support inconvenient browsers? Do you do freelance/in-house design? What type of clients do you have? Is this your practice because you don't know how to workaround the lack of support or to plan for it ahead of time, out of principle, or just because it's easier that way?

submitted by amazingnachos to webdesign
[link] [45 comments]

Posted on 3 August 2012

...and now for a word from our sponsor (because for once we have one *asking* to hear your feedback).

Yesterday, reddit started running ads for a new sponsor. While we normally don't introduce new campaigns [insert joke about never having a campaign to announce], this one is notable because the advertiser actually seems to understand what reddit can offer that traditional advertising (even traditional web advertising) cannot.

See, Microsoft is getting ready to release Internet Explorer 9, and they reached out to us because they genuinely want to start a dialog with the reddit community. In fact, they've taken the unprecedented step of putting the reddit team in charge of this entire campaign. This is a great deal of trust for an advertiser to offer, and we should both take it as a huge compliment.

So, how should we do this? If there's one thing I've learned in my five-plus years at reddit, it's that the direct and open approach works best, so instead of marketspeak, I'm going to paste a quote from Wikipedia:

IE9 will have complete or nearly complete support for all CSS 3 selectors, border-radius CSS 3 property, faster JavaScript, and embedded ICC v2 or v4 color profiles support via Windows Color System. IE9 will feature hardware-accelerated graphics rendering using Direct2D, hardware accelerated text rendering using DirectWrite, hardware accelerated video rendering using Media Foundation, imaging support provided by Windows Imaging Component, and high fidelity printing powered by the XPS print pipeline. IE9 also supports the HTML5 video and audio tags and the Web Open Font Format.

If you have a computer that can run IE9, we'd really like you to try it out and post a review. The actual IE9 programmers are going to read what you have to say, and if you compliment their work, it'll totally make their day. But they also need to hear your complaints. Ideally, in the form of constructive criticism, but we warned them that reddit can sometimes be a little... brisk, so they're prepared for that, too.

One last thing: Microsoft's not the only ones who want your feedback. We at team reddit are interested in hearing what you think of this campaign in a general sense: do you find this kind of advertising more appealing than sidebar ads? Do you have any suggestions as to how it could be even better? (Especially things that could never happen in a magazine.)

Oh, and stay tuned for a Microsoft IamA next week. We're not sure who it will be with yet, but we've been assured it won't just be with flack.

submitted by KeyserSosa to blog
[link] [3317 comments]

Posted on 16 September 2010

AskWebDesign: Can we please stop using "HTML5" as shorthand for "HTML5 Canvas + CSS3 + Javascript"? Maybe we need a name for that, but it's not "HTML5."

Maybe it's just a personal pet peeve, but I really think it's a problem. HTML5, as a term, already means something. HTML5 will not revolutionize the web on its own. You can't animate things using solely HTML5 - and with very few exceptions, even HTML5+CSS3 alone won't do much in the way of animation (yes, some transitions do exist)...

Will the combination of these 3 technologies revolutionize the web? Probably. But a semantic markup specification, by itself, isn't anything remotely close to a "Flash killer", or even a tool for building usable websites. HTML5 without CSS3 is useless.

Do we need a shorter name than "HTML5 Canvas + CSS3 + Javascript" when we're talking about what will compete with Flash? Sure. Maybe "Dynamic Canvas", or "Canvas animations", or something... but HTML5 all by itself is not a competitor to anything but HTML4.

submitted by honestbleeps to web_design
[link] [56 comments]

Posted on 14 May 2010

Hey webbit, here's what I made this weekend: An extension on top of Readability that makes any webpage grow horizontally using fixed-height css3 multicols.

Some of you may remember a page I made a few months ago that used fixed-height css3 multicols. Here's the post. It didn't go over great, but I still loved the concept.

This weekend, I figured it all out. Fixed height columns work really well with the pretty output that Readability produces. So, I created some JavaScript that makes it happen.

The result: Horizontability

Works the same way as Readability. The arrows in the top left (or PgUp and PgDown) scroll the page by column. Arrow keys and mouse wheel scroll the usual way, sort of. It works for me in Firefox, Chrome, and Safari. It should work at any resolution and be most beneficial on wide screens. Many karmas to someone with a ridiculous resolution who posts a screenshot of the entire first chapter of Metamorphosis (the text in the background) in a single window.

edit: No more mousewheel control because it messes up trackpads and all the arrow keys now perform full column jumps; also, there're buttons.

and I forgot to mention a link of a rebuttal of my original idea: here

submitted by etcet to web_design
[link] [24 comments]

Posted on 11 April 2010