October 30, 2007

It's not about the spam

Official Google Blog: It's not about the spam

Also, includes a video from the Gmail Spam Engineer.

October 27, 2007

Tux Paint Screenshots

Simply amazed by Tux Paint, I just looked on and took a couple of screen shots as my 9-year old sister played with it.


She took < 5 minutes to start working with it and she has booked another 30 minutes of computer time with me.



I am 22, and I can't help but play with this wonderful piece of open source software!

October 26, 2007

Import Eclipse Java Console Applications to NetBeans

I am happy to announce that the first doc of the EclipseToNetBeans sub-project is now live at http://wiki.netbeans.org/wiki/view/EclipseJavaConsoleToNetBeans


No doubt, this is the simplest it could be. But, possibly a good first-step!

Of course, this is the NetBeans Community Docs latest contribution by yours truly!


This is the first in a series of articles planned for a "smoother" switch from Eclipse to NetBeans. Interested to know more? Visit the project page at EclipseToNetBeans

You will also get information there on how you can sign up for writing one!

OpenMPI Docs: First Step

Finally, after I posted the ICLA, I have got myself a SVN account and added myself officially to the Team Members page.

Links:

October 25, 2007

NB Community Docs: Setting up SlickSet in NetBeans

What is SlickSet?

SlickSet is 2D Game Engine built on Slick. It provides game objects, collision detection and scene management.

Check this forum post here

The newest contribution to the NB Community Docs is Setting up SlickSet in NetBeans

See how you can set up SlickSet in NetBeans here

CodeForFreedom: Contributions Set #2

Creator and Maintainer of a new project under the NetBeans Comunity Docs - EclipseToNetBeans page which will serve as the repository of documents showing you how to work with your Eclipse projects in NetBeans

URL:http://wiki.netbeans.org/wiki/view/EclipseToNetBeans

Official Announcement:

http://usersguide.netbeans.org/servlets/ReadMsg?list=dev&msgNo=89

'coyote' fails on NetBeans 6.0

I tried to install coyote NBMs on NetBeans 6 Beta 1


and as expected, it fails - since it supports up to NetBeans 5.0 officially.

If time permits I am looking to start work on a Python support for NetBeans.

October 24, 2007

NB Community Docs: EclipseToNetBeans

The NetBeans Community Docs has now got a new page devoted entirely to it for documents showing you how to get your Java Eclipse projects working in NetBeans. The new page is available here at http://wiki.netbeans.org/wiki/view/EclipseToNetBeans

Within a few days time we will soon have documents showing you how to

  • Convert a Java Desktop (GUI) -Swing Based Eclipse project to NetBeans
  • Convert a Java Desktop (GUI) -SWT Based Eclipse project to NetBeans
  • Convert a Java Web Application Eclipse project to NetBeans
and more..

The switch is even more easier now!

Some related pages on the NB Community Docs are:

NB Community Docs: Swing with JRuby

Teera Kanokkanjanarat is back with another great tutorial titled "Swing with JRuby: Developing a Desktop Application with the JRuby and Java Swing APIs"


Thanks a lot Teera for this nice article and its time for Teera to be in the Spotlight.

NB Community Docs: Communication Between JFrame Panels

This new Community Docs titled "Communication Between JFrame Panels" is a short, yet useful tip if you are working with Swing applications


The community docs is growing pretty steadily! Are you playing a role?
Its easy! See you there!

October 23, 2007

Sun Net Talk Live Chat: Q&A on NetBeans

The Panel:

Sergey Lunegov
, Engineering Manager, SOA Tools
Trey Spiva, UML Architect
Martin Ryzl, Engineering Manager, Mobility Tools
David Folk, Product Line Manager, Sun Grid
Pavel Buzek, NetBeans Architect
Gregg Sporar, NetBeans Technology Evangelist

Talking Platform



My Q & their A
  1. Amit (Q): What are the plans for Python support in NetBeans?
    Pavel Buzek (A): I see this as a potential community contribution. No plan for Sun employees to work on this in the nearest future.
  2. Amit (Q): Will Schliemann project be a potential starting point for Python support?
    Pavel Buzek (A): Yes, Schliemann is a good starting point for getting support for new languages. Note that Schliemann is still under development and the API will be finalized in the next release so there may be small API changes in future.
  3. Amit (Q): Referring to MPI, can I use it for MPI apps on environment such as a 4-node Linux cluster, ethernet connectivity?
    David Folk (A): We really don't have an MPI expert in the room. Can you email me directly and I can arrange a follow-up with someone who knows more? Please ping me at and put "ONLINE CHAT" in the subject line. Thanks.
  4. Amit (Q): Is interoperability with Eclipse, jBuilder a top priority for NetBeans?
    Gregg Sporar (A): I would not call it a "top" priority, but we do recognize the importance of this issue. As mentioned on another answer, we already tools that make it easier to import projects that were created with Eclipse or JBuilder.
  5. Amit (Q): What could be the possible "new" things to work on in NetBeans XML support?
    Sergey Lunegov (A): Better support of using XML artifacts in other projects (say in BPEL, XSLT). Also smart tracking of changes in XML artifacts -- implications to other projects that use this XML.
  6. Amit (Q): If I am to start working with NB XML sources, where do i start to develop an understanding?
    Sergey Lunegov (A): Please start with this page XML project page.. You can find there documentation, mailing list, access to the sources.
  7. Amit (Q): To Gregg: simply I am being shameless- will Sun employ me? I am interested in 2 roles - technical writer/documentation writer or a developer
    Gregg Sporar (A): 11:00 Hi Amit - there is not a lot of hiring going on right now, that I am aware of. But keep an eye on the Employment section of sun.com - you never know what might show up! :-)
Session in progress


Some other Q & A
  1. dameryworld (Q): With scripting being part of net beans what support is zend giving to PHP editing/testing?
    David Folk (A): NetBeans 6.0 has support for Ruby and JavaScript. We are working on PHP support, will be available in the next release after 6.0, a preview will be out sooner then that. Look for it on NetBeans update center!
  2. dameryworld (Q): With scripting being part of net beans what support is zend giving to PHP editing/testing?
    David Folk (A): NetBeans 6.0 has support for Ruby and JavaScript. We are working on PHP support, will be available in the next release after 6.0, a preview will be out sooner then that. Look for it on NetBeans update center!
  3. Riccardo35 (Q): a question for Trey Spiva. ¿Tell me what kind of tools (using UML) do you use daily in your work?
    Trey Spiva (A): I use the usecase tools when designing the my components. I then use the sequence, component and class diagrams to figure out the structure and communication flows. I also use the code generation to start the code. I also use reverse engineering when I need to mine the code base to discover existing code structure.
  4. Riccardo35 (Q): ¿what do you think about Netbeans in 2010?
    Pavel Buzek (A): World Peace through NetBeans! Just kidding ;-) I think NetBeans will continue to get better and better. Consider how much better NetBeans has gotten in the past 4 years. And now there are more people working on it than ever.
  5. Tianhong(NTU) (Q): hmm. wat do you think is the coolest feature of netbean to present to student?
    Gregg Sporar (A): Depends on the student. :-) For a student who has been using BlueJ (www.bluej.org), there is a version of the NetBeans IDE that includes some BlueJ features. If BlueJ is not interesting to you, then the GUI building tool is probably the coolest feature because it makes it easy to quickly create something and see results. Check out this tutorial trail: http://www.netbeans.org/kb/trails/matisse.html
  6. Kaleida (Q): Sun Java Studio creator, Sun Java Studio Enterprise 8.1, NetBeans. Why all three? Are each focused on a different use? Also will NetBeans get the Collaboration tools that Sun Java Studio Enterprise 8.1 has? Will Collaboration ever get to JCAPS?
    Sergey Lunegov (A): Now Sun doesn't work on future versions neither Sun Java Studio creator nor Sun Java Studio Enterprise. Now we have the ONLY IDE and it's NetBeans. The collaboration module is available on UpdateCenter. As for getting collaboration into JCAPS it's under discussion.
  7. nicole (Q): I understand that we can reverse engineer a Java application in Netbeans, but is it possible to generate code out of a UML diagram?
    Trey Spiva (A): Yes you can generate code for an entire project, or a specific model element. In NetBeans 6 code generation was our primary focus. To get more information about our code generation please see our wiki pages. http://wiki.netbeans.org/wiki/view/DomainModelingCodeGeneration http://wiki.netbeans.org/wiki/view/SourceCodeSynchronization
  8. Dr J (Q): David, how do you coordinate activities between the employee and voluntary contributors, and how do you manage based on their different motivations? Strikes me as an interesting tightrope to walk.
    David Folk (A): Yeah, people have different motivations, but generally speaking I think the process is working. Voluntary contributions usually result from an 'itch to scratch' and the product continues to get better - i.e feedback has been very ositive lately. Of course, more could always be done to encourage external contributions.
  9. brodock (Q): Is there any plan to create a tool to migrate configurations from others IDE's to have a calm and easy migration path?
    Gregg Sporar (A): No plan for that yet, but it is being discussed. In the mean time, there are some plugins available out on the update center that make it easier to import projects that were created with Eclipse and with older versions of JBuilder.
  10. dmindebian (Q): What's F3???
    Martin Ryzl (A): see javafx, f3 is an old name of the technology
  11. shohon (Q): I run Netbeans 5.5 and noticed a 128MB limit on the top right corner which gets full after I've been working for quite a while with a lot of files and projects. Double clicking to force garbage collection doesn't do so good and I often need to restart the application. Is there a way to increase the 128MB limit? Is there a patch available for this?
    Pavel Buzek (A): You can change the change limit in netbeans/etc/netbeans.conf
  12. Galina (Q): One of the features of NetBeans is Collaboration. Can I install my own Collaboration server in local network (in our university laboratory, for example)? Where can I get Collabo plagin and server PO?
    Sergey Lunegov (A): Yes you can install your own collaboration server. You can get plugins from the IDE. Go to Tools->Plugins (in case you use NB 6.0). In earlier versions it should be Tools->Update Center.
  13. janunezc (Q): How is it possible to deliver such a quality product without charging for it?
    Gregg Sporar (A): At Sun we are building our business model around making money on *deployment*. In other words, we give away the development tools because we find that it is easier to make money on things like service, support, and training, in particular for the runtime pieces (server software and middleware, etc.). In order to have a large base of software out there that would deploy to systems on which we can make money, we need to provide good quality tools.
  14. Cesar (Q): Some link about parallel computing with NetBeans? (e.g. threads, shared memory, compile and run programs, add libraries,etc.) C Language
    David Folk (A): I'd suggest visiting http://developers.sun.com/sunstudio/overview/topics/hptc_index.html Sun Studio is built on top of the NetBeans IDE and it's probably a better place to start for parallel computing in C.
It was a real stimulating tech talk. Did you miss something? Of Course, yes! In case you are interested in the complete transcript visit http://sun.com/nettalk

You will also get links/details of future Live Chats.

Make a Wish!

Make a Wish and chances are that you will have it granted sooner than later. I am talking about the NetBeans Community Docs where we maintain a Wishlist where YOU can list the article/tutorial you would like to see. So, go ahead and make your wish!

And if you are worried about the already unfulfilled wishes then put aside all your fears, we function in a LIFO fashion - so the first wish "Importing an Eclipse project into NetBeans" is already on its way to be granted!

Not all wishes go unfulfilled!

Links:

NetBeans Module Manager: Where is my 'update' gone?

Just installed NetBeans module manager on NetBeans 6 Beta 1. Looks to me a handy tool for viewing, activating/deactivating, uninstalling modules.


NetBeans Module Manager

Java DB Module properties

However this doc here says that I should also have a "Update" button in my module manager- as in:

source:http://ui.netbeans.org/docs/ui/update/manager.htm#2

So, where is my "update" gone?

October 22, 2007

Fuzzy Logic Based Approximate Reasoning Tool - taking shape

I have progressed fair bit on the "Fuzzy Logic Based Approximate Reasoning Tool"

Here is the screen shot of the Class Browser showing the classes so far:


Interested readers may have more details about this project by mailing me. I plan to set up a CVS/SVN soon.

October 21, 2007

A love note to Google

On the occasion of writing a cover letter for a certain Google job application, I wrote my cover letter - a token of appreciation, love for Google

Dear Google,

"When one teaches, two learn"- is one of my favorite quotes. This has been my philosophy in the short time I have pursued freelance technical writing. Learning new things has always been the most exciting thing for me since childhood, however technical writing started almost suddenly for me, 14 months ago I wrote my first article - "Linux Kernel 2.6 Compilation" which I put up on my own personal homepage. Since then, I have written around 15 full length articles, besides a few short tips & tricks. All, except a couple have been published by various online portals, journals and print magazines. I have also contributed effectively to the NetBeans Community Docs effort and soon going to start writing for their product documentation too.

The topics and languages I have covered so far include C, Java, Python, Ruby, XML, NetBeans, Open JDK, UML, Linux Kernel, Packet Sniffing, Network Servers and other miscellaneous areas.

Most of my writings have been highly appreciated by readers, who have e-mailed me their queries and the projects they have taken up after reading my articles. A recent highlight has been the appreciation I have received from the NetBeans Community Docs Manager, who is also one of my referee.

I believe I have the right skills- tech knowledge and the ability to teach some one effectively - to make it big in my career as a technical writer.

All this said, I am aware that there will be numerous applicants who are more experienced and even more technically competent than I am, but Google is no less than magic for me. Google has been my friend, instructor and has played a vital role in teaching me almost all the things I looked for when I had to go to a search engine. So, if given an opportunity I shall try my best to do justice to the opportunity given.

Please find attached my formal curriculum vitae as my application for the post of Technical Writer.

Looking forward to hear from you.

Thank you for your time and patience.

Regards,
Amit



Google, its time that you love me back :-)

Introducing Wikinomics

DDJ has got this article "Wikinomics and a World of Change" which introduces Wikinomics as quoted by Don Tapscott, co-author with Anthony D. Williams of Wikinomics: How Mass Collaboration Changes Everything.

Wikinomics is the new art and science of collaboration that demands that business leaders think differently about how to compete and be profitable. This is more than open source, social networking, so-called crowdsourcing, smart mobs, crowd wisdom, or other ideas that touch upon the subject. Rather, we are talking about deep changes in the structure and modus operandi of the corporation and our economy, based on new competitive principles such as openness, peering, sharing, and acting globally.

Text/HTML similarity algorithms

Interesting post on Google answers regarding Text/HTML similarity algorithms. Check it out here at http://answers.google.com/answers/threadview?id=337832

Interview:James Gosling, 'the Father of Java'

James Gosling in an interview:

http://itmanagement.earthweb.com/article.php/3706426

loser..:My first hate mail

Alright, I have my first hate mail which had the subject "loser..". The reference was to one of my first articles about 14 months in which I by mistake, forgot to preserve the license notice that accompanied a piece of code and hence followed the brickbats.


Here is what he had to say, along with my reply:

On 10/21/07, Aditya Narayan <apt6fny@yahoo.com> wrote:
> For a second I thought this was a brilliant student..But no - you simply stole somebody's code and
> article and posted as your own - along with your picture. Good that the editor has a big note
> about you now. Enjoy...

Thank you so much for the compliment. This is my first hate mail. WoW!
But, yes 'to err is human'- and I have learnt from my mistakes, and
moved on and I am doing good i guess!

October 20, 2007

Resolving NetBeans Web App deployment problem

A short tip titled "Resolving NetBeans web app deployment problem (to Apache Tomcat)" is the newest contribution to the NetBeans Community Docs.


This tip has been contributed by Kok-Yan Lo.

Vanity ring with a [G]oogle

Source:http://infosthetics.com/archives/2007/10/google_vanity_ring.html

An electronic ring that shows the number of Google hits when searching for the name of the person who wears it. every night, when the ring is inserted into its docking station, the ring is reloaded & updated to the objective popularity & importance measure of one's personality.

October 19, 2007

NetBeans Database Tooling

Want to play a role in shaping the future NetBeans Database tooling features? A very quick survey has been put up by David Van Couvering,who is at Sun Microsystems and focuses on integrating databases into tools and technology.

Go ahead and take the 10 minute survey!

CodeForFreedom: Contributions Set #1

Submitted my first set of contributions for the CodeForFreedom contest. They are:

  1. Open JDK: Working with 'javac'
  2. Getting started with Java DB
  3. Ruby development on NetBeans 6
All of them are available here at the NB Community Docs.

October 18, 2007

NB Community Docs: Creating a Basic MIDP2.0 Game Template

Its time for some fun at the NetBeans Community Docs. Glenn John M. Geronimo is the community's newest contributor with his exciting new tutorial "Creating a Basic MIDP2.0 Game Template"


Go ahead and check it out! Thanks, Glen!

NB Community Docs: MIgrate Class Libraries

The NetBeans Community docs is bustling again. We have a new contribution titled, "Migrating Netbeans Class Libraries Between Different Versions".




This contribution comes from Teera Kanokkanjanarat. Thanks Teera!

October 17, 2007

Permutation with Restrictions

Consider a scenario in which you have 'N' boxes and box 'i' can be filled in 'a' distinct ways, box 'j' can be filled in 'b' distinct ways and Nth box can be filled in 'z' distinct ways.

Hence we will have a total of a*b*...*z permutations. Here I present a C++ version and Python version of a program to generate the above solution. All credits to my friend Abhrajit for solving the problem, I just did the Python conversion.

Python:


from Numeric import *
class box:

#count=[]
box_possible_values=[]
data=zeros((10,10)) #create and initialize the data matrix
num_box=0
count=zeros([100])



def __init__(self):
print "Init"


def input_data(self):
"""input the data"""
print "Input"



#self.box_possible_values = {}
box.num_box=input("total number of boxes")

for i in range(0,box.num_box):
box.box_possible_values.insert(i,input("Enter the number of possible values in box %d " %i))

for j in range(0,box.box_possible_values[i]):
box.data[i,j]=input("Enter the possible value %d " %(j+1))



def generate(self):
print "generating"

flag=1

result=[]

#print "Count",box.count

while flag:
#print "flag", flag

for i in range(0,box.num_box):
result.insert(i,box.data[i,box.count[i]])

for i in range(0,box.num_box):
print result[i]

print " "



#print result,","
f1=1
for i in range(0,box.num_box):
if box.count[i]!=box.box_possible_values[i]-1:
f1=0
break

if f1==1:
flag=0
else:
recurr(box.count,box.num_box-1,box.box_possible_values)



def recurr(count,i, maxm):
#print "recursive function",i

if i>=0:
if count[i]==maxm[i]-1:
count[i]=0
recurr(count,i-1,maxm)
else:
count[i]=count[i]+1
else:
return



if __name__=='__main__':

ob=box()
ob.input_data()
ob.generate()






C++:

#include

#include



/*

THE 'generate()' FUNCTION AND 'recurr(,,)' FUNCTION HAS THE CORE LOGIC

variable descriptions

n= no. of boxes;

max[box_no]=max number of possible values of that box

data[][]:= row=boxes ||||| column=elements of each box

*/



class box

{

int n,max[100];

char data[100][100];

public:

void input();

void generate();

};

//Reffer this function when it is called

void recurr(int count[],int i,int max[])//non member recursive function

{

if(i>=0)

{ /*checks if count[i] has reached the maximum

then sets count[i] to zero, and calls the

function with the count[i-1]*/



if(count[i]==max[i]-1)

{

count[i]=0;

recurr(count,i-1,max);//RECURSION

}

else

count[i]++;

}

}

//class member function definitions

void box::input()

{ cout<<"Enter the total number of boxes: "; cin>>n;

for(int i=0;i<<"\nEnter the no. elements in box"<<<": "; cin>>max[i];

cout<<"\nEnter elements of box "<<<"(char):-\n"; for(int j=0;j>data[i][j];

}

}



/*For the next function:-

Here an array count[] is used, it generates the numbers

count[i] stores the present position.

if count[]={0,2,3}(assuming n to be 3),

it means next time 1st element of box1,

3rd element of box2

4th element of box 3 will be printed.



A recursive function is used to increment the count.

Assuming n=3, max[]={2,2,3}

count will be generated as 000,001,002,010,011,012,100,101,102,110,111

This generation will be done by the recurr function

*/



void box::generate()

{

char res[100];//res[] will contain the generated data

int flag=1;

int count[100]={0};

while(flag)

{ for(int i=0;i<<<", "; for(i=0;i

VisualVM: A first look

VisualVM is a visual tool that integrates several existing JDK software tools and lightweight memory and CPU profiling capabilities. This tool is designed for both production and development time use and further enhances the capability of monitoring and performance analysis for the Java SE platform.

Using VisualVM on Ubuntu Linux 7.04 and JDK 1.6

  1. Download Visual VM (preview) from here.
  2. Unzip it and navigate to the bin directory
  3. Set the environment variable jdkhome to your JDK installation directory
  4. amit@ubuntu-laptop:~/temp-workspace/visualvm/bin$ export
    jdkhome=/home/amit/jdk1.6.0_02/
  5. Start VisualVM by using the shell script visualvm
  6. amit@ubuntu-laptop:~/temp-workspace/visualvm/bin$
    ./visualvm


About


VisualVM Overview

Who Can Contribute to Free Software? Everyone!

O'Reilly has got this blog post titled " "

Interesting Read!

October 14, 2007

Learning about Parallel Programming

Solaris developer blog has got an entry "Learning about Parallel Programming" which summarizes useful resources to get you started with Parallel Programming.

Related Resource:

My first open-source powered Academic Project

As a minor-project for my final year in college, I took up the project which I christened "Review of Parallel Computing". My primary goal while working on projects has been to make it a learning experience - to learn something new, explore new territories in programming and parallel programming has fascinated me for over a year now, hence I wrote my own project proposal - a short one - and thankfully, my supervisors accepted it.

My supervisors, will all due respect were a complete newbie to the world of parallel computing, just as I was. I have always liked challenges and this was another such challenge in which my project was to be guided basically by myself.

So I started my work on the project first by installing Ubuntu 7.04 on 4-machines which were going to form my mini parallel computing platform.

Then I installed PVM on all these systems and for the next 3 weeks got some vital hands-on experience with PVM demos and example codes. This gave me the first taste of parallel programming. Yay!

Having had some experience with PVM, I wanted to try MPI. I chose Open MPI (Thank God!) and then in the next few weeks I gained working experience with Open MPI.

The first real 'big' thing that I did was to successfully implement a parallel search on the 4-node parallel programming platform.

This is the story so far.

Now, to do justice to the title of this blog post, a short summary follows:

One of the most striking aspects of the whole experience was the OpenMPI mailing lists. The role of mailing lists in open source projects has long been established. The people there were basically my 'real' supervisors.

Living in a part of the world, where books on parallel programming are hard to come by, here are a few resources that helped me work on my project:
It is often the case that while working on different tools for similar purpose, the user/programmer generally finds his/her favorite one. Open MPI rocks for me!

I am willing to share my project details with anyone interested. Please let me know (email).

Google powered projects for me is nothing new, but this was my first complete Open Source powered project. Next major project is working on "Parallel Genetic Algorithms".

Wish me luck!

Getting Started with JAAS

The NetBeans Community Docs wish list is headed by a document request titled "Simple visual Web application (incl. documentation) using simple form based authentication with JAAS against a DB (e.g. login, logout, sessionhandling".

In this post, I shall give point you to some references and related resources regarding JAAS.

Java SE Security

Java SE security is described here

JAAS

The JavaTM Authentication and Authorization Service (JAAS) was introduced as an optional package (extension) to the JavaTM 2 SDK, Standard Edition (J2SDK), v 1.3. JAAS was integrated into the J2SDK 1.4.

JAAS can be used for two purposes:

  • for authentication of users, to reliably and securely determine who is currently executing Java code, regardless of whether the code is running as an application, an applet, a bean, or a servlet; and

  • for authorization of users to ensure they have the access control rights (permissions) required to do the actions performed.
Traditionally Java has provided codesource-based access controls (access controls based on where the code originated from and who signed the code). It lacked, however, the ability to additionally enforce access controls based on who runs the code. JAAS provides a framework that augments the Java security architecture with such support.

Before reading the JAAS reference guide, please refer to the following documents:


References:
After you are through with getting some preliminary experience, you could considering working on a simple visual web application which has authentication (login, logout, session handling, etc) support and uses JAAS for the purpose.

And then finally, if you are succesfull in designing the web application, you could consider teaching it to someone, by contributing to the NetBeans Community Docs.

See you there!

October 13, 2007

How'she' Got to Google, Ch. 2: Tale of a T-shirt

Official Google Blog: How I Got to Google, Ch. 2: Tale of a T-shirt

October 12, 2007

NetBeans Usage Tips

I came across this page at http://www.searjeant.net/wiki/java/netbeans which lists some useful NetBeans 6 tips.

Worth checking it out!

October 10, 2007

Processing petabytes of data: Let Google teach you

Processing petabytes of data is a part of everyday's work for Google engineers. Large computing clusters power Google. Now, Google for educators has online learning and teaching resources for Large scale parallel programming with Hadoop.

Links:


  1. http://code.google.com/edu/
  2. Official Google Blog: Let a thousand servers bloom

October 4, 2007

Microsoft woos me back!

I

  • Have not written a single line of code for MS Windows in the past 10-12 months.
  • Have prepared my last 10-15 articles/reports using LaTex (on Linux), not MS Office.
  • Surf Internet only on Linux
  • Develop only on Linux
  • Write, publish articles/docs only for Linux/Open Source Magazines
  • All my current projects are related to Open Source/Linux
  • Bought a Acer Laptop because it is more Linux friendly, besides few other factors
..and all this despite me being a Microsoft Student Partner.

All this is however set to change a bit though. My interest in MS stuff is going to take a bit of renewal. I plan to keenly follow the Open Source efforts at Microsoft:


Must Visits:

Open Source@Microsoft

The latest news from the Open Source software lab@Microsoft is that they are releasing the source code for .NET class libraries

Definitely something to check out is Open Source at Microsoft

Choice Overload in Parallel Programming

This Research@Intel blog post titled "Parallel programming environments: less is more" is an interesting read at the numerous choices available today for Parallel Programming.

The author points to a paper “When Choice is Demotivating: Can One Desire too Much of a Good Thing?” Iyengar, S. S., & Lepper, M. Journal of Personality and Social Psychology, 79, 995-1006. (2000) and illustrates his point by an example which brings into light the fact that the flexibility obtained by more choices tend to defeat the purpose when it comes to adoption of a particular choice.

October 2, 2007

Introducing Python Pickling

The article "Introducing to Python Pickling" introduces you to the Pythonic way of persistence storage of your class data.

Hope you enjoy it!

October 1, 2007

NB Community Docs: Open JDK - javac

The NB Community Docs has got a new contribution - a short tip on "Working with 'javac' shipped with Open JDK". This tip has been contributed by yours truly!



Hope you find it useful!