New Electronic Mathematics Journal For Students

Franklin sent me the following announcement, pass it along:

NEW ELECTRONIC MATHEMATICS JOURNAL FOR STUDENT PAPERS.

http://aejm.ca

Dear Colleague,

We would like to draw your attention to an exciting opportunity for your students to publish their research papers. The Atlantic Electronic Journal of Mathematics (the AEJM) is now accepting submissions.

We publish two issues per year, one in June and one late in December, with submission deadlines mid April and mid November, respectively.

The AJEM is a refereed online journal for articles in mathematics and related disciplines. The primary purposes are to give students (both graduate and undergraduate) a venue for publishing papers and to publish articles from established researchers at a level suitable for students. Each article is refereed by professional mathematicians to ensure a high publication standard.

While original research results are not required, high quality in exposition and content are required. The AEJM publishes new results, new perspectives on known results, historical aspects of mathematics, relationships between areas of mathematics (or other areas of study), or interesting applications of mathematical ideas or techniques.

The AEJM consists of serious mathematics at a student level, but slightly below the typical research journal. We see a gap in journals available at this level. If a student can get their work in an established research journal, then we obviously want them to do this. However, many times students produce work that is not suitable for research journals but is quality work demonstrating research ability and promise and this type of work should be recognized in a way that will aid the student’s in their careers.

So if you have (or know about) a summer research student, undergraduate honours student, beginning (or advanced) graduate student who has produced quality research and is looking for a place to publish, please encourage them to submit their work to the AEJM.

Thank you very much for your help in publicizing the AEJM to your students.

Franklin Mendivil
Holger Teismann

Do not open external links in new windows

A university official who shall remain nameless wrote to me this morning the following sentence regarding our web sites:

it is important that links to external sites appear as a new window

The official claims this is for well-established legal reasons.

When Tim Berners-Lee invented the web in 1991, there were no concept of a link opening in a new page. In fact, the target attribute use to achieve this feat was a W3C recommendation only for a brief time: in HTML 4.0 which was immediately replaced by HTML 4.01. It is worth noting that neither frames nor target attributes are supported in recent versions of HTML (XHTML 1.1).

Let’s add that there are serious accessibility issues with opening new windows and that Jacob Nielsen considers it to be one of the top 10 errors web developers can make:

Even disregarding the user-hostile message implied in taking over the user’s machine, the strategy is self-defeating since it disables the Back button which is the normal way users return to previous sites. Users often don’t notice that a new window has opened, especially if they are using a small monitor where the windows are maximized to fill up the screen. So a user who tries to return to the origin will be confused by a grayed out Back button.

As for legal justifications, there are none.

After Oracle and Microsoft, IBM sets its database free

I wrote about this two months ago, but IBM finally announced it is setting a limited version of DB2 free. It was unavoidable after Microsoft and Oracle doing the same. It seems clear that the various free open source databases, MySQL, PostgreSQL, MaxDB, Firebird and Ingres, are putting a lot of pressure on the database vendors.

How to make external links exit HTML frames?

Generally, avoiding copy and paste is a great idea whether you are designing a web page or sending people on the moon.

A common problem with the badly constructed web sites relying on HTML frames is that external links are loaded within the frame which poses serious usability issues. A better solution is not to use frames, but sometimes, you are stuck with them. I had an argument recently with some people who insisted they had to add a “target=’_top’” attribute to all external links, in all pages.

Using the DOM API and JavaScript, you can easily add the correct target attribute to all external links without any copy and paste if you follow the convention that external links begin with “http”. Simply add the following within the “head” element of your web page:


<script type="text/javascript">
function externalLinks() {
var anchors = document.getElementsByTagName("a");
for(var i=0; i<anchors.length; i++) {
var anchor = anchors[i];
var myurl = anchor.getAttribute("href");
if( ! myurl) continue;
if(myurl.indexOf("http") == 0) {
anchor.setAttribute("target","_top");
}
}
}
window.onload = externalLinks;
</script>

Of course, this relies on JavaScript being enabled, you might have cross-browser issues, and it adds an overhead to the processing of the page.

Looking For Great Open Source Graph Library

I’m currently looking for good open source graph theory. It needs to support basic algorithms for problems like minimum cost maximum flow. I need a GPL-compatible license.

  • In C++, I found that the Boost library has something pretty complete together with Python wrapping. But I hate working with Boost: it is monolithic, the code is obscur (to me) and they require their own build tools instead of the default unix way (./configure; make; make install).
  • In Python, I found NetworkX but while it has great plotting facilities, it lacks supports for fancy algorithms.
  • In Python, I found kjbuckets which is self-described as “a Python extension module that provides fast set, graph and mapping operations”.

NRC Promoting Slope One

My old research group at NRC is promoting the Slope One algorithm for recommender systems:

The performance of Slope-One is remarkable; recommendations can be culled from collection of a million rated songs in a matter of seconds.

Note that the people who make this statement are only indirectly related with the authors of this algorithm (Anna and me) and they certainly could have chosen to work with other algorithms now that we have left NRC for quite some time (2 years). They base these statements on in-house, independent implementations they have designed.

Why libxml2 takes forever to transform XHTML files

For my Online XML Course, I process lots and lots of XHTML content using XSLT. Up until now, I avoided the libxml2 XSLT processor (xstlproc) because it was unacceptably slow.

Today, I found out what is happening. It loads all of the XHTML DTD files from W3C each and every time it processes an XHTML file. To get around the problem, use the –novalid flag when invoking the xsltproc command line. You might get warnings about problematic entities, so I suggest you try a DOCTYPE declaration like the following:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"[
<!ENTITY laquo "&#171;">
<!ENTITY raquo "&#187;">
<!ENTITY oelig "&#339;">
<!ENTITY nbsp "&#160;">
]>

kd-tree applet

k-dimensional trees are a clever way to select all points in a rectangle using O(sqrt(n)+k) time where n is the total number of points and k is the number of points in the range. I usually don’t care for applets as a way to illustrate results (though I have two on my own web site doing just that!), but this kd-tree applet is a great trick. I post this here because I want to use it in a course if I ever have to teach this concept. The applet is in the public domain, but was written by Jacob Marner.

I resisted posting the applet here, because I know Java can crash some browsers or create other trouble. Sad. Java is an ok language and I really wish it would work in the browser.

Sex.com sold for $14 million dollars

Slashdot reports that the sex.com domain name sold for $14 million. Recall that people spend billions every year buying software, which effectively costs nothing to copy.

The best route, these days, to become really rich is to find a way to create something that effectively costs nothing to produce, though it may cost a lot to design, and then, find a way to make sure you are the only one who can make an infinite number of copies for free. The problem is that we are collectively wising up to this get-rich-quick scheme.

I think that a more durable model, though a much less effective one, is to find a way to offer a service nobody else can match. Google comes to mind. It is a model based on constant hard work which appeals a lot more to the Catholic boy in me.

Saving Bandwidth with CSSTidy

My CSS files get verbose over time. CSS is just not a great language or else, I’m not very good at it. Anyhow, I found out about CSSTidy which is a nifty tool to optimize your CSS files. There is also an online version. CSS optimization is a cool topic and it might get to be quite a challenge as selectors become more complex.

However, given the following test:


montant {
color: red;
font-weight: bold;
background:white;
font-style: normal;
text-align: center;
}
nom {
color: white;
background:white;
font-style: normal;
text-align: left;
}
texte {
color: black;
text-align: center;
font-style: normal;
background:white;
text-align: left;
}

CSSTidy failed to rewrite it in the obvious way:


montant {
color: red;
font-weight: bold;
text-align: center;
}
nom {
color: white;
text-align: left;
}
texte {
color: black;
text-align: left;
}
montant, nom, texte {
background: white;
font-style: normal;
}

Before you rush out and try to implement your own CSS optimizer, notice that the Flumpcakes CSS Optimizer found the right solution.

Next Page »

18 queries. 0.440 seconds. Valid XHTML

Powered by WordPress

Subscribe to this blog in a reader or by Email.