The timetable for Apachecon EU 07 has been posted.
I'm speaking on Wednesday at 5:30 (note to self, stay sober to boost that speaker competence score!) Title; Apache James - The Complete Email Application Platform don't miss it. :-)
- ► 2010 (20)
- ► 2009 (59)
- ► 2008 (50)
- The past is another country; but you can see it fr...
- Criteria for judging proposed "solutions" to the p...
- Is spam going to kill SMTP?
- jSPF passes all the tests
- Mailet API getting some independance
- 123 - I love you
- Consumer hell
- labels and post by email
- USB Turntable
- .. and finally ... how I got it all together (or w...
- Demolition III
- ... From my phone, at last!
- blog by mail from my mobile
- New address same old nonsense
- Mailet Annotations - Proof of concept.
- VERP, Mailet, and James
- More Uninformative Exceptions (in the sense of mo...
- I want a phoney Phd
- ClassCastException - why so coy?
- Did I ever do that? How about searchable commit me...
- Apache James at Apachecon EU 2007 ?
- ▼ January (23)
Friday, January 26, 2007
The timetable for Apachecon EU 07 has been posted.
Thursday, January 25, 2007
I took this picture, of what Americans might call a "Vacant Lot", today. It is a few streets from our office in what is variously known as "Anderston", "Glasgow's International Financial Services District" or "Glasgow's notorious red-light district" depending on the context.
I was amazed at the number of layers of history that you can see imprinted on these two walls, from the gable of the cottage apparently embedded in the newer wall on the left, through at least one layer of sandstone and two layers of brick. The brick isn't one age, if you look carefully you can see that it too has been extended upwards as this part of the city evolved. At the bottom of this page is a photograph of Anderston Village in the 1860's.
The "vacant lot" is down in the far right hand corner of this map near to the junction of West College Street and Brown Street, on the right of Brown Street.
Looking on Google maps today you can clearly see the space on the right of Brown Street north of the junction, but West College Street is now Crimea Street, and the MOD's Kentigern House sits across the top half of Carrick Street.
Thursday, January 18, 2007
You will find a document which outlines an idea I've had for a while.
The thrust of the document is that while we don't know what the silver
bullet solution for spam is we do know some of the characteristics
which we expect it to exhibit.
We also know that very many ideas are presented on the email@example.com list which
fail to meet one or more of those criteria, this draft is intended to
provide a reference which describes those criteria, and could be used
as a partial statement of requirements for a technique to solve the
problem of spam.
Obviously this is just my own 2c at the moment, so let me know, preferably on the asrg list) what
your opinions are and I'll modify, abandon or replace this as
FYI the abstract reads:
"The Internet Research Task Force Anti-Spam Research Group (ASRG) is
frequently presented with proposals for techniques for managing spam
from authors who wish to elicit an expert critique of their
proposals. In many cases proposals fall foul of issues and risks
which are well known and understood by members of the ASRG. This
Internet Draft is intended to enumerate and explain a number of the
more important of the criteria which tend to be applied. This
document will then serve as a normative checklist for anyone wishing
to present a technique to the ASRG."
I read this post about the scale of the spam problem today. Its pretty chilling, but I guess it was meant to be. As far as I can tell the question it poses is, are we're really looking at a doomsday scenario and if so should we now be considering the unthinkable and pull the plug on SMTP?
I'm assuming that we all agree that the problem of spam is a direct result of SMTP being designed without any of the controls necessary to protect the network from this abuse.
Can SMTP be revised or does it need a flag day? I don't want the character of email to change, but I'm fed up with trying to explain why the problem of spam is so intractable, perhaps its time to get some traction and stop flogging a dead horse. WDYT?
James developers are currently voting to release jSPF-0.9b4. This release passes all the tests at www.openspf.org
If you want to try it out before its released the rc is here Remember to let us know what you think of it.
Wednesday, January 17, 2007
In the past the Mailet API has been managed within the Apache James Server project. You could always get the api separately but it was managed in the James Server lifecycle.
Today the votes were counted and the API will soon be taking its rightful place as a James subproject.
We'll start small, by releasing the current version, and move on to look at the enhancements we've been discussing over on firstname.lastname@example.org.
Eventually I hope we'll add things like a Reference implementation independent of James Server and suitable for embedding, an SDK, and possibly a TCK.
If you want to get involved subscribe to email@example.com and speak up.
"I'm an English teacher. I'm fat and bald. I'm a firecracker in the sack. That's all you need to know." read his blog.
Ask Bjoern Hansen posts a story of insane customer services, shame is I like Netgear kit for the same reason he does.
Monday, January 15, 2007
I just applied labels to all my posts, thinking that I could use them to select what is syndicated on planetapache, then I realised that posts from emails won't get any label, so I'll have to log-in and apply labels if I want that to work.
blogger, please can we have default labels for email/mobile posts?
The previous post was made from my phone, including picture. Cool huh?
It was way not as easy as it should've been :-(
Step one, send a mail to firstname.lastname@example.org from my gmail account and claim my blog.
Step two, send a mail from my phone to go@blogger
look for an smtp server to use, o2 or gmail? o2 doesn't seem to work.
what connection to use? try several pre-programmed ones, settle
on the one that actually finds the smtp server.
error "TLS/SSL can't recognize certificate"
Solution, install root certificates in phone. What! This is
getting a bit too far from the path of straighforwardness we should
expect in the 21st century, surely? Anyway, root certs duly found and
cable attached. Cable can;t be used because the certs are just copied
into the removable memory. Good job I have a blue tooth dongle,
bluetooth them across. It works. Try gmail. OMGWTF it works, I receive
a mail and send a mail.
New problem though, too much crap comes into my gmail account I
want to use a quiet account from my phone. So I try setting up mail
for killerbees.co.uk with my google apps which I set up the other day.
It gave me a whole "cyber presence" in minutes (well an hour or so)
which is great because I no longer bother to host my own domain and I
was wondering why I bothered to pay for it, anyway back to the story,
the thing I hadn't done was to create MX records for killerbees.co.uk
pointing at gmail's servers, so I tried that last night and...
easyspace wouldn't accept the gmail mx hostname, I know about the
trailing dot but that didn't work either so I raised a trouble ticket.
Woke up this morning to find that they'd done it by hand for me.
Now I just have to mail to go@blogger and claim it for my blog.
Thats what this post is.
Summary, repect to:
blogger - for email@example.com
google - for gmail smtp & google apps
sony ericsson - for the k750i having support for TLS in smtp & SSL in POP
Name and shame
sony ericsson - for not pre-installing root certs
02 for not setting their customers up with all this automatically.
Sunday, January 14, 2007
Well here we go, straight from phone to blog ...
Saturday, January 13, 2007
First step make sure I can blog by mail
- update - I guess that worked, now to try to send mail from my phone
Friday, January 12, 2007
I just found out that blogger now lets us use CNAME's to point to our blogs.
The sharp eyed geek amongst the fools who read this - yes john that *is* you ;-) - will have spotted that the URL is now blog.killerbees.co.uk. Next step see if I can get google apps to let me map www.killerbees.co.uk to a google pages page. You'll know it worked when the link no longer redirects you to my apache homepage
One small step for man, one giant leap for a neater life, and all that.
Tuesday, January 09, 2007
Well I did it at last, got my hands wet with annotations.
Work being work we're still well stuck in the j2sdk1.4 era because of the stuff we don't have the balls to upgrade too quickly :-)
James being James we tend to stick like glue to the oldest JDK we can until we have a justification for requiring an upgrade, as opposed to just a half-arsed reason for it, which is what we usually manage.
So yesterday, after a few weeks of debate on the mailet-api@james list about how we would deal with satisfying mailets' dependance on arbitrary services, I had a go with annotations.
We'd originally toyed with the idea of the service location pattern using JNDI. I built a POC for that out of the Apache Directory naming stuff, which is pretty comprehensively top-notch in both the "it works" and "its easy" categories. But that really seemed to be a cop-out since James has long espoused IoC. So the feeling on the list which incidentally includes some non-james people interested in the API, was that dependance injection should be specified where possible in the API, and Annotations used to let the container know what the Mailet is expecting.
Working on a sandbox fork of James, which I'm doing so I can get away with this stuff *and* let other people see it before I accidentally delete it, I created a custom annotation type and annotated a mutator ("setter").
The idea being that, in this case, the annotation would contain a String name parameter of a pre-configured datasource (javax.sql.Datasource) and on finding the annotation James' mailet loader would lookup the service (in this case in the JNDI context as it happens) and inject it into the mailet by calling the annotated method.
Although I did it with DataSource's which aren't quite the same as Services will be, it was relatively easy to programme James to sort this stuff out, and extremely nice and easy to annotate the method.
Whats more, and this is the big selling point for me, it worked first time.
I know it counts for nothing but it output this reassuring message to the console...
ToRepository Mailet requires datasource maildb
maildb is org.apache.james.util.dbcp.JdbcDataSource@652552
mailet got datasource :-) org.apache.james.util.dbcp.JdbcDataSource@652552
So now, having proven it, I guess I have to get to grips with the niceties of Annotations and design the annotations we want to use.
Monday, January 08, 2007
I just stumbled on this blog entry by Aaron Johnson from last Summer which demonstrates quite nicely a lot of the Big Good Thing (flexibility and plug-in architecture) about James and the Mailet API and VERP
Since my last post I found this bug which has been open since 2001.
Its the comment from webrejin which I liked... "why does a FileNotFoundException not tell which file was not found?"
If you can think of any others let me know, or add them to that bug, or just vote for it.
I wish they'd sell degrees from phoney/dodgy colleges for a few quid online instead of a couple of hundred.
I'd buy them for people for christmas and birthdays. I suppose I could print my own, but that wouldn't be quite the same, would it?
Well it seems that 23% of the people who read this blog read it because they searched for the term "classcastexception".
If you are reading this because you are having trouble with a ClassCastException I suggest you try searching for "troubleshooting classcastexception" or something like that instead, it might also be a good idea to add the name of the class or product which is causing your pain. You could also read some of my other posts on the subject here.
But I'm going to say this again anyway...
Why doesn't ClassCastException have a constructor takes two objects and outputs the message "Can't cast xx.xx.xx to yy.yy.yy at" so that we can find out what couldn't be cast to what simply by applying our reading skills to the message and not having to
a) read the stack trace and
b) attach a debugger just to find out what the wrong type was.
I see this bug registered with Sun, so obviously someone else cares too, but not that much because it has been in-progress since june 2004.
The last time I blogged about CCE I got a comment, but it wasn't wholly supportive it just said "Get any Desired College Degree, In less then 2 weeks.!"
Friday, January 05, 2007
While trying out google's blog search, in typical vain vein by searching for myself, I came across a post on Stefan Bodewig's blog in which he says I agreed to modify James' build.xml for Gump.
Erm, I remember the conversation but I didn't remember doing anything about it, don't you just *hate* that, or are you all too organised and too good at remembering stuff?
So of course I checked the svn logs and I had done it, I think I can remember doing it while I was still at Apachecon.
But I had reluctantly reverted to svn only after trying Google code search and discovering that although it is crawling svn repositories it apparently isn't indexing the commit messages, I suppose they'd just have to crawl the output of whetever the svn log command is as well as a GET (assuming they're using WebDAV to crawl svn) so it probably isn't a big deal.
So if you're listening Herr Google, can you add commit messages to the code search?
(P.S. Perhaps they do do that and perhaps our repo has a robots.txt which is stopping them, I never thought of that.)
Thursday, January 04, 2007
Flushed with the sucess of my first ApacheCon presentation in Dublin last year, Happy New Year by the way, which the Dublin audience [pictured below] liked everything about apart from my competence (I'll practice for next time I promise!) which was below average but NOT "poor"!, I just proposed two James related papers for ApacheCon EU 07 , one on James as an application server and the other on the Mailet API as distinct from James.
Hopefully at least one of them will be accepted, IMO it is high time the James community started to make up for the woeful lack of James related activities outside of the project itself.
So if you're involved in the review of the submissions I'm shamelessly asking you to give James its 15 minutes (well 2 x 60 minutes in fact) in the spotlight this year...
Discovering open data via analytics exchange on... - Discovering open data via analytics exchange on #Bluemix Discovering open data via analytics exchange on... ------------------------------ IBM Technical Ro...55 minutes ago
Active/Active WAN-based Replication in Apache Geode (incubating) - This past February 2016 Pivotal contributed its Disaster Recovery (WAN) feature to Apache Geode. This feature has been incorporated into the Apache Geode 1...1 day ago
[ApacheCon NA 2016] The Formation of International Law and the Formation of Open Standards– What Can We Learn? – Joanna Madej - ApacheCon NA 2016, Vancouver Friday, Plaza B The Formation of International Law and the Formation of Open Standards– What Can We Learn? – Joanna Madej Details2 days ago
Are blockchains the most expensive database ever invented? - One of the oft-made claims about Bitcoin and its blockchain transaction ledger is that they make transactions really cheap, so you can pay someone anywhe...3 weeks ago
You’re invited to help us celebrate an unlikely pairing in open source - We are just days away from reaching a significant milestone for our team and the open source and open standards communities: the first anniversary of Micro...3 years ago
I know nothing, I'm not a fortune teller, and you'd be insane to think that I am. This disclaimer was cribbed from an email footer I once received. It is so ridiculous I had to have it for myself.
Statements in this blog that are not purely historical are forward-looking statements including, without limitation, statements regarding my expectations, objectives, anticipations, plans, hopes, beliefs, intentions or strategies regarding the future. Factors that could cause actual results to differ materially from the forward looking statements include risks and uncertainties such as any unforeseen event or any unforeseen system failures, and other risks. It is important to note that actual outcomes could differ materially from those in such forward-looking statements.
Danny Angus Copyright © 2006-2013 (OMG that's seven years of this nonsense)