PlotKit
PlotKit is a Javascript graph plotting library. It is aimed at web applications that require plotting series of data in modern web browsers.
PlotKit requires MochiKit. (1.3 or higher)
PlotKit supports both HTML Canvas and SVG, along with an emulated canvas for Internet Explorer.
PlotKit is easily extensible to include other rendering engines, styles and layouts. Please pursue the documentation for more information.
PlotKit is licensed under the BSD License, so you can include it in your free or commercial applications without worrying.
2007年10月18日星期四
PlotKit
jQuery
jQuery is a new type of JavaScript library.
jQuery is a fast, concise, JavaScript Library that simplifies how you traverse HTML documents, handle events, perform animations, and add Ajax interactions to your web pages. jQuery is designed to change the way that you write JavaScript.
"You start with 10 lines of jQuery that would have been 20 lines of tedious DOM JavaScript. By the time you are done it's down to two or three lines and it couldn't get any shorter unless it read your mind." - Dave Methvin
You can find a useful visual reference here :http://visualjquery.com
2007年10月17日星期三
openCascade - 3D modeling & numerical simulation
In short, Open CASCADE Technology Public License is LGPL-like with certain differences. ...
Areas of use
Whether you are a software vendor or an industrial company, a research institute or a University, or an individual developer you will encounter similar issues when developing specific technical and scientific applications.
No matter what your business profile is, Open CASCADE Technology brings you numerous competitive advantages over other modeling kernels. Using Open CASCADE will increase your productivity and will solve very special problems.
To help you evaluate whether Open CASCADE Technology is the right tool for developing your specific applications, we list a few typical examples of applications and show what Open CASCADE offers to speed up their development (see "More about...").
These typical needs can appear in various industrial domains, such as aerospace or automotive sectors, in scientific research or commercial software edition. Discover these and other domains where Open CASCADE Technology has already been successfully applied. Find out about leading companies that already benefited from using it. See our customer list at www.opencascade.com.
A Visual Explanation of SQL Joins
A Visual Explanation of SQL Joins
I thought Ligaya Turmelle's post on SQL joins was a great primer for novice developers. Since SQL joins appear to be set-based, the use of Venn diagrams to explain them seems, at first blush, to be a natural fit. However, like the commenters to her post, I found that the Venn diagrams didn't quite match the SQL join syntax reality in my testing.
I love the concept, though, so let's see if we can make it work. Assume we have the following two tables. Table A is on the left, and Table B is on the right. We'll populate them with four records each.
id name id name
-- ---- -- ----
1 Pirate 1 Rutabaga
2 Monkey 2 Pirate
3 Ninja 3 Darth Vader
4 Spaghetti 4 NinjaLet's join these tables by the name field in a few different ways and see if we can get a conceptual match to those nifty Venn diagrams.
SELECT * FROM TableA
INNER JOIN TableB
ON TableA.name = TableB.name
id name id name
-- ---- -- ----
1 Pirate 2 Pirate
3 Ninja 4 NinjaInner join produces only the set of records that match in both Table A and Table B.
![]()
SELECT * FROM TableA
FULL OUTER JOIN TableB
ON TableA.name = TableB.name
id name id name
-- ---- -- ----
1 Pirate 2 Pirate
2 Monkey null null
3 Ninja 4 Ninja
4 Spaghetti null null
null null 1 Rutabaga
null null 3 Darth VaderFull outer join produces the set of all records in Table A and Table B, with matching records from both sides where available. If there is no match, the missing side will contain null.
SELECT * FROM TableA
LEFT OUTER JOIN TableB
ON TableA.name = TableB.name
id name id name
-- ---- -- ----
1 Pirate 2 Pirate
2 Monkey null null
3 Ninja 4 Ninja
4 Spaghetti null nullLeft outer join produces a complete set of records from Table A, with the matching records (where available) in Table B. If there is no match, the right side will contain null.
![]()
SELECT * FROM TableA
LEFT OUTER JOIN TableB
ON TableA.name = TableB.name
WHERE TableB.id IS null
id name id name
-- ---- -- ----
2 Monkey null null
4 Spaghetti null nullTo produce the set of records only in Table A, but not in Table B, we perform the same left outer join, then exclude the records we don't want from the right side via a where clause.
SELECT * FROM TableA
FULL OUTER JOIN TableB
ON TableA.name = TableB.name
WHERE TableA.id IS null
OR TableB.id IS null
id name id name
-- ---- -- ----
2 Monkey null null
4 Spaghetti null null
null null 1 Rutabaga
null null 3 Darth VaderTo produce the set of records unique to Table A and Table B, we perform the same full outer join, then exclude the records we don't want from both sides via a where clause.
There's also a cartesian product or cross join, which as far as I can tell, can't be expressed as a Venn diagram:
SELECT * FROM TableA
CROSS JOIN TableBThis joins "everything to everything", resulting in 4 x 4 = 16 rows, far more than we had in the original sets. If you do the math, you can see why this is a very dangerous join to run against large tables.
[advertisement] Axosoft's OnTime 2007 allows software development teams to collaborate and ship software on time. It manages projects hierarchically, tracking defects, requirements, tasks, and help desk incidents in one place. Hosted or installed. Windows or Web. Free SDK and Free single-user license.
Posted by Jeff Atwood Comments (79) 106 blog reactions
Web Development Tutorials
These tutorials are designed to support college-level classes in Web development, but they can provide introductions to these topics for anyone interested. All are works in progress and are being expanded as time permits. They run under Microsoft Server 2003 and .NET Framework 2.0, and have been tested using Microsoft Internet Explorer 6.0 under Windows XP. The current URL is http://it.maconstate.edu/tutorials.
These tutorials earned the 2006 MERLOT (Multimedia Educational Resource for Learning and Online Teaching) Information Technology Classics Award for Exemplary Online Learning Resources: http://www.merlot.org. (Awarded August 2006)Students and professionals world-wide who have taken time to offer constructive comments and suggestions for improving and expanding the materials.
一个在线的教程,有XHTML/CSS, JScript,XML, ASP.NET 2.0 ASP.NET 1.1, PHP和VB等
2007年10月9日星期二
MooTools Javascript开发框架
MooTools is a compact, modular, Object-Oriented JavaScript framework designed for the intermediate to advanced JavaScript developer. It allows you to write powerful, flexible, and cross-browser code with its elegant, well documented, and coherent API.
MooTools code respects strict standards and doesn't throw any warnings. It's well commented and has meaningful variable names: a joy to browse and a snap to understand.这是一个javascript开发框架,良好的跨平台代码,有各种动态效果。