background preloader

The Joel Test: 12 Steps to Better Code

The Joel Test: 12 Steps to Better Code
by Joel Spolsky Wednesday, August 09, 2000 Have you ever heard of SEMA? It's a fairly esoteric system for measuring how good a software team is. No, wait! Don't follow that link! The neat thing about The Joel Test is that it's easy to get a quick yes or no to each question. A score of 12 is perfect, 11 is tolerable, but 10 or lower and you've got serious problems. Of course, these are not the only factors that determine success or failure: in particular, if you have a great software team working on a product that nobody wants, well, people aren't going to want it. 1. 2. If the process takes any more than one step, it is prone to errors. For this very reason, the last company I worked at switched from WISE to InstallShield: we required that the installation process be able to run, from a script, automatically, overnight, using the NT scheduler, and WISE couldn't run from the scheduler overnight, so we threw it out. 3. 4. Bug databases can be complicated or simple. 5. 6. 7. 8. 9. 10. 11.

Related:  Code / Web Development

Don't Overthink It Grids The vast majority of websites out there use a grid. They may not explicitly have a grid system in place, but if they have a "main content area" floated to the left a "sidebar" floated to the right, it's a simple grid. If a more complex layout presents itself, people often reach for a grid framework. They assume grids are these super difficult things best left to super CSS nerds. That idea is perpetuated by the fact that a lot of the grid systems they reach for are very complicated. Here's how I build grids.

10 Tips for Writing Quality Code James Schorr, the owner of Tech Rescue has a guest post on the Ruby Learning blog where he asks "Do You Enjoy Your Code Quality?" He makes a strong argument for treating programming as craftsmanship writing that the goal of his article is to help people improve code quality and "transform the mundane into the beautiful." Schorr offers a number of tips for pre- through post-development of projects, and while some of his points may be geared towards independent consultants and independent developers, they're pretty applicable to anyone: Pre-Development

10 Interview Questions Every JavaScript Developer Should Know — JavaScript Scene Good to hear: Classes: create tight coupling or hierarchies/taxonomies.Prototypes: mentions of concatenative inheritance, prototype delegation, functional inheritance, object composition. Red Flags: No preference for prototypal inheritance & composition over class inheritance. Learn More: 4. Tips on How to Code Web Designs Better Writing semantic, efficient and valid HTML and CSS can be a time-intensive process that only gets better with experience. While it is important to take the time to produce high-quality code — as it is what separates professionals from hobbyists — it is equally important to produce websites as expeditiously and efficiently as possible. As web designers, we’re always looking for ways to be more productive. Getting more work done in less time while at the same time maintaining (or improving) our products’ quality is a lifelong quest for many of us. This article discusses a few fundamental techniques for writing high quality and efficient HTML and CSS.

Learn to Code: 13 Tips that Could Save You Years of Effort — JavaScript Scene Learn to Code: 13 Tips that Could Save You Years of Effort When you’re new to coding, it can be hard to know where to start, and it’s easy to get sucked down paths that could waste a whole lot of your time and money. I’m Eric Elliott, author of “Programming JavaScript Applications” (O’Reilly), development team leader, JavaScript instructor, and public speaker. I teach and hire JavaScript developers.

Web Development Tips and Tools for Beginners (and Experts) Every great web developer starts with HTML. From there comes an array of tools that every developer can use to create great websites.The basics would be a text editor and an image editing software. But why be content in using those two when there are available tools that can expedite not only your coding speed but also help you organize and learn new things? Expedite Development With the Following: 1. Complete Newbie Guide To Build CentOS Server To Host Websites - ServerMom This is the ultimate guide how to build, setup and config CentOS-based unmanaged web server on VPS or Dedicated servers. Very complete tutorials for newbie. Going back to my vision with this blog: to help newbies with no knowledge at all how to build a working live server to host a production website in an unmanaged server without having to use Control Panel software like WHM/cPanel, Kloxo, and so on.

Four Essential Web Design Tips Designing a website is no easy undertaking. A website is a means of communication first and foremost, but it must also be visually engaging. If a website fails to communicate the ideas contained there then it has failed in its purpose.