Tuesday, April 16, 2013

Easyrec recommendation engine

... and others like it. Might be useful someday, somehow..


Tuesday, April 09, 2013

HashSet, TreeSet equivalent in Linux

I was thinking of implementing a command line version of Java HashSet, LinkedHashSet and TreeSet when I remembered sort and uniq.

Just use uniq as you would a HashSet/LinkedHashSet. And sort a you would a TreeSet. And use GnuWin32 on Windows.

Goodbye new open-source project. Perhaps a command line version of Map, SortedMap, and BidiMap?

Update (April 10, 2013): There is still hope for Set.retainAll() (union), Set.removeAll() (intersection)..

Saturday, March 09, 2013

New technology weekend!

Node.js, Redis, MongoDB, Mashery I/O Docs, Google Apps Script...

Thursday, February 21, 2013

Java Enterprise Architecture Requirements: S.P.A.M.M.E.R.S


Section 2 (Common Architectures) of Java EE 5 Enterprise Architect Certified Master Exam has this: Explain the advantages and disadvantages of two-tier/three-tier/multi-tier architectures when examined under the following topics: scalability, maintainability, reliability, availability, extensibility, performance, manageability, and security. That's a lot of architectural requirements and the initial acronym is SMRAEPMS, which does't look easy to remember. Rearranging, we have:

S - scalability
P - performance
A - availability
M - maintainability
M - manageability
E - extensibility
R - reliability
S - security

Here's some spam:


Wednesday, February 13, 2013

My Java Development Tools for a New Computer


- Dropbox
- putty, pageant, puttygen
- winscp
- MySQL
- MySQL Workbench
- Java
- Eclipse
- Google Talk
- Skype

Editors:
- notepad++
- textpad
- HxD
Grep:
- dnGrep
- Windows Grep
Diff:
- Diffmerge - main
- Winmerge
- KDiff3
Zip:
- Winrar
- Winzip
- 7zip
Others:
- GnuWin32
- Chrome/Safari/Opera/Firefox
- Free Download Manager
- Filezilla FTP Client
- RealVNC
- Antivirus

When to use multithreading?

Based on my experiences:

1) When multiple tasks need to be running at the same time.

We created a mobile game where we have individual threads for the music, the graphics update, and for reading the input.

2) When it is beneficial for tasks to be running at the same time.

I needed to communicate with a web service that returns a very large amount of information. There is also a limit to the amount of information that it returns. This can be done serially, requesting chunks of information at a time. Multiple requests can also be done at the same time, so I opted for multithreading, significantly reducing the amount of time to retrieve all the needed information.

Wednesday, January 23, 2013

Alternative(s) to page2rss for large files

Page2rss is my default page monitor, but a big limitation is it does not allow large-sized pages.

I tried the following, I don't know yet if they will be ok:

http://www.wizardrss.com

http://www.fivefilters.org