Mozilla Dev Network Hackday – NYC – March 2012

So.. Mozilla had its first ever Hackday in New York City last Saturday and I had the opportunity of attending it. There were some really good talks which ended with some hacking post lunch. It was an awesome experience getting to meet all the wonderful folks who participated in the hackday and to see their great hacks, and the excellent job by the Mozilla team in running the show.

Some of the talks that were presented were (slides linked):

At the end of the day, I presented an extension that would calculate the Readability scores of text that was selected within the browser. This “Text Readability Scorer” Firefox extension was something that I already had in mind, but which was languishing and waiting to be completed using the latest Addons SDK. The hacking started post lunch and I managed to do complete something that could be presented at the end of the day. While this add-on didnt use any of the cool HTML5(and friends) stuff that was presented earlier that day, I still managed to get a working Extension for Firefox 11 and presented it in the end.

A more complete write-up of the event can be read at the hacks.mozilla.org site, with the extension I presented getting a mention under the “Here come the hacks” section.

Below are a few screenshots of the Readability extension in action, The source code can be found on GitHub.

Add-ons screen showing the Readability Extension
Add-ons screen showing the Readability Extension

 

Context-sensitive Right-Click menu showing the "Calculate Readability" menu option
Context-sensitive Right-Click menu showing the "Calculate Readability" menu option

 

Final result screen shown in a "Panel" with the Readability results.
Final result screen shown in a "Panel" with the Readability results.

There is still a lot of work that has to be done, such as calculating the number of syllables more accurately etc. Lets see where this goes, I might be submitting it to the Add-ons’ site once it has some more complete functionality. Thank you for reading! :)

Standards. Standards. Burp.

I have been implementing some Web Services on WebSphere DataPower and it is almost a breeze in most cases, with the majority of the development time spent in coding the XSLs for transformation and the rest configuring and setting up appropriate error handling mechanisms. Even the binary to XML, XML to binary transformations can be simplified using tools such as WebSphere Transformation Extender or Contivo’s Analyst. All of these just leave you in a state of disjoint harmony, you absolutely like the fact that life’s made easy for you, while at the same time cringe on knowing that if you had done it by yourself, you would have learnt two(or a million) more new things today! We shall take that up for some other day, coming to standards now.

Standards and Web Browsers will definitely be remembered for a long long time to come. I was just reading this entry on Joel Spolsky’s blog on how the developers of IE8 are mulling over strict standards settings or to allow for default IE7 style behaviour which is not that strict when it comes to standards.

If you are a web developer, you must admit that we are all sick of trying to write code to make sites look as close as possible to being similar on all browsers. And with IE being IE(barring the recent move towards ‘standards’ mode), a lot of different hacks needed to be put in place just to get the same look and feel. Let alone JavaScript hacks. Now, with pages numbering in billions all over the Internet, when people go strict all of a sudden when it comes to standards, it really will get a good beating! Sites working previously might not even display! Whew! And as Joel rightly puts it in his post, developers are also to blame for coding code without giving any forethought if their code would actually be standards compliant or not(including me). I have done a lot of CSS and JavaScript coding over the past few months, but each time, barring for a few tests, I really do not do much to see if the code is really standards compliant. Partly since the applications that I built were not for public use and the target audience was well covered in terms of configuration since all of the apps were internal and mostly because I am sick of it. I have had enough searching Google for each and every hack to make a part of the page work as intended in IE, Firefox and Opera.

The list of hacks can become endless, but if you really want to have the cake and eat it too, well.. Never mind. We can probably wait for the next version of HTML, and probably start coding, ‘strictly’ adhering to standards, with the version tag telling all about it, just as all the others put forth, but ultimately, the major responsibility lies with the developer who is coding the pages in the first place, like you me and yeah all of us.

Into the new year

I have started into the new year with a lot of non-resolutions, which I set almost every year and even then, do not adhere to them. One thing is procrastination, which I am beginning to overcome finally.. :-D Atleast, thats what I think I am doing. My biggest pain is starting off something, the initial step that takes a long time, but once I have started, I stay put till the finish and complete everything that needs to be done.

Over the past few months, I have worked on a lot of technologies and scenarios, which included XSL, BroadVision JSPs, Portals, and also created a lot of schemas for some Web Services that we are creating on DataPower, yup, like what I mentioned in my previous post, I am certified in DataPower(heck, I need some more time to actually answer real world questions!) and have already started on my first DataPower Implementation and I am beginning to recollect all the things that I learnt over two months ago.

There was more than a month’s gap during the time when I took the certification and when I actually began to look at the current application from a DataPower perspective that I need some more time before I can be comfortable in knowing what I have to do without reaching out for the manual!

Happy times and a lot more things to do, I have to tell myself, do things today that I can do today, and that is exactly what I am trying to do!!

And by the way, if you aren’t already aware, Sun acquires MySQL!

So, What have I been upto?

I have been a little too occupied these days with exams and a little work that was lagging behind schedule! Have some last minute official commitments to complete before the start of the new year.

I also came across Coding Horror by Jeff Atwood, which has quite some interesting posts on programming in general and a lot of posts on usability.

Its a good read, consider dropping by there while I figure out how to manage my time efficiently!

IBM WebSphere DataPower Certified!

And just when you began to think that I was letting my blog die without being fed with its much needed ‘posts’, I am back with an update!

After two weeks of training and POC’s I finally cleared the IBM Certified Solution Developer exam(Test-284) for WebSphere DataPower SOA Appliances exam yesterday with a good score and held upto my manager’s hopes! The DataPower Certification exam was said to be quite tough and needed a lot of attention to clear it successfully!! The going was a tough one as there are a lot of questions in the exam with plenty of Use Cases and scenarios which weren’t completely covered in the classes, but most, which if you analysed the question correctly would narrow you down to two choices or less! All of this made me take up almost the entire duration of the exam, a little over two hours. I have found that I finished two other exams I took (Teradata Certified Professional and an IBM Certified Database Associate) with more than half an hour to spare. But ultimately, alls well that ends well!

A big kudos to the organisers, staff and mentors from IBM! (Tapan, Sateesh, Vanishree, Yaseen, Manu and all others!)

I also got to know that our batch were among the first people(after Yaseen) to take up this exam in the Asia Pacific Region! Cool! Makes it even more special! And with almost everyone clearing the exam, it was happy moments indeed!

I am now officially certified for WebSphere DataPower!! Yaay!!

Whatever can go wrong, will go wrong

Most of you must know about Murphy’s Law, which states that if something will go wrong, it will go wrong no matter what!! The same thing happened to me, We had developed something which was part of a series of items that were to be deployed. Everything was working to a T…

But when the D-Day arrived and when we had an ‘important’ audience.. the first item that we had developed just refused to work and do its function!! Rats!! I am still trying to figure out what went wrong! Most probably it isn’t something big and will resolve by itself tomorrow, or a small trace will identify the problem!!

But in the end, Murphy seems to always have his day!!