ned Productions –

by . Last updated . This page has been accessed 21 times since the 3rd April 2019.

It has always irritated me that the web has fallen so short from Engelbart's original vision of the semantic web back in 1968. HTML was supposed - in fits and starts - to delineate document structure in a way which made the content machine parseable. And to a certain extent, this has been successful (witness all the screen scrapers which proliferate the web). Things became incrementally better with the introduction of XHTML back around 2000 which made HTML compatible with a very wide ecosystem of structured markup - indeed, XML has been one of the great success stories of the past decade in computing.
If you're anything like me then managing your CV becomes an ever increasing headache over time as each prospective contract or employment requires their own peculiarly customised CV format with certain things made prominent and other things not. I suppose I am somewhat different from most in that I wear an IT hat, a lecturing/education hat, an Economist hat, a Business Process Systems hat and an authoring/writing hat - and I used to have to maintain a separate CV for each which becomes painful when you run through contracts and employments as fast as I do!
Computer science theory classes teach students that associative containers (i.e. containers whose items are placed in some form of faster than O(n) access index) come in two main forms: (i) ordered, in which case it has O(log N) average lookup complexity and (ii) unordered, in which case it has O(1) average lookup complexity. The C++ Standard Template Library comes with std::map<> and std::unordered_map<> for precisely this reason - there is supposedly no other choice except for esoteric requirements such as indexing a few terabytes of data where, as Wikipedia will show you, you'll find all sorts of crazy indexation algorithms.
Here is my portable Pi generator: The Edinburgh University Masters in High Performance Computing Practical for entry 2008 My solution for this My BBP PI generator (both generic C++ and OpenMP & SSE2 optimised) PI to 50,000 hex digits:
I found a second showstopping problem with Microsoft Expression Web other than the BOM breaking PHP, and this includes all versions up to v4: there is a bug where the formatting engine will slowly & randomly corrupt your HTML! This is a rather serious problem, so I resolved to fix it by having my preflight python script perform validation of new content to catch any errors. The following Python script fixes this problem and is an enhancement of RemoveBOM v1.
In my recent move to Microsoft Expression Web, I came across a problem which has been plaguing users across the internet according to google. If one uses UTF-8 to encode ones web pages in Expression Web so you can be XHTML compliant, it inserts a hidden UTF-8 BOM marker at the start of the file. This is very, very bad, because PHP and Perl doesn't understand BOM markers (yet) and neither do web browsers which then display three squiggly characters at the top of each page.
This little section of the ned Productions website is dedicated to the cross-platform programs I have made publicly available: LiveXMLCV An XML based interactive CV format capable of pretty XHTML output. nedmalloc A leading high performance threadcaching dynamic allocator for win32 and POSIX nedtries A very fast bitwise Fredkin trie indexation algorithm implementation which handily beats red-black trees and even hash tables! Pi A portable, multithreaded, SSE2 optimised Bailey-Borwein-Plouffe Pi generator ptmalloc2
nedmallocis a VERY fast, VERY scalable, multithreaded memory allocator with little memory fragmentation. If you're running on an older operating system (e.g. Windows XP, Linux 2.4 series, FreeBSD 6 series, Mac OS X 10.4 or earlier) you will probably find it significantly improves your application's performance (Windows 7, Linux 3.x, FreeBSD 8, Mac OS X 10.6 all contain state-of-the-art allocators and no third party allocator is likely to significantly improve on them in real world results).

Contact the webmaster: Niall Douglas @ webmaster2<at symbol> (Last updated: 2011-08-29 00:00:00 +0000 UTC)