Ajit K

March 27, 2007

Why is PDF so popular for online publishing?

Filed under: Media, Publishing, Internet, Ideas, Trend, Design — AjitK @ 6:58 pm

Some pros and cons about it (a cons actually might be a pros, depending on the perspective).
+ points:

Portability.

Allows protection of intellectual property (IP).

Support for publishing scientific media (mathematical notations etc.).

Efficient packaging of content (less memory and high quality).

- points:

Difficult to edit and add comments without installing Acrobat Professional.

Difficult to Copy & Paste ;)

Difficult for collaborative editing and publishing. It is more like an end product rather than a material to be worked upon. Probably, PDF wasn’t meant to be for this purpose at all.

References:
http://weblog.404creative.com/index.php/2007/02/24/a-few-reasons-not-to-send-files-in-micorosft-word-format/
http://wordprocessing.about.com/od/choosingsoftware/a/pdfsharing.htm
http://www.afb.org/afbpress/pub.asp?DocID=aw060604
http://www.its.monash.edu.au/staff/web/slideshows/accessibility-pdfformat/

March 25, 2007

Path to Perfection

Filed under: Programming, Ideas, Design — AjitK @ 6:28 pm

As the writer, adventurer, artist, and aeronautical engineer Antoine de Saint-Exupry once put it, writing about the design of airplanes:

La perfection est atteinte non quand il ne reste rien ajouter, mais quand il ne reste rien enlever.

It means: “Perfection is attained not when there is nothing more to add, but when there is nothing more to remove”.

Taken from ESR’s writing available here.

March 24, 2007

A bit of pythonic humor

Filed under: Food for thought, Programming, Design — AjitK @ 12:18 pm

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren’t special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one–and preferably only one–obvious way to do it.
Although that way may not be obvious at first unless you’re Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it’s a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea–let’s do more of those!
–Tim Peters, “The Zen of Python”

March 5, 2007

Writing math equations on Web!

Filed under: Internet, Design — AjitK @ 3:44 pm

Its so cool. I was thinking of the same feature as a must have! To build a WYSIWYG for math equations would be a great and boost for Maths on Web… and Wordpress seems to have done it! Wow! Read more at Wordpress.com

http://wordpress.com/blog/2007/02/17/math-for-the-masses/

http://faq.wordpress.com/2007/02/18/can-i-put-math-or-equations-in-my-posts/

March 1, 2007

Use of technology in (collaborative) learning.

Filed under: Ideas, Trend, Design — AjitK @ 7:50 pm

Usually, online learning is supposed to follow a cookbook approach. But, the way we learn things are still being guided by old methods that we have used to follow. For example, copying the books we have created ebooks. But how effective are ebooks as a tool for learning, other than the ease of sharing (*downloading*) has it changed anything significantly. I don’t think so. It hasn’t changed the way we learn things. Rather, it is grossly undermining the computing power that we have.

This definitely has opened up great many options for us to improve. Current development in the suite of online word-processing applications is a step forward and will aid in its growth (even though the current aim is to cater to office applications). The potential of a collective book (wiki books?) can’t be underestimated. There can be various approach that can be followed for the development purpose. Such a creation will have to consider various factor such as:

  • Flexibility of content
  • Contribution and moderation
  • Ability to merge or branch multiple versions ~ Editions
  • Portability: The content may be downloaded.
  • Preserving the original and trusted content.
  • Innovation and accommodation of user needs

There could be many features that one may need to incorporate. Though, one must be prepared to be flexible and tend to user needs. And we need to think and start implementing.

Hmm… need to think clearly. This seems to be a nice idea and am sure many people must have started working on this technology. Lets see.

Food for thought:

Why is PDF format so popular? Is it because it is portable or is it because it preserves the original content or something else?

February 8, 2007

Pipes on the Internet: Yahoo Pipes

Filed under: Internet, Trend, Design — AjitK @ 10:35 am

From the Yahoo pipes website:

What Is Pipes?

Pipes is a hosted service that lets you remix feeds and create new data mashups in a visual programming environment. The name of the service pays tribute to Unix pipes, which let programmers do astonishingly clever things by making it easy to chain simple utilities together on the command line.

Philosophy Behind the Project

There is a rapidly-growing body of well-structured data available online in the form of XML feeds. These feeds range from simple lists of blog entries and news stories to more structured, machine-generated data sources like the Yahoo! Maps Traffic RSS feed. Because of the dearth of tools for manipulating these data sources in meaningful ways, their use has so far largely been limited to feed readers.

Tim O’Reilly calls it “a milestone in the history of the internet”. Why are they so important? How do they work? Here are a posts by knowledgeable people which can get you going:

Yahoo! Pipes: Unlocking the Data Web by Jeremy Zawodny by Jeremy Zawodny

Review: Yahoo Pipes

Pipes and Filters for the Internet by Tim O’Reilly

The blogosphere is agog with the pipes. Click here to Search Technorati

December 19, 2006

Advertising context and the lure

Filed under: General, Design — AjitK @ 6:45 am

While digging, I noticed the following. (Though I hardly look on ads, the decorated ads are so tempting and calling to click ;) ). The topic was Bush Illegally Silences Critic of Iran Policy. Here is what I found to be an interesting advertising case.

In the following screenshot is the ad being displayed in the context of the story.

Adalysis

And the followingis the target when I click on the ad. (I hope its perfectly legal to click on the ad to research whats inside it. Thats all, nothing more. Poor advertiser ;) )

Target of the google ad.

 

I am puzzled at the idea that the advertisers use to display their ads. Their ad was definetely not context sensitive. So, did they display it in the hope that the user will click it and that visiting the target site will solve the purpose?

December 15, 2006

Creating Business Objects

Filed under: Design — AjitK @ 6:26 pm

 

 

While creating an application, very often we may come to situation where we have to add logic related to our business model. (By business I mean any logical operation pertaining to the needs of two interacting systems.) How to model our business objects? Usually, we create objects to fit to a model suiting our business needs. If we are creating these objects, it would make more sense, if we separate these properties from hard coded class and instead read and load from a metadata, e.g. using a database or an XML. It makes sense to make them loosely bound to the system. This should be done to insure that we are not hard bound to our code base for creating newer database objects or modifying an existing one. For example, in a standard implementation, we may have a DB Object that handles all database related queries and other classes extend this class. For example, a User class may extend the DB Object class. This class may dictate the way the user might behave in our application. This way, to create a new DB Object, we will need to create a new class. This doesn’t sound very flexible. Instead of this, if we develop a language (a standard to interpret metadata) within our framework to read and write DB objects, then we may be able to create objects as modeled in metadata. If these objects can be defined in database or an XML, we may load the metadata and load the DB Object accordingly. This also means that the properties of the object have to be defined in the metadata. Then what does the base DB Object do? Hide the complexities of the database behind the scene. As a part of platform it should be able to handle all the technology related implementations.
Broadly speaking, it leads us to the concept of two layers, of technology and of business. Usually, we may be tempted to intermix and use both in a single layer. Such a system will tend to be hard bound. On the other hand, the separation of the two layers gives us the flexibility to add business logic using metadata and build the platform enabling us to read and write it.

External links:

http://www.artima.com/weblogs/viewpost.jsp?thread=115101 by Bruce Eckel