Archive

Archive for the ‘programming’ Category

Lunarcodes – Coding when the moon goes up

December 9th, 2009 Arun Manivannan No comments
After a lot of thought over the weekend, I decided to rewrite Fetch2Me in Java. Not that Python is bad. Python is brilliant. However, i felt that my code quality in Java (from where i come) is not yet production standard. Over the past year, i had the opportunity to open up a lot of open source projects and realised that my code quality is horrible. HORRIBLE !!!
So, this is the plan i came up with.  Bring together our old NIIT gang and –

1)    Rewrite Fetch2Me in Java using HttpUnit and Java Mail API
2)    Expose the core functionality of Fetch2Me as a REST service
3)    Write a front end for web access to the REST service. Typically we should be writing a Inbox like web page for checking gmail (or any mail for that case), sending mails (with and without attachments). This front end will be written using GWT and Guice.
4)    Write a Firefox plugin similar to the requirement in (3)
5)    SMS service should also be exposed as REST service.

Use Maven for build purposes and Git for source control.  Optionally use Hudson for continuous integration and come up with an Eclipse plugin. Write lots and lots of of JUnit test cases.  My gut feeling is that this should take at least a few months development time.
I am sure there are a million products out there which does the same thing but there are two important highlights in this effort.
1)  We get to learn a lot of new things, open up the source code of lot of other open source projects, started reading PHP, ASP.net, C#, Ruby, Python (and convert them to Java) — all those which we wouldnt have done in our day job. I thought we could learn by mistakes – both development and design, we could refactor the code as much as we want at any point of time in the project (we understand that optimizing early is a crime).
and
2)  Soon after we are done with increments in the project, we’ll open source it. People can just pick our code and host it in their domain and call it a day. I am sure many will find interest in our work and hopefully start using it.

Free Web conferencing and a lot more

June 10th, 2008 Arun Manivannan 2 comments

A lot many things in the recent past made me wonder if Adobe is becoming the next Google?  If not in ads, at least on the innovation front.  The beta release of Acrobat.com startled me and finding its features cutting edge almost kept me dumstruck. 

Impressed by the non-proprietory webtop office application Google docs,  a year back, I give it a shot once a month (till now) and I log off with the same feeling everytime that it still has a long way to go.  But everybody knows that it was not google which started it all.

On the contrary,  Buzzword looks more “funky” (apologies for my natural bent over flash applications) and fast (unlike “flash” !!!).  Learnt that there could be a collaborative editing on the documents.

Gave web conferencing a try too. (Adobe Brio what they call it as).  Cool and very much friendly. Features look similar to webex and best of all, its free. Three is the max number of users in the conference.  But I dont personally mind because I dont need to ask my friend to install VNC for helping him out for an issue with his computer.

I dont want to give out a detailed feature list because thats what experts are for

What’s the pride in being a Programmer?

June 4th, 2008 Arun Manivannan No comments

I almost cried.

http://www.jpboodhoo.com/blog/StayingHumble.aspx

I went through the whole paper provided in the blog link. Never could believe that it was written in 1972.  I am really made humble.

 

NameNotFoundException with FSContext

February 5th, 2008 Arun Manivannan No comments

This was my trace. Never thought i was so dumb. I was breaking my head on this for about two hours.

javax.naming.NameNotFoundException; remaining name 'c:\temp'
at com.sun.jndi.fscontext.FSContext.checkExists

(FSContext.java:860)
at com.sun.jndi.fscontext.FSContext.

checkIsDirectory(FSContext.java:893)
at com.sun.jndi.fscontext.FSContext.(FSContext.java:148)
at com.sun.jndi.fscontext.FSContext.(FSContext.java:123)
at com.sun.jndi.fscontext.RefFSContext.(RefFSContext.java:136)
at com.sun.jndi.fscontext.RefFSContextFactory.

createContext(RefFSContextFactory.java:32)
at com.sun.jndi.fscontext.RefFSContextFactory.

createContextAux(RefFSContextFactory.java:37)
at com.sun.jndi.fscontext.FSContextFactory.

getInitialContext(FSContextFactory.java:65)
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.init(Unknown Source)
at javax.naming.InitialContext.(Unknown Source)
at com.ml.cortex.eds.dao.ConnectionManager.

createDataSources(ConnectionManager.java:34)

The solution is simple. Before using a url in the FSContext create the directory. In my case, c:\temp. Create the directory “temp” inside c:\ drive.