Synopsis

Friday, December 28, 2012

MEAP Opensource

Recently wanted to look up the progress of MEAP (Mobile Enterprise Application Platform) software and if there are any stable open source releases of such platforms.

Possible Open source Candidates :
OpenMEAP
Convertigo

There has been some Questions on the Future of MEAP and its viability. The main issue here is how do you create a cross-platform (developed for one but can work on another) MEAP application.

Every application developed and deployed for a MEAP setup is married to it for life. If you intend to discontinue the vendor, you just cannot do it at the drop of a hat. Thats when the porting market would open up. Which means porting the app-set developed for one MEAP setup into another.

A combination of HTML5+JavaScript+Standard Framworks = Prevention of Vendor lock-in or technology lock-in for that mattar !

Other (non-open source) Candidates :
AnyPresence

Disclaimer : This is an In-Progress article.

Convert Visio to PDF

Trying to view a Visio file format (.VSD) on OSX or Linux (anything but MS Windows). The possibilities are out there ...

Options  to convert VSD to PDF :
1. Steps to convert it using open source :
  • Convert VSD to an Image. Eg. VSD2PNG Tool 
  • Convert the Image into PDF. Eg. ImageMagick Tool
2. Faster to use an online conversion tool. Eg. Zamzar.com Tool

What did I do ?
Initially looked at the options available and quickly resorted to Zamzar.com to convert the VSD into PDF since productivity was on the top of my list.

For a more permanent solution, have downloaded VSD2PNG and would try to convert into SVG image format.

Once I have the image, would convert it into PDF using Image Magick.

Reference :

Wednesday, December 19, 2012

Weblog Client

After some decent research and trying out some favourite tools for blogging , here's the outcome ...

Current Tools :

  1. Semagic - Originally a windows binary, can be used on Mac using PlayOnMac / Wine . 
    1. Setup Steps here but needs 500MB space for Wine , libraries etc. 
    2. Installed well and was able to post to Live Journal as a test.
    3. Does not seem to login to Blogger for some reason using gmail id (a.r@gmail.com) keeps throwing "Client Error, no Username sent".
  2. ScribeFire - Chrome or Firefox Addon. Seems good since and I'm currently writing this post with !
    1. Fast and able to compose the content to Post pretty well.
    2. Needs a better interface for adding tags, photos etc. Its simple as it gets.
  3. Flock - A browser for blogging with excellent performance
    1. No new Mac builds since 2010 on their site except a vague "Stay Tuned"
    2. It was last in news when it got acquired by Zynga in 2011.

Anything like RockMelt as a Social browser with a blog client built into it would be fantastic for productivity.

Maybe even an opensource version like BloGTK that is based on Python and PyGTK that works on OSX.

Ideal Tool :

  1. Works as a Native OSX App
  2. Good UI for - posting,editing,saving offline, cross-blog posting & managing multi-blogs.
  3. Managing Flickr Image uploads.
  4. Does not add unrequired HTML tags (seen on Blogger UI some times).
  5. Absolute control on layout - True WYSIWYG editor.
  6. ** FOSS / Opensource based license.
  7. ** Developed using Python incase I'd like to contribute a fix.
  8. ** Push Posts to FB, Twitter, LinkedIn, Google+ if required

** Optional

References :

  1. Ultimate List of Desktop Blogging Tools

 

Credits : Posted using ScribeFire plugin for Chrome.

Tuesday, December 18, 2012

Little Coder


Little Coder's Predicament by _why | June 10th, 2003
"My challenge is for you to bundle a useful programming language with your product. Ruby, Squeak, REBOL, Python. Take your pick. It will be inexpensive to add any of these languages to your systems. And people will seriously pray to you. You know how geeks get when they pledge allegiance to something. But, yes, Ruby is preferable"
An interesting article by _why, who was mentioned here on slate.com about why he disappeared after being a beloved contributor to the Ruby community.

It seems like a Fountainhead individualist following the route of Atlas Shrugged. Could have gone a bit too far IMHO, with the whole philosophy.


RedHanded Blog by _why

Architecture

Its fun to use my daughters slate to draw quick diagrams ...

Credit : Initially posted via Blogger on Android. Later Edited Image size using Blogger.com.

Friday, December 14, 2012

XMPP Protocol










Try developing async/push based gaming/enterprise architecture using XMPP Protocol.
eJabberd is one of the available stable implementations of the protocol for production use.

We used javascript based mobile clients to login to the server and share snippets of data between users. In fact at one point we even used gmail usernames to login and communicate data with one another ie. gaming data.

This was during the initial days of mobile development for Android/iPhone platforms when we needed to generate sales through marketing apps. We were successful at implementing a robust asynchronous communication using xmpp over http flawlessly.

The architecture was robust enough to be used for any kind of asynchronous data communication using publish-subscribe model.

Jabber.org is still an open service for xmpp clients although their commercial arm Jabber.com has been acquired by Cisco back in 2008.

Jabber Logo is licensed under Creative Commons Attribution License

Thursday, December 13, 2012

JavaScript


Was recently reading a blog by Sudar Muthu (an interesting_geek_hacker if there is such a term) who happened to design his wedding invitation in the most imaginative way possible by a techie.

Tech (Software & Hardware) Used
  1. Javascript & Vim for programming the card
  2. Photoshop - for designing the envelope
  3. NFC chips - for embedding the url to marriage details
  4. QR Code - url to marriage details
Actual Marriage Invitation 

My marriage Invitation by Sudar Muthu, on Flickr
Creative Commons Attribution-Noncommercial-Share Alike 2.0 Generic License  by  Sudar Muthu 

This subsequently led to an article by Douglas Crockford which describes some interesting revelations about the humble but powerful language.

My 2 Cents
I remember the first time I read about the JS (JavaScript) in 1998, while co-developing our Final year engineering project "A web shopping cart". How it puzzled me that though - "JS was not part of universal HTML ?" yet it was absolutely necessary to enable any web app function better.

In those days, JavaScript (by Netscape) would always get confused with Java (by Sun Microsystems) since they both seem synonymously related in some way. In fact JavaScript was both client side & server side was completely forgotten.

The market was talking about Java/Linux as the next greatest language/technology after C/Unix that every programmer should watch out for.

Client side (browser based) JavaScript without doubt has become the most popular language of the web since those days. Every web/application developer has to embed JavaScript within each web response in some form or shape to render a usable & well thought out UI.

Node.js
Circling back to 2012, JavaScript has managed to become popular for server side scripting for asynchronous request processing. Here is a neat slide deck with code samples about Node.js.



Robotics
Again circling back to Sudar's blog on Controlling robots using JavaScript it brings us back to yet another area where the use of the language would surprise any developer.


Image Conversion :
Recently read about the use of JavaScript within Adobe Photoshop to produce JPEGS for the web from camera RAW images.


What is your opinion of JavaScript ?

Reference :
Popular Programming Language
Misunderstood Language

'via Blog this'

Monday, December 10, 2012

Trello Tech Stack













Recently been reading about the Architecture behind Trello. The application design is quite simple and straightforward.

Client : 

Pushing & Polling :

  • Socket.io & Websockets
  • AJAX Polling
  • Redis
  • MongoDB
Server :

  • node.js
  • HAProxy
  • Redis
  • MongoDB
Experience with node.js :

We've been playing with a node.js based stack: RailwayJS & MongoDB, for creating a web admin. The main goal was to use an open source framework for CRUD generation. We finally managed a quick & dirty admin setup  for managing site-wide seed data.

Now that I've seen what can be done with node.js, we probably should have explored developing the whole application using a mix of node.js.

Screenshot Image © Copyright 2000-2012 Fog Creek Software, Inc.

Apache Flex Incubating









Amazing to know that Flex has been growing steadily over the last 1 year under incubation at Apache.

Waiting to see the realms of possibilities for extending flex sdk for multiple dimensions - browsers, desktops & devices smartphones, tablets and tv) in the coming years.

Project URL : http://incubator.apache.org/flex (flex.org redirects here)

Latest Project Release :
Download Apache Flex® 4.8.0 (source)
The Apache Flex team is pleased to offer this 'parity' release, available as of 7/19/2012. This is the first available Flex SDK under the Apache Licensing model, and is designed to be compatible with the Adobe Flex SDK version 4.6.0.
Apache Flex Logo © Copyright 2011-2012 Apache Flex. 

Userland Frontier







Happened to search about an end-of-life weblog software: Userland Frontier, while browsing through Joelonsoftware.com's About page.

His reference to the use of Frontier as his weblog in the initial days led me down memory lane and it seems that the product has been GPLed since 2004 as described on their Wikipedia page.

I remember trying out Frontier as a trial software for windows 97 during 2003. Plan to try it out on my MacBookPro in 2012 , almost 8 years later. It could be a great tool to keep track of documents on my local server.

The Opensource releases of Frontier are uploaded at frontierkernel.org. The last update on their sourceforge page is about a year a go.









I would have presumed some one would have forked and re-forked the project multiple times if the original project has been offered to opensource domain.

Logo © Copyright 1992-2012 UserLand Software, Inc