Monday, February 14, 2011

Closing the DevProducts on Blogger project

DevProducts staff will no longer be maintaining this blog. We will however leave this blog up as long as blogger lets us, as part of the DevProducts history.

We are thankful for the memories and are grateful to those who were part of the DevProducts on Blogger project especially to Ronald "RV" David who was the main driver behind the force that is now DevProducts Pty Ltd.

We parted in great terms and we wish him all the best, he is someone who believed in never burning bridges and is happy that the client base that he brought with him to start DevProducts up are in good hands.

Thank you, good bye and good luck.

Thursday, November 12, 2009

Currently in Hiatus :)

Well, it's just like a busy schedule to get in the way of fun stuff. I guess we can't really complain - since this means that we're at least doing something right.

We've got some exciting projects and we're working full tilt (maybe even more so).

We'll be back when we get things under control. In the mean time, check out the existing "The Developers" series to catch up if you haven't already :)

Thursday, August 27, 2009

The New Guy

Hi,

I would just like to take the opportunity to quickly introduce myself as the new Dev Products team member, my name is Phil and I have very recently come on board to aid with product development and a few other areas, but that I will allude to in a later post so please stay tuned!

The team have been of huge support in making me feel welcome. Starting somewhere new can be a daunting experience no matter how many times you've done it before but the team at DevProducts have really done a great job in making me feel welcome.

With more than a few years of relevant industry experience to bring on board and the exciting developments taking place quite soon at DevProducts, I honestly can't wait to start sharing some new and exciting things we have coming up in the following weeks.

Kind regards,
Phil

Friday, August 21, 2009

The Developers - Episode 14: Viral Sensations

Friday, August 14, 2009

The Developers - Episode 13: Nosmo King

Thursday, July 30, 2009

The Developers - Episode 12: PC Supremists

click on the thumbnail to view
The Developers - Episode 12: PC Supremists

PC or Mac - we have an opinion on that!

Thursday, July 23, 2009

The Developers - Episode 11: Running Late


click on the thumbnail to view
The Developers - Episode 11: Running Late

We've all been late - and sometimes you gotta take one for the team!

Thursday, July 16, 2009

The Developers - Episode 10: Discretion is Advised


click on the thumbnail to view
The Developers - Episode 10: Discretion is Advised

What is said in the office, stays in the office.


Friday, July 10, 2009

The Developers - Episode 9: Shage 2.0



click on the thumbnail to view
The Developers - Episode 9: SHA-GE 2.0

SHA-GE!!! Nuff said.

Thursday, July 9, 2009

Persistent Column Widths in Dojo (dojox) DataGrids

Hi everyone, my name is RV David and it's my first time posting on the "DevProducts on Blogger" blog. Hopefully the following will help some of the developers who are scouring the dojo forums/the internet for a solution to achieving persistent column or field widths in the Dojox DataGrid component of the Dojo toolkit.

The DojoX DataGrid Component
The Dojox DataGrid component is simply amazing! It provides a neat and relatively painless way to produce datagrids and is brilliant in the way it handles pagination. It does, however, come with it's limitations.

The RIA
We have recently developed a RIA (Rich Internet Application) for one of our clients which makes full use of the DataGrid component. At any time, we would have a variable number of datagrids displayed on a page in separate Tab Containers for presentation.

We have configured the datagrids so that field widths are adjustable by users. However, once the user either refereshes the page, or navigates to another page, the datagrid is displayed with the default column widths and the users will again have to adjust the field widths to their preference.

Remember DataGrid Column/Field Widths
A request was made for the functionality to "remember" the width of the datagrid columns even after a user navigates to a different part of the application.

The main issue we had is that we could not find a way to (easily) detect that the field width is being resized - there were no onresize event hooks for columns or cells - please correct me if I'm wrong.

The Solution/Workaround
After some reasearch and development, we have come up with the following solution (more like a workaround really) to store field or column widths:

Step 1: Store the Column widths in Cookies
We create a function to traverse through all datagrids and use a naming convention to store field widths in cookies.

function rememberWidths() {
var grids = dijit.registry.byClass('dojox.grid.DataGrid');
grids.forEach(function(grid) {
for (var k in grid.layout.cells) {
var index = grid.layout.cells[k].index;
var field = grid.layout.cells[k].field;
if (field != null && field != "") {
var cookieName = grid.id + field;
dojo.cookie(cookieName, grid.layout.cells[k].unitWidth, {expires:3600});
}
}
});
}

Step 2: Call the function on window.unload.
Add the function to the window object's "onUnload" event so that when the user leaves the page, all field widths are stored in cookies.

dojo.addOnUnload(window, 'rememberWidths');

Alternatively, we could have achieved the same result in one step:

dojo.addOnUnload(window, function() {
var grids = dijit.registry.byClass('dojox.grid.DataGrid');
grids.forEach(function(grid) {
for (var k in grid.layout.cells) {
var index = grid.layout.cells[k].index;
var field = grid.layout.cells[k].field;
if (field != null && field != "") {
var cookieName = grid.id + field;
dojo.cookie(cookieName, grid.layout.cells[k].unitWidth, {expires:3600});
//console.log(cookieName);
}
}
});

Step 3: At this stage, we should now have the widths stored as cookies and can be referenced by the concatenation of the grid id and the field name. For example, we have a "users" datagrid so to retrieve the column width of the id field in the "users" datagrid, we'd call it by using dojo.cookie('usersid');

That's pretty much the concept, although, I must stress that this is a workaround. I kind of feel strange about hooking into the window's onunload event, but hey, this is how we got around it. If you have better solutions, please, share it with us and leave a comment.

Thursday, July 2, 2009

The Developers Epsisode 8 : Tribute


click on the thumbnail to view
The Developers - Episode 8: Tribute

DevProducts homage to the King of Pop. Rest In Peace M.J!

Friday, June 26, 2009

Operation Aborted on IE8

We've had a report from of one of our community members, who was intending to post a comment on one of our posts, that he is getting an "Operation Aborted" error on IE8!

We were able to reproduce this and the issue and after some research, tracked it down to the "Comment form".

We had previously selected for the comment form to appear underneath the post (as with most regular blogging systems) - after changing it to "full page" so that people will now have to click on a link and then add their comment.

This is a temporary measure and we will reimplement the embedded comment form once Blogger has this issue resolved.

Our team has actually come across a similar issue to this and it came down to the modification of the DOM prior to the page being loaded. Perhaps this is the same issue? Only time will tell.

We apologise to the users who have been inconvenienced by this issue and encourage blogger devs to please fix this issue as fast as they can.

In the mean time, you can post your comments by clicking on the "post a comment" link below the post in place of the previously embedded comment form.

Thursday, June 25, 2009

The Developers Episode 7: Monopoly

click on the thumbnail to view
The Developers - Episode 7: Monopoly

Web Development isn't all about politics - sometimes it's about the games people play!

Project Bolina Commences - a new and exciting project by DevProducts

After several meetings and planning sessions, project Bolina is _finally_ under way! As with all of our projects, our web development team is very excited about this and at the same time are very secretive about the project specifics!

While we are not disclosing the specifics, we can tell you about what components and web applications we will be implementing and/or developing from scratch to make this project happen.

At the time of this writing, we have project Bolina penned in to have the following services, components and features developed:

Services:
  • Web hosting and email
  • Technical Support
Design Features/Services:
  • Unique Custom Web Design
  • Joomla Template Production
Web Development:
  • Content Management System (Joomla!)
  • Joomla! Native Components and Plugins

Thursday, June 18, 2009

The Developers Epsiode 6: Business as usual


click on the thumbnail to view
The Developers - Episode 6: Business as Usual

Sometimes inspiration is hard to find...

Friday, June 12, 2009

The Developers - Episode 5: Death Bed



click on the thumbnail to view
The Developers - Episode 5: Death Bed

We've been told to say that this episode is purely fictional. It's totally made up
and is the one episode that is NOT based on actual events / phone conversations
(is that OK RV? ;) )

Saturday, June 6, 2009

Sitemap XML for Blogger Issues

Since the order was given to drive the "DevProducts on Blogger" project, we've added devproducts.blogspot.com to our list of sites to manage in Google's webmaster tools.

So we added devproducts.blogspot.com and added a sitemap http://devproducts.blogspot.com/atom.xml which is also our atom feed syndication address.

The Problem
This was fine for a while, but since signing up to feedburner and redirecting all feed traffic to use the feedburner address which is http://feeds2.feedburner.com/devproducts, Google was presenting us with some warnings:
Line: 2 Invalid XML: too many tags - Too many tags describing this tag.
Line: 2 Incorrect namespace - Your Sitemap or Sitemap index file doesn't properly declare the namespace.
This is due to Google's sitemap processor being redirected to the feedburner address rather than the actual atom XML document.

The Solution
A quick Google search presented us with the solution on labnol.org's Digital Inspiration blog.

To fix this issue we had to do the following steps:
Step 1: Delete the existing Sitemap - which is in our case http://devproducts.blogspot.com/atom.xml
Step 2: Add a new sitemap post-fixed with ?redirect=false - so again, in our case it was http://devproducts.blogspot.com/atom.xml?redirect=false
Looking to add a sitemap for your blogger blog to Google Webmaster Tools?
Of course if you were looking for a solution to add your a sitemap to webmaster tools for your blogger blog, then you just add: http://[your blog name].blogspot.com/atom.xml?redirect=false

Thanks Amit ;)
A big thank you to Amit from Digital Inspiration for posting this info in 2007. Say hello to little "google" for us :)

Friday, June 5, 2009

Client Aid: Microsoft Outlook displays PDF as garbled text

Well, this little not-so-reproducable pickle was tricky to figure out! One of our Web Design clients, for whom we had created a newsletter broadcast application, reported that when they send themselves a preview, clicking on the http links to PDF files were replacing the entire email message with "garbled text".

During the brief conference call, our team were noting things such as:
  • "corrupt pdf" (could be)
  • "problems with the way the PDF was being uploaded" (possibly)
  • that "somehow the header was being stripped during upload
    (far fetched).
  • "gzip compression" (nope, couldn't be it)
  • caching? (nope, not that either)
After the meeting was over, first thing we did was try it for ourselves.

First up was to send ourselves a preview email and retrieve the email using the Mozilla Thunderbird E-Mail Client.

It worked for us! Clicking on the PDF link in Thunderbird showed no problems. We called the client and asked them to do the same - the behaviour was confirmed. It was working on the Mozilla Thunderbird E-Mail Client, but not the client's primary e-mail client which was Microsoft Outlook 2003.

We did some further analysis and concluded that MS Outlook 2003 was actually trying to load the pdf http link sent in a HTML e-mail as a regular HTML page. This explains why clicking on the http links to PDF files displays "garbled text".

Although not so W3C compliant, the only solution to this was to add a "target" attribute to the pdf link to force it to open in a new window.

At the end, our client was happily chuckling "why didn't we think of that" when we told them what the problem actually was and how to fix it. A simple solution to a very strange problem, but most of the work we had done was to actually pin-point where and how this behaviour was occuring.

This solution of course came free of charge - we know how to look after our clients and will do favours such as these, whenever possible, as required.

Thursday, June 4, 2009

The Developers - Episode 4: Stress Relief



click on the thumbnail to view
The Developers - Episode 4: Stress Relief

Stressed out...? Here's one way to wind down.

Wednesday, June 3, 2009

DevProducts gets Social with it!

As you may have gathered from our previous posts about Twitter and MyBlogLog, we are jumping onto the blog and social networking scenes! This is all part of our bid to make ourselves more accessible to the ever expanding internet community.

Since the "DevProducts on Blogger"project started, we have signed up and become part of the bustling blogging community at Yahoo!'s MyBlogLog and Blog Catalog.

We also joined popular social networking sites such as Twitter and now Facebook! Something that we are looking to develop further once we get all of our internal projects finalised.

So consider yourself invited to connect with us!
You can find and contact us in any of the following channels where you can stay updated with the latest and greatest posts on the "DevProducts on Blogger" project, interact with us through twitter and facebook and/or be part of our blog communities at MyBlog and Blog Catalog:
We look forward to seeing you there!