Please subscribe to RSS Feed! :)

I was reading a PCPro magazine recently and one of the editors wrote down his ‘programming language timeline’.
What is that you ask? A timeline in chronological order of the programming languages you have learned.
I found myself thinking about this last night and realised I have a strange one (okay so HTML and CSS are markup languages!):
HTML > CSS > Javascript > GML > Python > Vala/Genie
What is your programming language timeline? I would be interested to see if we have even more diverse ones!

aww factor, but slideshow? come on guys, html5 things a bit here – or jquery, or several million other ways (

There are two types of technical books. Reference manuals are useful; you always have them to hand, and you can jump in and find a particular page which gives you the stuff you need to know. They're an indispensable reference tool, unless, say, you have access to the internet. Then, well, maybe they're not as handy. On the other hand, there's the other sort of technical book; the sort that's a pleasure to read in itself, and you only realised you've learned things afterwards. Such a book is Introducing HTML 5, by Bruce Lawson and Remy Sharp. As they say at the beginning of the introduction: welcome to the Remy and Bruce show. The book manages to be both a thorough introduction to the swathe of modern and new web technologies masquerading under the name of "HTML5", and a personal voice which comments on the state of web development today and in the near future. The tl;dr summary for people who don't want to read the rest: good web book is good. Get it.
The book successfully and intelligently covers the new markup in HTML5 (nav/header/section/article, new input types in forms, and WAI-ARIA accessibility) as well as the vast proliferation of new APIs available to modern web applications (canvas, multimedia, offline storage, workers, and geolocation, among others), drawing on the authors' experience of user questions and articles at their html5doctor site. Fortunately, it's not a hagiography, and they don't hesitate to stick the boot in where it's warranted; the current mess that is native drag-and-drop support in browsers and the ridiculous codec war inherent in online video both come in line for a justified kicking. Each chapter covers its material in decent detail, without devolving into a mere list of APIs; the book is full of both worked examples and links to relevant extra resources. Unusually for a book of this type, the examples are fairly real-world; instead of a contrived writeup to show off a feature, they show how to mark up the home page of the Guardian newspaper with HTML5 elements.
Conspicuously missing from the book are the major changes to CSS currently being implemented in browsers. A chapter covering the transform and similar CSS3 declarations (-webkit-transform, -moz-transform, and the like) would have fit nicely, and it's a shame that this wasn't covered -- yes, it's a book about HTML5, not CSS3, but the authors themselves admit that by "HTML5" they actually mean "HTML5 and related specifications that came from the WHATWG", and they throw in geolocation just because "it's really cool". Advances in CSS which give dynamic effects not only would fit well with the other subject matter but would also make a few of the examples perhaps easier.
The canvas chapter doesn't bring much more than innumerable web pages covering the basics of the canvas API for drawing, but it covers those basics well and in a readable way. Importantly, there's also a discussion of the difference between using the canvas element for drawing and using SVG, and when you'd choose one rather than the other. It's been difficult to find that sort of summary; it's equally difficult to decide yourself which to use for some new project, and the chapter's sidebar (or <aside>?) discussion of "when to use which" clarified the distinction well, especially when going beyond reimplementations of Super Mario Bros inside the browser.
All is not sweetness and light, mind. The data storage chapter, explaining how to use HTML5's new in-the-browser storage objects, breathlessly explains that this means an end to cookies (which are "rubbish" according to the authors). However, this is where their client-side bias seems to be coming through. Cookies are shared with the server, too; snazzy HTML5 storage is not. Any even reasonably detailed web application will have a substantial server component, and abandoning cookies will make it jolly hard to have the server and the front-end share data. This does seem rather like excitement over the new tech without thinking about how it can actually be used in real-world situations, and is disappointing from a book which goes out of its way to give suggestions that are actually useful to people.
Another area the book falls down is in its editing: there are typos scattered throughout the text (including in a heading in the introduction, for goodness' sake!) and these should have been caught by an editor; noticing them distracts the reader from the material, and it's a schoolboy error which damages the impact of the book.
I know both the authors, and they're both well-known and respected in the web development community; Introducing HTML5 does them credit, and it's worth your time. Go forth, get Introducing HTML5, and make great web stuff.

Are we looking at the next wave of the Web, the new way forward, leading to exciting levels of interactivity heretofore unimaginable, or at least, only able to be semi kludged together? Are we entering a bright new future? Or are we about to clog up bandwidth with Hamster Dance on a whole new scale? Will Rick Astley type memes become even more annoyingly interactive?
The answer is probably yes. Much of the above. A lot more besides – these things always promise much, but the law of unintended consequences does lead to some interesting offshoots – not always good. Especially if it involves hamsters. However, from a coding perspective, I absolutely and enthusiastically embrace it. HTML 5, CSS3 – AJAX by any other name would still smell as sweet. From a consumer perspective, it offers me many interesting options – and some rather disturbing possibilities, questions about location based services and privacy, for one starting point.
“Progressive enhancement. Disconnected offline applications. There is a tension brewing in how we deliver applications on the Web. This isn’t a new tension. It has been around ever since we started to do more than just throw HTML down the pipe for the hypertext document runtime to render.” via Ajaxian » The march to a more client-centric Web; Will the mobile Web, HTML5, and Chrome Web Apps be the tipping point?.
“We’re at the brink of shifts in the way we do things. The monks who have been toiling away on these new pieces of machinery are coming out of the monolith and starting to spread the word to the people.” via The State of HTML5 Apps.

Hi guys,
I have talked briefly about a new project I wanted to undertake and so here it is!
Wasiliana is a new email client that specifically targets small-form-factor devices such as netbooks. It combines the flexibility and beauty of HTML5, CSS3 and Javascript, with the speed and extensibility of Genie/Vala.
Not only will the design be beautiful, but it shall be practical, especially on small devices.
I am still in exams and so haven’t started coding yet but I have made some mockups and there is a video of a prototype I made.
Launchpad Page
https://launchpad.net/wasiliana
Mockups (5)
http://and471.deviantart.com/gallery/#Wasiliana
Video of Prototype
I was inspired to make this as I have yet to see any mail client that really delivers on a netbook.
Programs such as Anjal have gone in the right direction, but in has the hindrance of being based on bloated Evolution and trying to still use GTK widgets. I also believe current mail clients have it all wrong when it comes to design regarding contacts etc. and so I wanted an opportunity to fix this.
My mockups were obviously inspired by the great danRabbit and they use the elementary icons. I am not ready to begin coding but if anyone is interested/wants to find out more, please don’t hesitate to contact me via the comments below.
Any comments?

When HTML5 was published, there was an internal struggle going on between parties whom endorsed video format for HTML5. Commercial companies such as Google proposed H.264 codec to serve HTML5. The problem with H.264 was that particular format was patent encumbered. This means that the format itself were not applicable for free in some countries. That’s why, Mozilla Foundation completely rejected the idea of using H.264 and embracing Ogg Vorbis format instead. Both sides with good reason and ideology ended up stalled.
Fortunately, Google was recently buy On2, a company that holds a new codec: VP8. From [FSF], a plea of releasing VP8 was made. Yesterday [ARS] revealed the new format was becoming free. Google also had provide a support site [WEBM] contains VP8 integration (library). The codec called WebM.
The site is new, the code only on GIT, and the list of plugins coming soon. Albeit, few months from now, days for those bleeding edge SVN/GIT/[name your favorite free software tools SCM] enthusiasts. You know how fast FOSS absorb technologies. I suppose, it would be on Meerkat.
What is the implication of this?
With the new open standard for video, we can see a peace once more on HTML5. This means, HTML5 most disputable issue has been resolved. So, expect an overwhelming HTML5 adoption on the coming months. Meaning: study HTML5 now!
All in all, here’s a cheer for Free/Open Source Movement and Open Standard movement!
Reference:
[FSF] http://www.fsf.org/blogs/community/google-free-on2-vp8-for-youtube
[ARS] http://arstechnica.com/web/news/2010/05/google-opens-vp8-codec-aims-to-n...
[WEBM] http://www.webmproject.org/

Seriously, I can’t be the only person who does this?
Incoming flash blob (or HTML5 video if you have a decent browser)
Combining this with my compulsion to watch -n 0.1 cat /proc/mdstat, I clearly need help. Is there a support group for people like me?

This:
Should be this:

Disclaimer: If you are reading this via PlanetPlanet or a non-javascript aggregator, please visit the real page to read more
You know, we are living in a world of SOA. And even if we don’t like the new world order of the web, sometimes it can make our lifes easier.
We think that, right?
Right now I’m working on the re-implementation on my DjangoFAIed project. Which means, I’m in need of a separation between shiny new bling bling named web frontend and boring looking jsonrpc or xmlrpc for the web backend.
As you know, I’m working with Django for the daily system development, so here I’m in love with Django and RPC4Django.
The good thing about RPC4Django is that it gives me an easy way to provide two RPC types but only writing one backend.
So, having this in place, and doing some xmlrpc calls from the FAI side of life, I just need to find a way to deal with the web frontend.
So, here we are, my high rated topic: XMLHttpRequests, Javascript and Browsers, and what are they supporting.
There are at least 4 browsers I would care about:
No. 1 is my choice when developing some bling bling, No. 2 comes to my mind if I want to have a fast Javascript Execution time, No. 3 and No. 4, oh well, I use FF and Chrome even on windows, and I never had to do anything with Apple ;)
Now, let’s setup a testbed for the application. Let’s assume:
Now, I hope you have a django installation (I’m already using 1.2 beta) and installed RPC4Django. Create a new django application and add to the __init__.py file these methods:
|
1
2 3 4 5 6 |
# Create your views here.
from rpc4django import rpcmethod @rpcmethod(name="hello_world",signature=['string']) |
This is how we define a new xmlrpc/jsonrpc call which just returns “Hello World”.
Now add to your djangoproject urls.py this endpoint for our RPC calls:
(r'^RPC2/$', 'rpc4django.views.serve_rpc_request')
and add your new application and the rpc4django application to your settings.INSTALLED_APPS.
Setup your apache installation to serve your application, don’t forget your wsgi_handler.py.
Now, if we start a browser and enter “http://testrpc/RPC2/” into the location bar, you will get something like this:

(Picture taken from: David Fischer RPC4Django)
To test if our application is working just create this little xmlrpc client app:
|
1
2 3 4 5 6 |
#!/usr/bin/python
import xmlrpclib if __name__=="__main__": |
It should print out “Hello World”.
As said before, we are using jQuery as DOM library to make our lifes easier, regarding Events and Ajax things.
Let’s see how this goes:
|
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
<html><head><title>testhtml</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script> <script src="json2.js"></script> <script>// < 
This:
Should be this: