I have been playing around with MongoDb, thanks to the M101J Course offered by Mongodb University. These NoSQL datastores are gaining popularity due to a number of reasons and one among them being the ease with which they can be scaled out i.e horizontal scaling. This horizontal scaling in MongoDB can be achieved by creating a sharded cluster of mongodb instances.
There was a query on Javaranch regarding participating in Open Source projects and I made an attempt to provide somewhat elaborate reply to it. I thought of putting up the reply on my blog as well and may be update it further for the help of others.
Participating in Open Source projects would take a lot of effort and dedication. Its because one has to:
- understand how the code works,
- play around with it,
- explore the documentation,
- understand the code and not get bogged down by the volume of code
- be active on the mailing list,
- go through the bug list to see if something you can fix,
- submit a patch for the bug, hope it gets accepted,
- repeat 6-7 until core members of the project start recognizing you and possibly trust you with the permission to directly merge the fixes to the codebase.
So I have finally decided to start using Ubuntu once again. Its been 7 months since I stopped using Ubuntu and switched to Windows and its since I left college. One of the reasons I started using Windows was that I was developing a Java ME app then (7 months back) and had everything configured on Windows, so there were less reasons to use Ubuntu. I did upgrade my Ubuntu to 10.04, but considering that this was originally installed long ago, I wanted to format and reinstall Ubuntu, which I would be doing in a day or two.
When I booted my computer into Ubuntu- First thing I noticed were the Sticky notes all around the desktop- Few were related to my Major project- ToDos, few related to my Technical Seminar links, few were just some reminders, email addresses. There have been lot of memories associated with Ubuntu- All of my final year of engineering- I used this. Primary reason behind the switch to Ubuntu in Final year was that- I could use any of my friend’s USB sticks without worry 😛 (And I would get lot of requests for transfer of data- Mainly ebooks, assignments, movies). But then I decided to implement my Major project (Java Analyser tool using JVMTI) and there was no looking back from then on. I didn’t have any problem in connecting, configuring my Reliance Broadband+ modem and then on browsing, downloading. I had primarily setup my Ubuntu for development and had all the IDE’s, MySQL DB, Glassfish, Tomcat App servers installed. Also I had configured Prozilla- Command line Download manager for linux after searching a lot in the Internet.
Now that I am planning to format and reinstall Ubuntu 10.10- I would have to reinstall all of these packages. I would be writing about what all applications I have installed and how to go about installing them. Also I would be using Ubuntu for my office related work.
As I am writing this, I have Ubuntu 10.10 being downloaded in the background. Looking forward to another great time with Ubuntu 🙂
Executing external command from within JVM often causes problems- be it in terms of the code to write and manage or in the ease of implementation. I had similar requirement in my Major project for my Under Graduate Degree, where in I had to launch a C program from the Java code. I ran into different issues like- the Main thread getting blocked, the GUI freezing, or reading the output streams and so on. Finally I had to give up the idea and stick with launching the external command externally 😛 Had I found the Exec library from Apache Commons then, my work would have been lot easier. Anyways better late then never. I will quickly go through how one can use Exec library to launch external programs from JVM- Its a wrapper over Java’s ProcessBuilder, Runtime.getRuntime().exe(). Continue reading
I spent lots of time configuring my Ubuntu 8.10 installation, installing all the required softwares. The best thing i could do was to install Prozilla- the download manager which is really awesome. Also i installed all the IDEs, RDBMS that i use. But when i tried to shutdown my system it used to hang. This used to annoy me like hell. I then googled for this problem and came across the following solution which worked for me:
Canonical Ltd. announced the upcoming availability of Ubuntu® 8.10 Desktop Edition for free download on 30 October. In related news, Canonical also announced the simultaneous release of Ubuntu 8.10 Server Edition.
Ubuntu 8.10 Desktop Edition is designed for the pervasively connected digital lifestyle. With new 3G network support, users can move smoothly from wired and WiFi networks onto 3G cellphone networks while traveling. Ubuntu 8.10 is also built to be shared – users can start a quick “guest session” on the fly and let someone use their computer to surf the web or check email, while maintaining the security and integrity of their own data. And if that person really enjoys their brief session as an Ubuntu guest, they can put Ubuntu on any USB key and take it home to install on their own computer rather than having to burn a CD.
RefCardz: Essential MySQL
MySQL is the world’s most popular open source database, sporting a barrier of entry low enough to attract novice developers yet powerful enough to power some of the world’s most popular websites, among them Yahoo!, BBC News, the U.S. Census Bureau, and Craigslist. Recently acquired by Sun Microsystems, MySQL’s future is indeed bright. This reference card was created to help one quickly navigate some of MySQL’s most popular features. Covering topics such as configuration, administration software, backup procedures, SQL features, and user management, this card will serve as a handy desk reference for countless projects to come.
Download the RefCardz here.