Saturday, August 20, 2005
A case in point is made here, http://www.problogger.net/ . Darren Rowse reported that he has made a Six Figure salary a month off Blogging, and what does he do (It is actually more than a blog about making money blogging) he seems to eat, sleep, dream and talk about blogging. I think the site is quite interesting, but I don't ever intend on competing with him that much.
He does have some good pointers about site design, content and the like. And a neat comment
I am sorry that you are offended by me earning money from blogging. A guy has to
support his family somehow and I figure it might as well be by helping people on
the net by providing them with the information that they are searching for.
Lucky Man! I think I should stick to my day job though.
|Earning Money [feed], Blogging [feed], Make Money [feed], Blog [feed], Helping People [feed], Rowse [feed], Pointers [feed], Sleep [feed], Dream [feed]|
Some options that I need are:
- It has to be light weight
- Potentially support XPath
- Has to be a reader (itereates accross nodes) I think this means SAX
- Has to also support DOM.
- Allows Creation of XML documents, via DOM style methods or some other method which I don't know about.
If you have any suggestions, I really would appreciate hearing them.
Email me: email@example.com
|Xml Parsers [feed], Xml Documents [feed], Dom [feed], Xpath [feed], Sax [feed], Xml Parser [feed], Perl [feed]|
I have been looking forward to this post, I don’t especially know why. When I was 16, I started a small company (which I left, but is now doing well – oh well), it was called PCBware (Paul, Chris and Ben)ware. Its name is now www.Switchmedia.co.uk (they host my Blog for me). One of the things that we did an amazing amount of was Perl. All our systems were written in Perl, it was fun. Anyway, as it transpires, other things have happened to me and I am heavily involved in C# and .Net application development now.
I stopped using Perl about 1 year ago and have not touched it since. That is until I did this AJAX application.
If you have ready some of my posts recently you will see that I was struggling with Cross Domain scripting, basically I needed to call a web service directly from the web page. Unfortunately, Firefox won’t allow this and IE will (if you are running in an unsecured manner), so the only thing that I could do was to proxy the request through a script on my server and pass the results back to the client. This had a couple of benefits, firstly it got the cross site scripting to work correctly and secondly it allowed me to hide my Developer Tokens, which for some API is key.
I will post my scripts in the next few posts. If you spot any problems let me know, because it is vital that I understand why I have made mistakes. firstname.lastname@example.org
Anyway, back to the subject. I really enjoyed my re-entrance into Perl, the libraries are numerous and really quite easy to use. The scripts are really simple, but they helped me no end. The scripts are based around LWP and CGI.
In the next version of my Web app, I will need to create more scripts, but I am hoping to provide more services, such as knitting differing blogs together to aggregate the data better. I also need to create one script for each different type of Web Service that I am going to allow the application to consume.
Controlling the access to the Web Service through a proxy script will allow me to do a couple of cool things, like I said earlier, I could join RSS feeds together better. I could also aggreagte multiple calls to a web service in one single call through the proxy. I have lots and lots of options.
I hit some problems with my understanding and some simple mistakes both with the client code and the server code. HINT, if you are performing a post operation, there are normally "content()" methods that allow you to pass in masses of data. Initially I was putting all this on the query string which is the wrong thing to do.
I am really looking forward to doing a bit more Perl for the next version of the application. Also the reason why I am not doing it in .Net is because I am hosted on a Linux Box.
|Web Service [feed], Proxy [feed], Rss [feed], Aggregate [feed], Blogs [feed], Cross Site Scripting [feed], Perl [feed], Scripts [feed], Cross Domain [feed], Firefox [feed], Ajax [feed], Lwp [feed], Query String [feed], Tokens [feed]|
One of the reasons why I created the Technorati Tag Generator was to help me create the Topical tags at the bottom of the page. Initially I had three sections: a Technorati Tag Section, a Feedster Topical search section and an MSN search section. For each post about 10 minutes was spent creating Tags and search links, and about 10 minutes for each post thinking of Tags and related searches.
I am a big proponent of Value Added Data, but what really got my goat was the fact that I had to spend about an hour creating a post, 10 minutes of which would be creating the post, and the other 50 creating the data around the post.
With the Technorati tagger, it takes all of 1 minute to create the associated tags for a particular blog post. I am really pleased with this aspect of the program.
I am less pleased however with the fact that I have had to lose the other two boxes of Value Added Data. The next version of the application will add these back in. It really needs to because I have had feedback from people who have said they have missed those boxes. Additionally if it I can't get it in the application in the second version then I will fail at some of the goals I am setting out.
The hardest part about creating the two search boxes, was that I had to crawl the search engines trying to get the searches done correctly. The next version of my application will provide related searches and also a preview of the results so that I can quickly judge whether a particular search is any good.
|Msn Search [feed], Search Engines [feed], Topical Search [feed], Technorati [feed], Feedster [feed], Tag Generator [feed], Value Added Data [feed], Related Searches [feed], Tagger [feed], AJAX [feed]|
I was looking at this site http://penandthink.com/niggle/ and I really like the way it shows the Blog post.
I am not too sure if I can really use this as a basis for my site, because I have been posting a lot recently, so it won't stay too static...... Saying that, it might work.
A quick question for anyone out there: If you went to a Blog, do you prefer one item that is shown, or a full list?
Currently my page I show the last 30 posts. So that you can browse them if you like. Would you prefer the current entry at the top, and then a summary of entries beneath?
All emails would be greatly appreciated: email@example.com
|Blog [feed], Blogs [feed]|
Its not AJAX that breaks the navigation. Its the applications that break the navigation. Its the applications that break the Bookmarking.
Google Maps seem to have sorted the bookmarking issue out. But you have to remember that some applications don't lend themselves to Web Style Navigation, some applications don't lend themselves to bookmarks.
More on this later after I have thought some more on the subject.
Have you any comments, leave me one or email me: firstname.lastname@example.org
|Google Maps [feed], Web Browsers [feed], Navigation [feed], Google [feed], Web Browser [feed], Ajax [feed], Idea [feed]|
Currently, I provide some content (whether it is interesting or not is a separate question) and some value added features (a list of topics that a reader might be able to find related information) which include the Technorati tag list and the related searches.
Okay, the related searches aren't back in yet, but they will be. It is the value added data that I think some people appreciate. It is also the value added data that got me in to this series of Blog posts (I created the AJAX application to help me create construct the value added data).
I would like to include more value added data, maybe a citation list, the related searches defiantly. However I think there is a tradeoff. Too much information looks like you are spamming. I will have to weigh up each of the value added data to see which I think is best to include.
I will have to get back in to my AJAX application because maintaining the Value Added sections is a nightmare. The Technorati tags are really easy to maintain now ;)
Do you have any suggestions for Value Added Data? Please email me email@example.com.
|Value Added Data [feed], Value Added Features [feed], Technorati [feed], Related Searches [feed], Ajax [feed], Blog [feed], Spamming [feed], Tag [feed]|
Therefore I hope to have a mixture of both, the short entries will have a bit of a critique in and the longer ones such as my "Success and failures" will be more articley, but keep on subject and hopefully be useful and interesting.
For instance, I am posting this chapter as a series of more manageable set of entries.
|Blogs [feed], Manageable [feed], Blog [feed], Success [feed]|
I will, in the future, change the name of the blog. But rather than choosing it myself I might open it up to the masses to see if they can suggest a new name for the blog. This might in the long term be a publicity stunt, but I do need to get people visiting my blog and I would like to get a little more interaction in the blog.
I don’t want my blog to be a palace of grammatical correctness, I still want it to be personal, but I would like it to read well.
So here goes. Learn where to put commas correctly; learn about Semi-colons (Was the previous one correct?); learn how to structure sentences and learn how to structure sentences and paragraphs.
|Eats Shoots And Leaves [feed], Vocabulary [feed], Blog [feed], Microsoft Word [feed], Synonym [feed], Prototyping [feed], English Language [feed], England [feed]|
This entry is titled: "It got me thinking about how I communicate over my blog". This focuses on several areas from who I am trying to improve my grammar; the things I talk about; the length of the entries and what I include in my Blogs.
I will try to deal with each individual point, but the general gist of this post is really about how I have and I am trying to constantly evolve my blog.
|Ajax [feed], Blog [feed], Blogs [feed], Success [feed]|
Thursday, August 18, 2005
|Tagger [feed], Ajax [feed], Api [feed], Technorati [feed], Tag [feed], XHTML [feed]|
The API, lets a developer display all the tags that a particular site has created. It is pretty cool because it lets me see that some of the issues I have been having have been resolved.
Check out http://www.kinlan.co.uk/cgi-bin/SiteInfo.pl if you want to see all the tags I have used. It is a really simple API to use, and includes some basic stats about the tag (the number of times they been used). I can see how I can use this already in my next application, I am made up.
It is simple little API's like this that I like! Keep up the good work Technorati!
|Api [feed], Technorati [feed], Tag [feed]|
Wednesday, August 17, 2005
The Subtitle for this entry is: It got me thinking about all the other API's that I want to see.
What I mean by this really is that I want to see more feed/blog companies exposing more about the statistics. I want to see more retail companies exposing their catalogues. I want to see more News Corporations expose their news as feeds. I want to see search companies expose their results as feeds. I want to see search companies offer more interesting API's (Yahoo is about the most interesting in my opinion).
I just want to see more, I want a central list of companies that offer their services. After all, I am a consumer to them, maybe not always directly of products, but of their data.
It also got me thinking, that I don't really know of all the API's REST or SOAP that are out there. I would love to start taking advantage of them.
I would like to add a bit more dynamism to my apps. For instance, a particular blog entry that I do I might like to see the all the important keywords, for each keyword see its relative popularity, see other keywords that might help me get a better spread of the potential search results, see the relative ranking of keywords on advert revenue (so I can work out revenue potential if needs be). From this, I would like to query other sources so that I can cross reference and provide more feedback to my viewers, this information might contain the importance of a related blog, it might contain how many people link to it, who else that blog links to. It could provide a further level of service, for each keyword that might be a product I could query the retailer and provide best buy information or maybe localised product information based on where the user resides or even information about second hand items that are only 10 miles away.
Just little things like that. I am pretty sure all of what I have talked about is not revolutionary.
What I need (and I really need help from the readers) is lists of companies that offer Web API's to their software. Companies who offer RSS feeds that provide useful information.
|Api [feed], Rss Feeds [feed], Soap [feed], Blog Entry [feed], Web Service [feed], Api [feed], Search Companies [feed], Keywords [feed], Keyword [feed], Search [feed]|
I have been playing with the Blogger Tool for Windows, and there are some features that I would like to see go into future versions:
- The ability to edit the HTML before uploading to the Blogger.
- The ability to add Images
- The ability to add Tables
- The ability to add Select styles to text that is based on a style that I define
- Correctly create Ordered Lists and Unordered list. Currently all lists are un-ordered
- If I provide a shading for an element, I would like it be applied to the element in the HTML
This tool is way off from being "feature" complete, but it is a good start. I probably won't be using it too much because I like having the control over what goes into a post. I might use it to "Save as Draft" and then edit it later. I can get through loads of text without having to worry about my Tagging system or other styling stuff.
|Blogger [feed], Tagging System [feed], Html [feed]|
Tuesday, August 16, 2005
One thing I have noticed is that if you put a smiley icon in the text it only comes out as a “(“.
Edit: apostrophes don’t come out very well either.
Edit: Images and tables aren’t supported either. Gutted.
I think I will post a blog tomorrow with the features that I would like to see.
Edit: It is really fast at publishing the post too. I mean I find that it is really really fast.
Word Blogger, which I think I will call Worger! :)
This is a plugin for Microsoft Word that lets you post a Word document direct to your blog. I can't wait to have a go, it looks interesting. Does anyone have any reviews of it yet? Does it keep the exact format of your Word document?
This is actually quite a timely software release, I was getting really annoyed with the WSIWYG editor that I had gone back to plain mode. Why the WSYWIG editor can't do lists, paragraphs and blockelements correctly is beyond me. (it does tag links and email addresses nicely though!)
Anyway, I will give it a try and post my feed back on my blog.
|Blogger [feed], Word Document [feed], Blog [feed], Microsoft Word [feed]|
I personally think if a retailer isn't planning to create API's that enable applications to be built on top of their product catalogue, ordering systems etc, then they are losing out on a massively huge potential future audience. I can't really justify it more than that, other than it is what I belief will happen.
So I think I agree with Roberts statement, just not really that it is going to change quickly. For reasons below.
One stumbling block for me to start to use API's like EBay's is that most of the ones I find charge per call. As a Full-time developer, after hours home developer; I can't afford to start using these services to see if I can start to do something "Entrepreneurial".
Additionally, I find it hard to find companies that offer API's to their data, everyone seems so, how should I say it, keeping their cards tight against their chest.
Am I missing the point here? I mean afterall Amazon provide access to their content (if only they would allow me to list Market Place Items through the same Interface) for free. It's a revenue generator to provide open access to an API.
Has Ebay changed there per call billing policy? I am finding it hard to read their site, something has gone awry with the layout.
Does anyone know of any cool retail web services (possibly in the UK).
|Developer Api [feed], Web Services [feed], Robert Scoble [feed], Ebay [feed], Amazon [feed], Entrepreneurial [feed]|
Part 4: It got me thinking about how to take advantage of the Technorati API.
Because the general idea of the application that I was starting to develop was to help automate the creation of Technorati Tags and other Interesting searches, it was a logical step to start to use the Technorati Developer API (http://developers.technorati.com/wiki/).
Technorati offers about 8 different API's which allow you to create applications based around the data that they collect from their spider. The API's are easy to use, and like the Yahoo! (http://developer.yahoo.net) API's use the REST method of interacting with web services. This has the advantage of easily being able to construct simple requests through the use of a GET command.
Their basic API consist of:
- CosmosQuery: Queries information about who in the "Blogosphere" <- I hate that word is pointing in to the blog specified in the Query.
- SearchQuery: Obtains a list of blogs that contain the query that the REST query provides
- GetInfoQuery: Information about a user of Technorati.
- OutboundQuery: Who the blog you are searching for links too.
- BlogInfoQuery: Information about one particular blog.
- TagQuery: Information about the number of blogs, and post that contain a specific tag. As well as a list of the blogs.
- TopTags: The tags in the popularity range n,m
- KeyInfo: Some usage statistics, such as the number of queries that day.
I used the Tag Query, to help determine how popular certain keywords are. (Pulled back from the Yahoo API). This helped me to determine which of the tags were important, and also the tags that would help me get the most exposure for a particular entry.
One thing that this Tag doesn't do, but I think it should, is to return the ranking of the Tag. There isn't a way to find the relative posistion of this tag. All you could do is to incrementally search through the TopTags to see where the tag is positioned.
I didn't take full advantage of the API, because there are some holes in what can be done with it. One of the features that I would like to see is the "related tags". The technorati site contains this information and I think would be a real benefit to developers if we could also access this information.
Unfortuantly the TagQuery is a little slow, it is quite heavy weight, so I had to remove it from the App, however because of this I have a couple of options when I come to redevelop the AJAX application:
- Only as the TagQuery to return 1 blog result. This will reduce the bandwidth and I hope the response time.
- Develop a Asynchronus Call manager (I have talked about in Part1: It got me thinking Asynchronosly! http://www.kinlan.co.uk/2005/08/successes-of-my-first-ajax-application.html). The call manager will be a queue based priority system, it will work out the most important calls to make first. (It won't be complex).
- Ask Technorati to develop a light-weight MetaData interface.
My next application will have to use both of the above points.
Any Thoughts or guidance you can give me. Email me: firstname.lastname@example.org
|Technorati [feed], Blogosphere [feed], Blogs [feed], Blog [feed], Api [feed], Usage Statistics [feed], Ajax [feed], Bandwidth [feed], Developer Api [feed], Spider [feed], Idea [feed]|
Monday, August 15, 2005
Anyway Scoble asks:
What I find funny is no one has started any interesting rumors about what I'm doing there. Sigh. People start all sorts of interesting rumors about Technorati, what does it take to get some creative writing going on?
Well I reckon Robert is going to Google to see how they do things, only to have an NDA slapped on him so he can't let Microsoft know their plans!.
Or perhaps they want to show him some software that will create transcripts for channel 9 interviews?
erm... I can think of more.
And at the end he makes the following comment:
Blogging, though, gets us close -- because it increases the number of sites everyone wants to keep up on. What happens when everyone in your family has a Flickr site and a blog? How many people are in your family? At my wedding there were more than 50 family members and I don't think that's atypical. If you're trying to keep up to date on 50 people email and Web just doesn't cut it. Will you really want to visit your brother's site every few days just to see if he's posted a new picture of his kids?
What is he talking about? Is it a nod towards "the really cool thing that will change the face of blogging" that he can't talk about just yet. [Note: If anyone has the link to when he said it, I will post it. I need to make sure I am not talking guff].
If I were to read between the lines [by the way, I nearly always read in to the wrong thing]. I would say that he is implying that there is going to be more of a private social blogging tool. A system that allows everyone in the family to let everyone in the family know what is going on. Imagine a site that all your family logs into to let them know about social events, happenings and other family stuff. Each member blogs, each of the blogs are aggregated? Maybe the head of the family gets precedence over announcements? Maybe the kids in the family all see each others blogs without caring about the parents, auntie and uncles blog entries. Just one site to rule them all? To talk to anyone else you just write in your blog, referencing another family members blog and a conversation is started. Imagine the social network analysis that could be done with all this information!
Is this feasible? Has it been done before?
Any thoughts? Email me: email@example.com, or post a comment :)
|Scoble [feed], Family [feed], Blog [feed], Blogging [feed], Blogs [feed], Weblogs [feed], Network Analysis [feed], Social Network [feed]|
I have been investing a fair bit of time investigating the Yahoo! API's. I am really impressed so far. They offer so much to a developer than the Google one does.
The main areas that I have been working in are the Term Extraction API and the Related searches API. I have also been thinking a bit about the Contextual Search API too.
The Yahoo API is called via a simple RESTful HTTP call. REST is a way of interacting with a server via HTTP and getting a response (Normally an XML document) that can be processed by most systems. Wikipedia has a good article about REST here
The Term Extraction API is a really cool little API you basically supply a text string to it (say an article or blog post like this one) and a query that helps it to understand the topic you are talking about. The result is an XML document listing the top 50 most important Keywords in the text. It is really smart and very simple to use. I have also learnt today that the first 2000 characters of the input are given more significance that later text.
The Related Searches API is another cool little API, you supply a keyword and in response it gives you a series of queries that a user might type into a search engine to get results relating to that keyword. For example: I supply the word AJAX into the API and in return it gives me queries that I could use in Yahoo. So it might give me results such as "Ajax Football, Ajax Bleach, AJAX Development" etc.
In the application I have combined the two together. I submit a document (such as this blog post) via my web browser (currently IE7), it returns a list of important keywords. For each of the keywords I choose that are relevant to the blog it will then select some related searches.
Yahoo offer some other APIs, such as the contextual search. I hope to use this one to incorporate some relevant pages that are associated with what I am blogging about. With this API, you provide a context to a query, so say I was talking about the failures of my AJAX application, I would supply the blog post as a context to a normal query such as "AJAX Mistakes". Hopefully this would give me a very targeted set of results (rather than AJAX Team talks in Holland;)).
There are many other services that I am yet to think about. But you can combine them quite easily. The next version of my application must make better use of these API's. At one point I did combine the results of the TermExtraction with information about Tags (blog counts etc) at Technorati, but it was a bit too slow. The next version of the App will link in with some more API's. I am yet to really think which ones, but Yahoo and Technorati are defiantly high up the list.
Do you have any ideas of webservices I can link into? If so email me: firstname.lastname@example.org.
|Yahoo [feed], Ajax [feed], Api [feed], Technorati [feed], Blogging [feed], Webservices [feed], Search Api [feed], Google [feed], Ie7 [feed], Xml Document [feed], Blog [feed], Contextual Search [feed], Queries [feed], Keyword [feed]|
He confirmed that the sites I had listed do in fact work with Internet Explorer 7 Beta 1 and that potentially there is a bug in the RSS code that makes all the feeds not viewable. I confirmed that every single Feed I look at doesn't render correctly anymore. Anyway, after a little email he said that the RSS code (i think for the conversion of feeds in to the "pretty" form) has been looked at and has been completely re-written for Beta 2.
He also confirmed that he has seen some feeds that don't render correctly although in his experience it is intermittent. However, in my case it is permanent; none of the feeds render, but that might be a configuration issue.
Anyway, heres looking forward to Internet Explorer 7 Beta 2!. Thanks Sean!
|Internet Explorer 7 [feed], Ie7 [feed], Beta [feed], Rss [feed], Bug [feed], Feed [feed], Internet Explorer [feed]|
Sunday, August 14, 2005
|Parse [feed], Url [feed], Technorati [feed]|
I like the idea of them providing an API, but I just don't get what it is this API is supposed to provide. Is it supposed to be a list of feeds and related data belonging to a site? I was hoping that they would provide a content search.
However syaing that, you can quickly get do a search by substituting the query paramaters in their own search on their site, like the ones I used to provide.
Perhaps I would like to see searches through an API, but I would also like to see more meta data about searches, so for instance if I did a search for Kinlan on feedster through an API it would return information like the number of blogs "Kinlan" is mentioned in. The number of pages etc. You could instantly see the popularity of certain searches then (I could have a search that provides my page users with a count of all the people talking about me - Zero at the moment).
Also cute little API's that will enable users to see the top searches every hour. Just little things like that. I could see a lot of people integrating these features into their sites. I would.
I use the technorati api and the Yahoo API to help me categorize my blog entry. I used to have links to feedster searches (which I removed because they took me too damn long to create - the query string for searching is MASSIVE). If I could rate my searches with the number of results before I check the results and other Meta data of my search I would find that quite handy .
Publishing search results as an RSS Feed is cool though! :)
Also to use the API, I have to provide my private key, this means that I have to hide it, that means that I have to provide a proxy script on my server to get to the results data. I would like a way that I could get to the API without having to proxy all the requests from my site. Yahoo make you use an Application ID, that ID doesn't have to be secret it is just for reporting.
|Api [feed], Technorati [feed], Feedster [feed], Search [feed], Rss Feed [feed], Blogs [feed], Query String [feed], Blog Entry [feed], Private Key [feed]|
Here are some of the things that I have had to deal with:
- Getting the node text from an XML Document in Firefox requires you to do something along the lines of results.item(i).firstChild.nodeValue, where as in IE results.item(i).value worked. The Firefox method works in IE so therefore I judge that to be the correct way to access nodes in an XML Document
- xmlDocument.getElementsByTagName appears to be a facade for an XPATH query for .//[TagName]
- Setting an event handler on XmlHttpRequests' onreadystatechanged will not trigger for a synchronous request, whereas on IE it will
- The table object model in IE and Firefox aren't completely compatible, what works in IE will not work in Firefox, but the reverse appears to be true. An Example of this is: insertRow and insertCell do not require a parameter in IE, however Firefox must have an indexer to the row and cell to insert.
I will be making my applications support both browsers. Unfortunately I will miss out on the other browsers (Opera, Safari, Konquerer), but I think I will have to deal with this at a later time. However there is no harm in getting people with those browsers to come by my site and let me know what they think! :)
Therefore some requirements for the next app:
- Make it support the lowest common denominator for browser support.
- Think about designing an event driven object model.
|Browser Support [feed], Object Model [feed], Object Model [feed], Bandwidth Demands [feed], Asynchronous [feed], Ajax [feed], Cache [feed], Html [feed], Internet Explorer [feed], Firefox [feed], Xml Document [feed], Ie7 [feed], Ie6 [feed], Browsers [feed]|