Sunday, September 18, 2005
Sharing files with diehard Office users...
Not f2f; not by mail; but by shared MS Word® documents.. >sigh<
Though the best way possible would probabely be to convince these people to make the switch, and to dive into the fullness of free-software, as the article notes: Would you ask your boss to export to xhtml, docbook, pdf or RTF? Probabely not, and neither would I. (Although i have gladly convinced him of the better product OpenOffice.org is, he just keeps using MS Office® products - but he sends everyting in-mail, which is HTML)
Anyway, the article points a few pitfalls you might find interesting, just for conversion purposes.. And when people start to complain, about you not being able to use feature X, try to download the appropriate viewer from Microsoft™ directly, and see if their viewer supports it. I can tell you, it might just be an unsupported Word or Excel® feature !
ads ads ads....
Use FireFox with the Adblocker, and find some nice preset file to block quite a few ads right out of the box!.
It took me a couple a days to find out myspace was cluttering my layout with ads.. So, since there are ads in there: i might as well add one of my friends there as well!.. And like with all ads: do click on it!
Lorem Ipsum fun
How's that for a translation of something you always thought was random text?
For more nice details, see the site, and check out this wikipedia article.
"Not a business model" - someone else's comment
To my way of thinking, Linux, GNU, FOSS etc.. are simply the first iterations of the major societal changes being brought about by the maturation of the Information or Electronic revolution. These changes are mainly in the collaborative efforts of disparate regions to supply themselves and others with the benefits of their ideas, input and methods of operation.
When I first began programming in the 80's, the sharing of ideas and techniques was a normal activity. I, as well as most others, could hardly wait to get on-line and show others what we had learned, thought of, or improved. And by reading the posts of other developers, I was able to improve in my craft rapidly and effectively. Many developers of that era owe our own technical expertise to the free and open sharing of ideas, techniques and implementation.
The major impetus of Open collaboration is not merely financial, but seems to be driven by necessity and desire. The need for software to provide particular functionality, and the desire to share that functionality with others who may need it. The open sharing of ideas, implementation or functionality spurs the overall industry into a more robust and support driven model, which the businesses based on former models of proprietary control of access cannot challenge. They cannot challenge it, mainly as it is not a business model, but an evolution of human social interaction, collaboration and cooperation. The offspring of the Electronic/Information Revolution are not approaches to technical production of goods, but more a communicative, conversational approach to human social and industrial situations.
In an effort to demean or thwart the growth of the collaborative model, many have attempted to deride it as a mere 'amateur' effort. This disengenuous
argument fails to take into consideration the number of industries, technologies, and discoveries that were and are made by 'amateurs'. The first aircraft was built by amateurs who ran a bicycle shop. The first cars were made by individuals with little or no 'professional' background. In astronomy, more discoveries are made by amateurs than professionals. And all of these differing aspects of human endeavor have only one common denominator, the passion of the
amateurs involved to pursue their goals.
GNU/Linux, and the various successful FOSS projects have shown that the accumulated expertise of individuals can and do produce a far superior product to the world at large than the proprietary model can ever possibly imagine to achieve, simply because of the availability of multiple independent viewpoints and capabilities ready and willing to share their ability or vision. If a particular functionality or process is needed anywhere, it can be readily implemented without risking directorial censureship due to lack of projected profit. And that is where the world benefits from the open sharing of ideas, information, knowledge and ability.
GNU/Linux may not be here in 20 or 25 years, finally giving up to a newer and more powerful model, but it's influence in the birthing years of what will most likely be thought of historically as a major shift in human societal direction, will never be lessened. The individuals may not be remembered, as many of the older Industrial Revolution are forgotten, but their influence, and contribution will live on.
Viva la Revolucion!
Wikipedia, who doesn't love it?
Once you've met it, and know a bit how to use it (Wikipedia derives 66% of it's ttraffic from search engine referrals, and 50%; of that traffic comes from Google, meaning 33% of all Wikipedia traffic is from Google referals alone (according to Hitwise), you ought to be caught by it. Fancinated, and querying quite a lot of topics, as there is plenty of info on 'quite a few' items. If you look at the statistics page, you can see there are quite a lot of internal links.
Hyperlinks aren't bad.
Hypertext is good..
We see this in blogging, wiki's, manuals etc.
One thing you get from using links, and by visiting them, is that you can access related material. This might be more detailed info, of something completely different but from the same family. Like this plant page, or as a perfect example, the disambiguation page for the word "Plant". (I found that page because it was the first link on the plant page - there you have hypertext at work).
By wandering the WorldWideWeb this way (the way of the wiki) you can see the net visualised by a graph (commonly used in the study of complex systems and other interesting topics) (If you like it, take a lookt at NetworkX and graphviz to do some study yourself, or plot some of your own)
One disadvantage of the graph/net/linked structure, is that you can easily get lost in the maze of links... Or get to meet way to many interesting articles to read at a time. Wikipedia ofter does that to me.
Like the other day, someone posted this link, where i found that vegetarians were previously called "Pythagoreans". This has a reference to python the way i see it, though it originally refers to Pythagoras (the father of numbers).
Though i was enjoyed with this discovery at first, as the vegetarian page describes Pythagoras had said:
Following the link to Pythagoras (because, once again i got curious) i learned:
Hmm. Irrational numbers, i never really understood what those were... so, i hit the link... and learned a bit about it:
But i also learned:
... i found it quite disturbing, that the man i was just getting fond of, had a man killed because of some mathematical theory.. So, he might be a vegetarian, but he definitly wasn't a better man..
And all this, i wouldn't have known, if it weren't for Wikipedia, and all the contributors. So thanks to all of you!
Having spare time?
Wikipedia for wizard - and take the first link to merlin you can find :)..
You'll probabely be able to fill an entire evening with this stuff if you're only into it a bit... If you like it, it might just be a nice pointer to quite some interesting articles and "external pages"...
Happy reading!
Google Talk and Miranda-im together
Google Talk: Help Center: "Congratulations! You are now ready to connect to the Google Talk service using Miranda."
Really, i loved google, had an affair with Miranda-im - but both combined?!?
Even with a blogger api that comes with it :)Whatever your feeling is towards google, you have to admit they do their best to please many people - and probably themselves the most, but when they do things like this: "Client Choice with Google Talk"and "As long as you adhere to the requirements of the XMPP specs, you should be able to connect to the Google Talk service." - I love them for it!
Tuesday, September 13, 2005
Friday, September 09, 2005
Thursday, September 08, 2005
gherkin not so fast after all
I've tried the test myself. But shortened it a bit.
This is the testcode:
import time
def test(module):
t = time.clock()
s = module.dumps(value)
print module.__name__, 'encode', time.clock() - t, 'seconds', len(s), 'bytes'
t = time.clock()
module.loads(s)
print module.__name__, 'decode', time.clock() - t, 'seconds'
value = (("this is a record",1,2,1000001,"(08)123123123",
"some more text",22/7.0,
10123000000000234523454245234523452333333452145,
u"some unicode",True,False,None)*50000)
print 'repr(value) length ==',len(`value`)
import encoder, marshal, pickle, cPickle, json, xmlrpclib
test(encoder)
test(marshal)
test(pickle)
test(cPickle)
value = (("this is a record",1,2,1000001,"(08)123123123",
"some more text",22/7.0,1,0,None)*50000)
print 'without the long, boolean, and unicode. New data length is',
print 'represented:',len(`value`)
test(encoder)
test(marshal)
test(pickle)
test(cPickle)
test(json)
olddump = xmlrpclib.dumps
xmlrpclib.dumps = lambda x:olddump(x,allow_none=1)
test(xmlrpclib)
And these were my (somewhat more readable) results:
repr(value) length == 8800000
encoder encode 2.021 seconds 7450011 bytes
encoder decode 4.957 seconds
marshal encode 26.181 seconds 7000005 bytes
marshal decode 0.395 seconds
pickle encode 4.846 seconds 5300075 bytes
pickle decode 3.305 seconds
cPickle encode 1.125 seconds 5300075 bytes
cPickle decode 0.886 seconds
without the long, boolean, and unicode.
New data length is represented: 5100000
encoder encode 1.580 seconds 4650011 bytes
encoder decode 3.549 seconds
marshal encode 14.779 seconds 5200005 bytes
marshal decode 0.309 seconds
pickle encode 3.875 seconds 2550061 bytes
pickle decode 2.646 seconds
cPickle encode 0.559 seconds 2550061 bytes
cPickle decode 0.456 seconds
json encode 9.118 seconds 4350001 bytes
json decode 38.152 seconds
xmlrpclib encode 5.157 seconds 26500019 bytes
xmlrpclib decode 21.704 seconds
Note how marshel is the fastest for decoding, while cPicklehas the best overall performance.
If anyone is willing to extend this with any other modules. Like repr and unrepr, i surely would appreciate it.
Faces - for project managers
Bumped into this one. Faces. . With it, you write your planning as a python like program (though with some creative use of python constructs i must say).. Check out the docx, this program appears to be really neat!
What is facesFaces is a powerful, flexible and free projectmanagment tool.
Faces stands for flexible, automated, calculating, extendible, simulating.
Faces is based on python, an easy to learn and powerful programming language. Projects in faces are simple python programs, which can be edited by the graphical front-end or your favorite text editor. The comfortable auto completion function enables you to input many tasks very fast and restructure them afterwards.Faces combines the maturity of a shrink-wrapped product with the flexibility of an individual software.
Faces is designed to be easily extendible to custom needs (e.g. adding new custom fields to tasks is a breeze). The whole power of python can easily be used to generate all kinds of output, to change the scheduling behavior or to modify the graphical front-end.
Faces is divided in a class framework and a graphical front-end. Faces project files use the class framework and can act as stand-alone programs. You can use them to generate your reports without the graphical front end. Therefore the report generation process can be automated, for example to update a web-report periodically.
Faces enables you to save snapshots of your projects to track the changes while progressing and compare them to your initial planning.
With faces you your risks can be seized and simulated in different scenarios. It is possible to build and evaluate several planning alternatives.
In faces you are able to use a common resource database and to balance your resources simultaneously over multiple projects. It is also possible to generate summary reports of multiple projects.
With faces you can build your own knowledge-base for reusing experiences of former projects and improve your planning.
Faces supports several methods for estimating projects, e.g. faces has special support for the delphi estimation method.
In faces you are able to register the performed efforts and compare them to the planned efforts. The real and planed costs can be tracked to create a cost profit analysis of your projects.
License
Faces is Open Source software licensed under the GNU GPL.
Documentation
View the documentation online
Monday, September 05, 2005
Quick references
- Google quick reference
You'll be amazed at what you can find!
Be Google powered! 8) - Javascript Cheat Sheet
Quite lovely... - CSS Cheatsheet
Nearly marvelous! - xHTML cheatsheet
Weeeeeeh! - Vim command cheat sheet
What would life be without vim..
Regards to all of you who've written these sheets.. They're great!