views:

146

answers:

7

I've almost finished my Java p2p file sharing application and given that it's pretty simple, I would like to add some things to it. Some modules or something like that. As you may notice I'm a newbie and still learning, so I haven't quite figured out all the possibilities.

Can you please recommend me anything you would think I could use but that doesn't require too much time to get around.

Thanks. BTW I'm aware some of you could say my question is not precise, but I wish I could ask it better :)

+4  A: 

Add what testing shows people need, not what you think would be gee-whiz.

Jherico
+1: "Modules" aren't something you just add. You don't fling oregano into everything you cook; you don't drive in reverse just to show that you can use all the gears in the car.
S.Lott
you do in a driving test
John Nicholas
A: 

Make it open source and let more people use it for free.. That helps you get reviews and new requirements from real users and help building a better software. Also making it open source will help you get new experienced developers working for the tool and you can learn more working with them.

Teja Kantamneni
It's already an open source, free for everyone.It would require a lot of work to even consider making it commercialy valuable.
AmateurProgrammer
A: 

This will probably be closed soon, but here are some easy things to add to make it looks more polished:

  • Splash Screen
  • Notification Icon (and hide the window)
  • use native look and feel
tster
Splash screens are a curse. As a user, why would I want to be delayed while your application loads and displays some crass splash screen I have no interest in seeing?
Winston Smith
@Winston: I agree: the time spent to make a good splash screen is much better used when you speed up startup time by 1-2 seconds.
Joachim Sauer
Adding a splash screen takes 15 minutes. Speeding up startup time might take weeks. Further, even if you can speed it up by 2 seconds, there still might be 5 other seconds that it is starting up. Sometimes you just can't get around some startup time.
tster
+1  A: 

To expand on Jherico's answer, make sure that you track everything that a user does so that you are able to compare meaningful data when you change something.

The more you track and the more you test the better your application can get. If you're not recording any usage data then any changes you do make are just shots in the dark and you'll never know if you are actually affecting the areas you want.

jsoverson
+3  A: 

What is the user base of your application? If people other than you are using it, try to get feedback on the application, issues, etc. If you are still trying to get your application up to the point where other people will want to use it, try some of the following:

Ben Gartner
It's a simple file sharing application that works inside the LAN, still not getting it to work over the internet.I like your points and examples, thank you, I'll be sure to check it.
AmateurProgrammer
+1 for actually answering the question and trying to help out.
Yar
+1  A: 

Implement Google-like single-input-field search over all data.

This is sometimes hard to do (since many applications store their data in a RDBMS and those are not ideally suited for this search approach), but it often makes navigating your UI much, much easier for the user.

So instead of filling in a "firstname" field and a "name field" and a "city" field, the user simply types "John Doe New York" into a single field and gets the result he expects.

Lucene/Lucene.Net are one way to implement such a feature. I'm sure there are similar libraries for other languages.

Joachim Sauer
A: 

"Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away." -- Antoine de Saint-Exupéry

Adding features for the sake of having more features is just about the worst thing you can do to an application. Look at the recent move of Google: hiding everything but the logo, the search box and two buttons. That's the direction you should try taking, not deliberate feature creep.

Michael Borgwardt