What's new?

01/15/17 It's been even longer since a code update. But there is a new version of HalfPipe. See More details

10/13/16 It's been a while. At least since I mentioned anything here. I threw together something concerning the election. Since it involves the FBI as well it's on the Online Privacy page.

02/07/16 Just to mention a new page. Moving the Weka related to a separate page of it's own weka.html.

01/10/16 Haven't been marking new stuff for a while since it's been the usual places. More a complete loss of focus to start the year as I am looking again at oil related. Sort of picking up where I left off here

11/22/15 Starting a page for Java 9 related java9

11/15/15 Still need a BTC update, but for now back to Java 9, whats new?

10/19/15 BTC update again. BTC

10/11/15 BTC update again. BTC.

10/04/15 Minor update to bitcoin CLI code. BTC.

09/20/15 Started a bitcoin related coding project based on a Coursera course I'm taking besides just a personal interest. BTC is the page

06/21/15 Start at a Weka parameter optimization subclass of CVParameterSelection. Machine Learning page.

03/29/15 Update to HalfPipe7. Minor Weka related. A couple minor Java 9 related. More details

12/07/14 Replaced the previous cluster number estimator with a gap statistic based version, still on the machine learning page

11/27/14 Weka cluster number estimator on the machine learning page

11/23/14 New Online Privacy page. Will normally be off of the machine learning page probably.

11/09/14 Quickie to the Blackjack code. Minor bug fix.

11/09/14 Senate election related moved to it's own page

10/07/14 Another quick update to the Senate election related. Comparing my Weka probabilities to the FiveThirtyEight ones.

10/04/14 Update to the Blackjack code

10/04/14 Updated numbers for the Senate elections. Machine Learning page.

09/21/14 Even less of an update to the Senate election prediction related. Info at the Machine Learning page.

09/14/14 Just a bit of an update to HalfPipe7 this week. Info at the What's new? link below

09/01/14 To avoid page bloat I'm moving What's new? to it's own page

Election Games 2012

The election is over

Not long between the program available and the election being over. It went more or less as expected. The Swing state simulation favoring Obama looked like it will probably be off four states. Assuming Obama gets Fl>orida which may never be decided. The simulation gave New Hampshire, Nevada, Colorado and Virginia to Romney and these all went to Obama. Going into this simulation and giving Obama the "Women's rights" scenario and then "Deficit" gives a result 100% matching the election outcome. You have to add "Deficit" to take away North Carolina which I think he was competitive in but didn't carry. I have replaced the pre-election Swing simulation with this, assuming Fl., accurate simulation of the election called "Swing Sweep - exact match".

It is my current plan to definitely come out with a improved post-election version of the application. Thanks for the interest.

The 2012 version is available.

On a limited basis ony at this point in time. The OS X dmg includes the new version as a Apple Java 6 JVM application. I planned on going with Java Web Start for all platforms but haven't got that deploying the new databases. A lot of the data is now in Java Derby SQL database tables, there will probably be a separate download for that at some point as the data could be useful standalone outside of the application.

Links A couple directly related to this program as it is for the 2012 version
David Leip's Atlas of U.S. Presidential Elections 2008 version used data from here, 2012 may use current for the same eventually
Vote Ratings 2011 - NationalJournal.com

Related Download

Includes some related use of the National Journal data. Demonstrates how the data could be used separately from the program.

Inspired by the DNC convention I decided to blog Whatever

This is the Presidential election simulation software that the media and the politicians don't want you to know about. Results Image

Results Image The only interactive memorabilia for the presidential election.

Prove that you're the pundit of the office, the clairvoyant of the classroom.

Be the first one on your block to correctly pick the presidential election results of all fifty states plus the District of Columbia.

You decide what issues matter
You decide who they matter for and how much
You decide the states where they matter
You decide the next President of the United States

Election Related Links

This is shareware ($10.95), see it before you even try it, and try it before you buy it. See a applet version

Download the Apple Java 6 JVM OS X application .dmg
Download 7 the openjdk Java 7 JVM application .dmg

Java Web Start The Java Web Start launch
Java Web Start doesn't appear to work Safari on OS X but does with FireFox and so far IE on Wndows XP

EMail: contact

Sunday Sudoku Solver

Finally, a Sunday Sudoku Solver update. This version makes some cosmetic improvements to how the name is shown in the application menu. It also enters the number in a cell when the key is released rather than having to enter the number, having it show with a leading zero and then needing to hit enter. Not sure why I didn't get that last time but that now works right

Having an Apple Developer account I am considering this as my first try at a submission at an App Store submission

An openjdk version or versions will be included to go with that. The Java Web Start deployment may be reconsidered as well.

When the puzzles get tough, the tough get the Sunday Sudoku Solver

SSS Image

Results Image Full featured software that lets you solve the toughest Sunday newspaper Sudoku puzzles.

This is shareware ($10.95), see it before you even try it, and try it before you buy it. See a
applet version

Download the OS X application .dmg

Launch the Java Web Start version. For Windows, other platforms, or if preferred on OS X.

EMail: contact

Official PayPal Seal

Update 11/09/14
Fixed minor bug on split two's incorrectly indicating hit when should be split on dealer's up card of 7.

Update 10/04/14
Fixed a bug in the High Low strategy indicating incorrect wrongs on split decisions with S17 (dealer stands on 17) rule sets. Had a double-whammy, parameters reversed on the call and one them actually was the wrong parameter being passed. The jar for jnlp should be current, the source on github hasn't been updated yet.

Update 08/17/14
Put the source and some old started documentation, I think already provided, on github

Source on GitHub


Back into this some starting 08/12/14.

Blackjack Blastoff Incomplete and buggy. Blackjack program with card counting. Various strategies, hi-lo of course, card counting tips and facts, charts. Play or run simulations. All that eventually. For what is there so far there is a Java Web Start version you could try...

Most of time still going into this. The program has progressed but has a ways to go. Java Web Start version continuously updated. Also starting work on having a couple independent documentation resources available, one with general information on blackjack and card counting. One, more an actual Blackjack Blastoff user guide. A link to the very brief start at the overview doc is below.

Java Web Start (jnlp)
Blackjack (html)
User Guide (pdf)

Earth Image

Tornado Alley

This map plots all tornado occurrences since the 1950's. It is based on data from Tornado History Project.

More on the this here for now. Another in progress thing.

The Turing Machine applet based on the book The Emperor's New Mind that I mentioned in the What's new section above. Basically, you select a program from the programs menu, then enter input and 'Exec' it or 'Step' through it. The UN+1 and UNx2 programs take one number input. The EUC, Euclid's algorithm program requires two numbers. So you sort of have an emulator for the Turing 1 computer. Complete with it's own language and compiler. Not bad for an applet? For more detail on the applet see Turing Machine

Java 7 on OS X

Update 08/17/14

Still not that much progress but pushed the current to github

I seem stuck on the LotsOfEvents test. It is seeming like it might be time to try a somewhat different approach. The current thought is do something based off of VDKQueue supposedly a newer version of the UKKQueue code that I used before. I am thinking I will leave it using notifications this time. I can come up with code to handle those from java like my HalfPipe application handles launch/termination notifications. Maybe this will avoid threading concerns or have other processing efficiencies that will allow it to handle LotsOfEvents better.

Otherwise this time I'm hoping to leave the native code as untouched as possible. One problem there though might be it not handling nested directories. I think I added code to the UKKqueue implementation for this. Since this is supposed to be a better and simplified version of that it probably doesn't include it either.

I did have one other thought for a simple WatchService implementation. Have the native code simply detect if a file system change of interest has occurred and then tell java. Java wakes up the OS X default Polling watch service which processes it immediately. This assumes that watch service can be woke up. Another change it would be nice to implement with that would be slow down as much as possible the normal polling to reduce overhead for that. Rely instead on the native 'wakeup'. It seems like it could be simple and reasonably effective, 'real time', until a better working more full-blown watch service is available.

I also came across SCEvents which is an FSEvents implementation off of Stuart Connolly's implementation which I think indicated was somewhat modeled again off of UKKQueue. But first something working for KQueue would be nice.

Putting more time into this 08/12/14/. Not much new progress yet.

Mac nio.2 platform specific file API extenstions.

Description: Uses JNI and the Java 7 nio.2 API's to provide a kqueue based WatchService and access to Mac OS X filesystem attributes and meta information.
Current OS X supported meta attributes for Finder, Launch Services, NSFileManager, and xattr
The current version is a beta for the kqueue based OS X WatchServic e.

UPDATE: 07.20.13

I have put a little more time into this lately. First trying to get the kqueue WatchService to work with a version of the jdk LotsOfEvents test. It tends to hang and stop posting events to the native queue when the java code starts waiting for more events. It also adds in support for the Apple eio FileManager class. So there is open source support for that if anyone wants its. I added a companion FileHelper class that...
1) Should make accessing trz meta attributes easier if you aren't familiar with the nio.2 api's yet.
2) Adds a couple methods to take advantage of the LaunchServices api's if you want to handle files with some other application.
These api's are largely untested and still need junit tests written. The javadoc has been updated to reflect these changes and slightly improved itself. It probably could still be better.

This is also the first project I have attempted to move to GitHub. URL below.



Project on GitHub


Project update - 06.09.13

I was thinking that these java projects might be better as GitHub opensource ones. Putting them there would also give me a little experience working with and learning git. Having started this with trz I have decided to put a little more time into this particular project. Current to-do list things I might look at now would include...

LotsOfEvents Get the OS X kqueue nio.2 WatchService implementation to work with the jdk LotsOfEvents test. Looking at this it seems like it shouldn't really be all that much effort. The kqueue native code runs off it's own thread so should be able to keep posting out events. The java code would need to be modified to simply queue these into a collection when posted. Then wakeup up the WatchService poller thread to pull from and process this collection. This would be more consistent with existing WatchService implementations. This much I would definitely like to get done this pass through.

This would be a typical command line invocation of this test if I don't have one anywhere else...
/usr/libexec/java_home -v 1.7 --exec java -cp lib/macnio2.jar -Djava.nio.file.spi.DefaultFileSystemProvider=us.hall.trz.osx.MacFileSystemProvider LotsOfEvents

FSEvents Do a implementation of a WatchService based on this. It could be better suited to lots of files and my understanding is that it could capture events even when the java code isn't running. I would like to get into this but am unsure of the effort in getting it to conform to the java api's.

Dropbox I would like to get the custom filesystem providers into new stuff besides the usual reading, writing and arithmetic. Like allow for syncing with Dropbox. This is a 'I would kind of like to get into'.

Journaling Maybe try to support something for this. Maybe native, maybe not. Another 'might like to look at'.

Data policy To determine whether you sync or journal a file you might define a data policy. Maybe based off a xml or json config file. You could possibly make the data policy meta data for the file using OS X extended attributes. These are already supported read only as nio.2 attributes. This might be a reason to add application specific extended attribute update.

Any thoughts on what would interest you in a custom filesystem provider feel free too email me to express such interest.
EMail: contact

If you find the software useful or to support continued development consider a donation.

Half-Pipe - A platform for coding and skateboarding tricks.

Update 9/1/14 Application menu related change. Farther on variable assignment code - More details in the Whats New section

Update 8/24/14 Get FScript interface working again. Updated command.properties with Weka alias's - classifiers and classifier, Updated PDF document

Update 2/20/14 Fix for launch hangs due to openjdk config bug. If the app didn't work for you at Mountain Lion or later, please try it again.

Description: A java command line shell that is my first attempt at a openjdk Java 1.7 application.
It is hoever, an update of a long supported Apple JVM Java application of mine. A full featured java shell with a variety of additional scripting support options.

The shell supports...
command piping, and redirection.
System properties as environment variables
Extended aliasing
Scripted automation (JMX/Rhino)

Scripting languages supported...
JRubyRhino (shipped/mine)
and of course java

All that and a commandline too.


Project Info

If you find the software useful or to support continued development consider a donation.

AppConverter - Convert Apple java applications to openjdk

Last updated 12/11/12

Description: Drag your Apple java applications to the AppConverter application and it will generate the appbundler build.xml file and create the openjdk application.

This should handle most if not all of the necessary work to convert an Apple Java application to an openjdk one. If your application is complicated some manual changes may be required after creating the openjdk one. If you let me know about any of those I can determine if they can be handled more automatically as well.

EMail: contact


Project info

If you find the software useful or to support continued development consider a donation.

Weka on OS X

You can obtain an OS X application bundle from the sourceforge project
Weka---Machine Learning Software in Java
Selecting the download should give you a dmg containing an application bundle for the Oracle JVM. You can simply drag that into your Applications folder to install. This application bundle does not include a embedded JRE. That means you need the 'common', applet, jre installed separately [I think this download Java SE Runtime Environment 7 Downloads]. I also copied the Weka-3-6-10 support folder to the Applications folder. Somewhere else might make more sense.

To include the optional, 3rd party, LibSVM classifier you need to download it from LIBSVM -- A Library for Support Vector Machines. Copy the libsvm.jar file from the Java folder to the Weka application bundle. The path would be the weka-3-6-10-oracle-jvm.app/Contents/Java. Control+click and select "Show Package Contents" to navigate to it. For Oracle AppBundler derived applications all jar files in this location will automatically be in classpath so you're done. You may have to move the bundle out of the Application folder before copying in the libsvm jar if file permissions don't allow update in the Applications folder. I don't remember off-hand, but that shouldn't be too difficult. Then just move it back.

Additional Weka reference


If of interest my personal home page, including some coding is...

I haven't been putting much time into shareware. So far the upcoming presidential election just doesn't interest me as much as the last one. The red shift in the midterm elections was sort of interesting and I was even considering attempting an update to ElectionGames then. But not at the moment.

Gas and Oil prices

A little coding project around oil and gas prices