Quame's Rampant Rants (QRR)

Icon

QRR

Zoho adds to Software as a Service (SaaS)

The buzz is on and every major software company is keeping a tight watch on the direction of the market as Google and the open-source community continue to push software as service for free or less. Its amazing how many office suites Google offers on the web as  freemuim package. In fact, there is one company that is not so well known as Google or MS but has one of the most complete and robust suite of office software as service. This would be Zoho . Their products range from word pressing app to CRM for customer relation management. Not only do their product exist on the web but also have offline enabled.  Below is an image of their offerings (Just to let you know, this is not an Ad, I don’t work for or get paid by AdventNet) .

 

 

 

 

If you have a business and are looking for office software as service, its worth taking a look at these.

Filed under: Software

Google Gears

Google  gearslogo_153x43    which has been greatly talk about since its release by the web giant Google has spurred a lot of talk about how web application will be in the current and near future. Gears offers to provide features that are currently needed to speed up “heavy” (memory and data) intensive web application as well as provide off-line abilities.  Gear provides the following accents for web applications :

Local Database

This is used to stored user application data locally on the users computer, providing if not exactly, close off-line db store to OS desktop applications. Gears uses the open-source db SQLite for this functionality and supports normal SQL query.

 

Local Server

The local Serve allows you to cache application information on the client and and serve them locally instead of going back to the server. It can also to automatic updates for URL resource behind the scene.

  

Applications manage the cache using two classes:

  • ResourceStore – for capturing ad-hoc URLs using JavaScript. The ResourceStore allows an application to capture user data files that need to be addressed with a URL, such as a PDF file or an image.
  • ManagedResourceStore – for capturing a related set of URLs that are declared in a manifest file, and are updated automatically. The ManagedResourceStore allows the set of resources needed to run a web application to be captured.

For both types of stores, the set of URLs captured is explicitly controlled by the web application.

Serving and updating cached resources

The LocalServer intercepts HTTP/HTTPS requests and serves them from the cache when all of these conditions are met:

  • The URL is cached in a ResourceStore or ManagedResourceStore,
  • The store’s enabled attribute is set to true, and
  • If the store has a requiredCookie attribute, the request must have a cookie that matches. For further details read Cookies and the LocalServer.

The LocalServer always serves a cached resource when the conditions are met, regardless of the network connection. The URLs contained in a store are eligible for local serving without requiring the application to open the store.

To disable local serving of stored resources and force URLs to be served using the regular network connection, the application can set the store’s enabled attribute to false.

 

WorkerPool

This allows you application to spin off asynchronies processes (with JavaScript) without halting the browser or slowing its responsiveness.

 

These are all great features that web developer have  been wanting for many year now.  A co-worker asked “This is all great news but why do we need another 3rd party engine in our browser to make this happen. We already have flash and the upcoming Silverlight from MS “. Well, flash and Silverlight offer’s similar features like local data store but they also add the extra hefty runtime engine to make it all happen instead of improving the existing and most widely used tools (HTML , CSS, JavaScript etc) .

That’s not to say that Flash, Silverlight and others are about to be left in the dust. If the is one thing they “still” have over Goggle gears, it’s the fact that the UI presentation is the same in any browser. That take away the hustle of testing web application in multiple browsers due to different implementation of the W3C standards. This might change as  like IE (with IE 8 coming up) are becoming more compliant then ever.

There is a lot of speculation as to what will happen to Gears or flash /Silverlight etc, but for now, a better solution for developing off-line web application (using our long existing knowledge of JavaScript, CSS, HTML ) have arrived and should be well noted. Gears is not for every application but if the features fits what you are looking for in your app, take a good look at it.

Filed under: Development Tools, Extensions & Plug-Ins, Javascript, Platforms, RIA, Scripting, Servers

BMW pushes the envelope again

Innovation is key in this business world of ours and one company always seems to “wow” me again and again. BMW, known for not just their elegant designs but break-through engineering just showed of what they call the GINA project. The pseudo-living car. The car has the dynamics to change its shape and form. GINA, which stands for Geometry and Functions in ‘N’ Adaptations is skilled with a textile fabric wrapped around a carbon fiber and metal frame. Just like living beings, due the skeleton framework of the car, it’s able to conform to the Nth shape. Check out this video.

Filed under: invention , ,

IT’S OFFICIAL

This past few weeks and months have been very busy as my fiancee, Jennie and I have been working hard on planning our wedding since we came back from Hawaii in January. Well, its a been very busy since January and I haven’t been able to blog more than I will have liked to. This past June 1st was our special day and it was great. Everything leading up to it was a challenge I must say.

It started of with the “Let have our wedding this June” banner after Hawaii and we only had 4 months to plan so you can just imagine how busy we were.Tasks included choosing the location, finding vendors, bargaining for the best prices ( you better be good at this if you want the best for less, hahaha). Developed our wedding site and more but it was all worth it.

Everything worked out just great and the date didn’t slide. Not only did we have our wedding this past June 1st, but it was also a family union and reunion between the two cultures and families. I had my parents, siblings, cousins and friends fly in for it. I must say, I’m blessed because the wedding was on Sunday (due to space vacancy) and we worried that most people will not be able to make it. But despite all the worries, they did. I will like to say a big Thank you to my family and friends for the great support. I also got to see some of my nephews and nieces for the first time. That was exciting.

Unfortunately, I had a go-live for our biggest major project at work so I had to be back at work after the wedding. I’m still decompressing and looking forward to getting back into the development and blogging game.

Filed under: Personal

Data Visualization Controls on the Web

The web is accessible to more audience than any other medium in our current time. That makes the web a good medium to push different kinds of information. We have succeeded so far in many aspect of using the web as a communication tool using textual communication (web content), image communication  etc. The one aspect of the web we have fail and still continue to fail is data visualization. The ability to show data in pie graphs, bar graphs etc. If you are in the same situation as I am, you find yourself in an abyss in which all solution have major disadvantages. Lets take a look at some of these solutions:

 

Adobe Flash/Flex
Using Adobe flash for charting on the web ensures that the chart looks the same on all machine. The developer doesn’t have to worry about how the different browsers will translate fonts and all that jazz. The visual aspect is preserved but to the disadvantage of the user. They  have to have the flash runtime installed on their machine. Flash is currently present on about 90% of machines so this might be a decision we can live with (unless majority of your customer base fall in the remaining 10%, then you have to look for another alternative). adobes flex charting controls  is a great examples of great flash/flex charting controls. 

 

Microsoft Silverlight

You fate is the same as in flash except that you are even worse of now because Silverlight is new and isn’t present on majority of machines out there. MS is trying hard to spread the Silverlight runtime but who know when it will be available on majority of the machines out there. Examples of some charting libraries based on Silverlight are Freesilverlightchart and

Visifire

 

Ajax Component / DHTML

Your reach in this department is very high since this relies on the  JavaScript/DOM  engine baked in the browser.  But even with JavaScript and the DOM , we have issues.

1. Some people have JavaScript turned off in their browser obliterating any Ajax charting controls in your web site.

2. With all the effort placed on standardization, most of the dominating browsers do not process pages the same way. Monzilla Firfox users blame MS IE for not complying with standards and visa-versa. Thus, you have to test your Ajax control/component in most, if not all browsers out there to make sure its “works”.

3. Even if you have it working just right in all browsers, an update on a browser as to how its engines work could affect your control.

 

Canvas from HTML 5

The HTML canvas is becoming more and more popular for drawing charts but still in its infancy. Its not supported by IE even though there is a workaround to make it work in IE. It also doesn’t have the robustness to support the many different charting needs such as events on chart elements and chart element composition.  That said, if you are building serious charting controls, this is definitely not for you.

 

All in all, there is not one solution that solved all the problems. They each have their disadvantages as well as advantages. Your choice purely depends on your target audience, their browser medium and what your business is willing to live with.

Filed under: Adobe Flex, Ajax, Flash, MS Silverlight, RIA

FolderShare comes to Mac’s

Windows Live FolderShareThe MS Live team just push a new release of FolderShare but not only for windows but for Mac’s as well. A very good direction on MS part. I find a lot of Mac users screaming about how MS doesn’t support the Mac platform but really, if you look at it, Mac doesn’t support Windows platform unless it $$$$ for the iBoss (Steve). If you don’t know what FolderShare is, I encourage you to take a look it at. It allows you to share folders and its contents across multiple machines. It also allows for remoting into your disparate machines to access content. No need to email yourself documents anymore. Now, the Mac users can take part in sharing their folders!!!!!!!!

Filed under: Software

Functions first, then User experience

I use Flash off and on depending on my needs and today, was one of those days. Today, I caught a UX mishap in Flash which should have been caught. How?   So here I am, after importing images into flash, I started laying  my application on the stage. Then oops, I made a mistake placing the the wrong image in a specific frames so I clicked on the image, swap and then pop’s up my swap dialog box. Great!, then the “OOH NO”. I cannot expand my swamp window.I have about 20 images with the same first 15 characters or so. How can this happen, I have to manually check each image to find out which one I’m looking to swap. It was a pain. How could they have missed something like this a colleague asked? It seems that features came first before UX. A common mistake in our industry unfortunately.

Filed under: Design, Flash, UX , , ,

What does the R in Relation Database stand for?

A couple of days I was working on pushing some business forms out for users to enter some business data into our db. I have been at my current company for about 4 months and due to our busy season and my minimum understanding of business rules and already existing libraries used, i hadn’t had the time to get an end to end processing of data from the client-end down to the db. Well, I finally got down to the DAL using our custom DAL libraries and boom, i realized that the DAL allowed me to enter a child row in one of the tables without a parent entered as yet. I was shocked. How is that suppose to happen so I folded my sleeves and put on my SQL hat. A nanosecond into looking at the db, i realized that there were no constraint or relations on the tables. They were just free standing table. I panicked, called for a meeting with my team to find out why. This was the answer
“The database is an object persistence storage and not a relation database”.
It took me a while to understand the direction they were coming from which probably exist in the J2EE world where most of the business logic and rules are lifted to the Business and Data Layer. I still get shivers when i think of it. That brought me to the bigger question,
“What does the R in Relation Database stand for?”.
For people like me who build application from database upwards which is what code generation tools like Codesmith and Linq rely on to also generate your DAL, it was hard to reverse the direction and go from UI, BAL, DAL to just Business Object Persistence db. I still will build up in the heart beat because the db is the final line for your process and it integrity does not exist in the db, human/developer error in code will filter down to the db. What you end up getting is a DB with many orphan’s and more. Im getting use to doing it from top to bottom now and we will be migrating to fully relation db next year after we roll out our current version.

Filed under: SQL Server, Servers

.NET SourceCode goes public, Yeah!!!

YEAH to Microsoft. Its true that Microsoft previously had to been in the open source space but for the past 2-4 years, they have tried to be a bit more open and free with projects like codeplex and more. Well, last week, it was passed on that MS will be release the source code for the .NET platform in the 2008 release of Visual Studio. Visual Studio 2008 with have this feature automatically built in and will download source code and symbols from MS. This is great new. This will help developers greatly in areas of in-depth debugging and learn some best practice from MS. I also feel sorry for the developers who will have to go and clean and comment to code so it will be readable to the rest of us. Good luck. Good call MS!

Filed under: Others

What’s in your Blog List, Part 1

Its always interesting to notice the blogs my fellow developers read. I have come to realize that depending on your area of interest, developer or architect’s blog’s turn to be packaged based on their desire. Basically, you can tell a developer specific interest by looking at their blog list. Then there are those developers that are all over the place. Interested in every single thing. Not a lot of those but they still exist. Here are a list of my top must read blog’s for me.

Coding Horror by Jeff Atwood, http://www.codinghorror.com/blog/
Dan Wahlin’s WebLog by Dan Wahlin, http://weblogs.asp.net/dwahlin/default.aspx Manuel Abadia’s ASP.NET stuff by Abadia, http://www.manuelabadia.com/blog/
ScottGu’s Blog by the all mighty Scott Guthrie, http://weblogs.asp.net/scottgu/default.aspx
Scott Hanselman’s
by Scott Hanselman, another ASP.NET guru, http://www.hanselman.com/blog/
nikhilk by Nik, creator of script#, http://www.nikhilk.net/Default.aspx
Omar AL Zabir blog, one of the founders of pageflakes.com, http://msmvps.com/blogs/omar/default.aspx

more to come, What’s in your blog list

Filed under: Personal

Del.icio.us