I'm staring a project called xong which aims to be a task/project management/to-do list type application but with features that I want and can't seem to find in any commercial software.
Expiring tasks
I'm not sure why this isn't a common feature of task managers. If 'take out the trash' is a task and it doesn't get done by tomorrow morning when the garbage man comes, I don't want to see that show up for the next day or two as an overdue task until I go in and manually delete the task. I should be able to set an expiration on the task and if it's not completed on time, it just dies.
Smart suggestions
While labels can help organize and enable smart searches, it requires that I be smart and have a very organized and up to date set of tasks so that when I perform a search such as 'show me all tasks on the Errands lists that are within 5 miles of Covington' that the right tasks pop up. I want the task manager to be the smart one, I am the doer of things, and the manager manages and delegates tasks TO ME based on context (time, weather, location, who I am with, calendar events, and other tasks).
Self hosted
Most task managers require some sort of yearly subscription and after trying all of the major task managers and not finding the perfect one, I am tired of paying them. Time for some open source software that can do the job. I want to host the app and the data on my machine so that I know my data isn't being misused. I also want my data to be exportable in some type of standardized format like XML so that if some one comes along and makes a better app for task management, somebody can hack up a script to port it over to the new better platform.
Tools of the trade:
The main deliverables that upon completion would be considered a success by me are:
- An app that runs on a server to store data and process all interaction (adding, deleting, suggesting tasks)
- Thin web client (basic for PoC)
- Thin Android client (again basic for PoC)
The server application will run in Apache Tomcat, use Spring Framework for DI, MVC, Persistence, Thymeleaf for templating, and Maven for project management, also git for scm and github to host the repo.
Boom, I said it, now it's time to do it.
Java Ngon
A blog dedicated to posting useful snippets for programming in Java.
Monday, May 11, 2015
Wednesday, August 7, 2013
Add Google Guava to Eclipse Project
Disclaimer:
If you are using Maven or Gradle or something of the sort, there is a much easier way to import Guava into your project. This tutorial is just for those who want to use Guava but are not using a framework to handle dependencies.
If you are using Maven or Gradle or something of the sort, there is a much easier way to import Guava into your project. This tutorial is just for those who want to use Guava but are not using a framework to handle dependencies.
Step 1 - Download the JAR files:
- Go to the Guava Release History Page and find the latest release (Release 14 at the time of this writing)
- Click on the latest release in the 'Release' column. This will take you to a wiki about that specific release
- Under the 'Using Guava in Your Project' section there are 4 jars that you can download. Download the Javadocs, the source, and the main jar.
The GWT jar is not needed. |
Step 2 - Copy Jar files into lib folder
- If your project doesn't have a lib folder you can add one by right clicking the project and going to New > Folder.
- Copy the 3 jar files you downloaded into the lib folder
Step 3 - Navigate to the Java Build Path Properties
- Inside the Package Explorer View, right click the project you wish to add Guava to.
- Click on Properties.
- Click 'Java Build Path' from the list on the left.
- Click on the 'Libraries' tab
Step 4 - Add JAR files to the project.
- Click 'Add JARs...'. This will prompt you to search your Project Tree for a JAR file.
- Navigate to the lib folder. Click on the guava-xx.x.jar (not the source or javadoc jars, we'll use them in just a second)
- The guava jar should now show up in the list of libraries. Go ahead and expand the guava-xx.x.jar in the list.
- Double click 'Source attachment'
- A dialog will appear prompting you to point eclipse to the source jar.
- Click Browse.
- Navigate to the lib folder of your project and select guava-xx.x-sources.jar, then hit OK, and hit okay on the dialog, this will bring you back to the Libraries Dialog.
- Back on the Properties Dialog, double click on 'Javadoc Location'
- This will bring up a dialog to find the javadoc jar file.
- Click on the 'Javadoc in archive' radio button
- Click on the 'Workspace file' radio button
- Click Browse
- This will bring up your project tree again.
- Go to your lib folder and select the guava-xx.x-javadoc.jar file
- Click OK until you are back on the regular workspace screen.
- In your Package Explorer there should now be a 'Referenced Libraries' section with the guava jar listed under it
Now you can use the library. Code completion should show the javadocs and debugging should allow you to step into the guava source (if for some reason you need to).
Here I use the ImmutableList class from the Guava libraries. |
Subscribe to:
Posts (Atom)