<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.1" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>KosherJava</title>
	<link>http://www.kosherjava.com</link>
	<description>A weblog about Kosher Coffee (Kosher Java), Zmanim and other odds &#038; ends</description>
	<pubDate>Fri, 18 Jul 2008 04:16:05 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.1</generator>
	<language>en</language>
			<item>
		<title>iZmanim - An Alpha Release of Zmanim for the iPhone</title>
		<link>http://www.kosherjava.com/2008/07/17/izmanim-an-alpha-release-of-zmanim-for-the-iphone/</link>
		<comments>http://www.kosherjava.com/2008/07/17/izmanim-an-alpha-release-of-zmanim-for-the-iphone/#comments</comments>
		<pubDate>Fri, 18 Jul 2008 04:14:55 +0000</pubDate>
		<dc:creator>KosherJava</dc:creator>
		
		<category><![CDATA[Zmanim]]></category>

		<category><![CDATA[Software Dev]]></category>

		<guid isPermaLink="false">http://www.kosherjava.com/2008/07/17/izmanim-an-alpha-release-of-zmanim-for-the-iphone/</guid>
		<description><![CDATA[The release of the iPhone 3G got me thinking about zmanim on the iPhone. While I would eventually like to create a free native iPhone zmanim app, for now I created a simple iPhone web app to test out the UI. While only of alpha quality, the iZmanim web app should properly work on an [...]]]></description>
			<content:encoded><![CDATA[<p><img style="float: left; margin: 10px;" src="/images/izmanim_sm.png"/>The release of the <a href="http://www.apple.com/iphone/">iPhone 3G</a> got me thinking about <em>zmanim</em> on the iPhone. While I would eventually like to create a free <a href="http://www.apple.com/iphone/appstore/">native iPhone</a> zmanim app, for now I created a simple <a href="http://www.apple.com/webapps/">iPhone web app</a> to test out the UI. While only of alpha quality, the <a href="/java-kosherja/zmanim/izmanim.jsp">iZmanim web app</a> should properly work on an iPhone (tested in Safari on Windows and iPhone emulators). These is a settings page that persists changes made. The iZmanim web app was built using the <a href="http://code.google.com/p/iui/">iUI framework</a>. iZmanim can be tested with any <a href="http://webkit.org/">Webkit</a> browser. For the full effect, try it using the <a href="http://iphonetester.com/?url=http://www.kosherjava.com//java-kosherja/zmanim/izmanim.jsp">iPhone Tester</a> on <a href="http://www.apple.com/safari/">Safari</a>. Please note that it will not properly load in IE or Firefox. </p>
<p>If any <a href="http://en.wikipedia.org/wiki/Cocoa_(computing)">Cocoa</a>/<a href="http://en.wikipedia.org/wiki/Objective-C">Objective C</a>/iPhone developers would like to give a hand in developing the native iZmanim, please <a href="/contact/">contact me</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kosherjava.com/2008/07/17/izmanim-an-alpha-release-of-zmanim-for-the-iphone/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zmanim API 1.1 Beta 2 Released</title>
		<link>http://www.kosherjava.com/2008/07/17/zmanim-api-11-beta-2-released/</link>
		<comments>http://www.kosherjava.com/2008/07/17/zmanim-api-11-beta-2-released/#comments</comments>
		<pubDate>Fri, 18 Jul 2008 04:13:16 +0000</pubDate>
		<dc:creator>KosherJava</dc:creator>
		
		<category><![CDATA[Zmanim]]></category>

		<category><![CDATA[Software Dev]]></category>

		<guid isPermaLink="false">http://www.kosherjava.com/2008/07/17/zmanim-api-11-beta-2-released/</guid>
		<description><![CDATA[The second beta release  of the Zmanim API 1.1 is now available on the download page. Changes in this release include additional code refactoring to the refactoring already done in the last few releases.  As in the previous release, included is the zmanimAstronomical-1.1_beta_2.jar, a release that only includes the AstronomicalCalendar class and supporting [...]]]></description>
			<content:encoded><![CDATA[<p>The second beta release  of the <a href="/zmanim-project/">Zmanim API</a> 1.1 is now available on the <a href="/zmanim-project/downloads/">download page</a>. Changes in this release include additional <a href="http://en.wikipedia.org/wiki/Code_refactoring">code refactoring</a> to the refactoring already done in the last few releases.  As in the previous release, included is the <a href="/zmanim/lib/zmanimAstronomical-1.1_beta_2.jar">zmanimAstronomical-1.1_beta_2.jar</a>, a release that only includes the <a href="/zmanim/docs/api/net/sourceforge/zmanim/AstronomicalCalendar.html">AstronomicalCalendar</a> class and supporting classes. As part of the changes, an effort was put in to make the code simpler to port to other languages. This mostly involved moving formatting code out of main classes. The only interface changes were the addition of a few new methods to the <a href="/zmanim/docs/api/net/sourceforge/zmanim/util/GeoLocation.html">GeoLocation</a> class. It is likely that the next release will remove the empty GeoLocation constructor that can lead to inadvertent errors.  This removal might break existing code. I hope to post details about these changes in the near future.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kosherjava.com/2008/07/17/zmanim-api-11-beta-2-released/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zmanim Bug Report from the Land of the Midnight Sun</title>
		<link>http://www.kosherjava.com/2008/05/08/zmanim-bug-report-from-the-land-of-the-midnight-sun/</link>
		<comments>http://www.kosherjava.com/2008/05/08/zmanim-bug-report-from-the-land-of-the-midnight-sun/#comments</comments>
		<pubDate>Fri, 09 May 2008 01:27:29 +0000</pubDate>
		<dc:creator>KosherJava</dc:creator>
		
		<category><![CDATA[Zmanim]]></category>

		<category><![CDATA[Software Dev]]></category>

		<guid isPermaLink="false">http://www.kosherjava.com/2008/05/08/zmanim-bug-report-from-the-land-of-the-midnight-sun/</guid>
		<description><![CDATA[I was recently contacted by Jan Terje Johansen, a developer at Datek Wireless AS in Norway, with an interesting bug report. Datek uses the Zmanim API (the AstronomicalCalendar base class) to allow their clients (the power company and stadiums) to remotely (via a web interface) control streetlights and stadium lights throughout Norway using a wireless [...]]]></description>
			<content:encoded><![CDATA[<p>I was recently contacted by Jan Terje Johansen, a developer at <a href="http://datek.no">Datek Wireless AS</a> in Norway, with an interesting bug report. Datek uses the <a href="/zmanim-project/">Zmanim API</a> (the <a href="zmanim/docs/api/net/sourceforge/zmanim/util/AstronomicalCalculator.html">AstronomicalCalendar</a> base class) to allow their clients (the power company and stadiums) to remotely (via a web interface) control streetlights and stadium lights throughout Norway using a <a href=" http://datek.no/Produkter_Lysstyring.htm">wireless lighting control system</a> that they developed. The zmanim code is used to allow setting the lighting times based on an offset of sunrise/sunset. For the technically curious, they are controlled primarily through <a href="http://en.wikipedia.org/wiki/General_Packet_Radio_Service">GPRS</a>, with <a href="http://en.wikipedia.org/wiki/Short_message_service">SMS</a> as fallback. A version under development uses <a href="http:// www.zigbee.org">ZigBee</a>. The bug encountered was that for <a href="http://en.wikipedia.org/wiki/Troms%C3%B8">Tromsoe (Tromsø)</a>, Norway, as well as other areas within the <a href="http://en.wikipedia.org/wiki/Arctic_Circle">Arctic Circle</a> that experience the <a href="http://en.wikipedia.org/wiki/Midnight_sun">midnight sun</a>, from May 13th to May 17th (the date of last rise of the season in Tromsoe), the zmanim API produced correct sunrise/set times, but the date component (The API returns all times as Java Dates, something that might change with v2.0 of the API that will target <a href="https://jdk7.dev.java.net/"> JDK 7</a> to take advantage of <a href="https://jsr-310.dev.java.net/">JSR-310 Date and Time API</a>) was a day off. For non-automated systems, the date component is not important, but in their case it would cause the lights to go on/off on the wrong day. Jan provided a suggested patch that worked well. The actual fix I used was slightly different because I took advantage of the time spent on fixing the bug to refactor and simplify the code. This change as well as a few other changes are part of the Zmanim 1.1 <a href="/zmanim-project/downloads/">beta release</a> that will likely be released as a final release in a few days. Jan mentioned that:<br />
<blockquote>&#8220;IMHO your API is easily the best and most accurate Open Source sunset/sunrise API out there&#8221;.  He continued:  &#8220;Officially (according to the Norwegian Meteorology Institute), the midnight sunset/sunrise is from May 20 to July 22 in Tromsoe, ie. the complete sun is above the horizon 24 hours. Parts of sun is visible 24 hours a day in Tromsoe from May 18th to July 25th. This is the same as in your calculations.&#8221;  &#8230;  &#8220;I have tested your calculations against other official midnight sunrise/sunset (part of sun) dates in Northern-Norway (North Cape, Hammerfest, Longyearbyen (<a href="http://maps.google.com/maps?q=Longyearbyen&#038;ll=78.508075,15.46875&#038;z=4">78,049762N -15,458252E</a>)) and they are spot on.&#8221;</p></blockquote>
<p> In response to my question regarding his testing of the NOAACalculator versus the USNOCalculator he had an interesting and very practical answer:<br />
<blockquote>&#8220;We prefer to use USNO calculator as it is more in tune with the sunrise/sunset times printed in most newspapers. You see, our experience is that most users don&#8217;t look at the sun to determine sunrise/sunset but read the times in the newspaper. If our times don&#8217;t correspond to the printed ones, something is wrong with our system in their mind.&#8221;</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.kosherjava.com/2008/05/08/zmanim-bug-report-from-the-land-of-the-midnight-sun/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zmanim API 1.1 Release Candidate Available</title>
		<link>http://www.kosherjava.com/2008/04/17/zmanim-api-11-release-candidate-available/</link>
		<comments>http://www.kosherjava.com/2008/04/17/zmanim-api-11-release-candidate-available/#comments</comments>
		<pubDate>Thu, 17 Apr 2008 10:12:59 +0000</pubDate>
		<dc:creator>KosherJava</dc:creator>
		
		<category><![CDATA[Zmanim]]></category>

		<category><![CDATA[Software Dev]]></category>

		<guid isPermaLink="false">http://www.kosherjava.com/2008/04/17/zmanim-api-11-release-candidate-available/</guid>
		<description><![CDATA[A release candidate (RC1) of the Zmanim API 1.1 is now available on the download page. Changes in this release include a slight clean up of the recently released NOAACalculator  code (does not change calculated times), as well as fixes to the date (but not time) of calculations for locations near the arctic circle. [...]]]></description>
			<content:encoded><![CDATA[<p>A release candidate (RC1) of the <a href="/zmanim-project/">Zmanim API</a> 1.1 is now available on the <a href="/zmanim-project/downloads/">download page</a>. Changes in this release include a slight clean up of the <a href="/2008/04/13/fix-to-noaa-sunrisesunset-algorithm/">recently released</a> <a href="/zmanim/docs/api/net/sourceforge/zmanim/util/NOAACalculator.html">NOAACalculator </a> code (does not change calculated times), as well as fixes to the date (but not time) of calculations for locations near the <a href="http://en.wikipedia.org/wiki/Arctic_circle">arctic circle</a>. This date fix builds on the <a href="/2008/02/07/updated-zmanim-jar-released-please-download-the-latest/">February release</a> of the API to fix an arctic circle issue and a similar issue encountered when trying to generate zmanim for locations other than the local timezone. Also included in this release is the <a href="/zmanim/lib/zmanim-1.1.jar">zmanimAstronomical-1.1.jar</a>, a release that only includes the <a href="/zmanim/docs/api/net/sourceforge/zmanim/AstronomicalCalendar.html">AstronomicalCalendar</a> class and supporting classes. There was also some <a href="http://en.wikipedia.org/wiki/Code_refactoring">code refactoring</a> to make the code easier to maintain. A detailed post will follow (hopefully within the next week or so).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kosherjava.com/2008/04/17/zmanim-api-11-release-candidate-available/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Fix to NOAA Sunrise/Sunset Algorithm</title>
		<link>http://www.kosherjava.com/2008/04/13/fix-to-noaa-sunrisesunset-algorithm/</link>
		<comments>http://www.kosherjava.com/2008/04/13/fix-to-noaa-sunrisesunset-algorithm/#comments</comments>
		<pubDate>Mon, 14 Apr 2008 04:01:41 +0000</pubDate>
		<dc:creator>KosherJava</dc:creator>
		
		<category><![CDATA[Zmanim]]></category>

		<category><![CDATA[Software Dev]]></category>

		<guid isPermaLink="false">http://www.kosherjava.com/2008/04/13/fix-to-noaa-sunrisesunset-algorithm/</guid>
		<description><![CDATA[The Zmanim API was developed from the ground up as an API which allows for easy plugging in of different algorithms. The Zmanim API ships with 3 &#8220;Calculator&#8221; implementations.  Two calculators implement the US Naval Observatory&#8217;s algorithm, the SunTimesCalculator and the ZmanimCalculator.  Both produce identical zmanim using slightly different code and are included [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="/zmanim-project/">Zmanim API</a> was developed from the ground up as an API which allows for easy plugging in of different algorithms. The Zmanim API ships with 3 &#8220;<a href="/zmanim/docs/api/net/sourceforge/zmanim/util/AstronomicalCalculator.html">Calculator</a>&#8221; implementations.  Two calculators implement the <a href = "http://aa.usno.navy.mil/">US Naval Observatory&#8217;s</a> algorithm, the <a href="/zmanim/docs/api/net/sourceforge/zmanim/util/SunTimesCalculator.html">SunTimesCalculator</a> and the <a href="/zmanim/docs/api/net/sourceforge/zmanim/util/ZmanimCalculator.html">ZmanimCalculator</a>.  Both produce identical zmanim using slightly different code and are included for comparison. There is also the <a href="/zmanim/docs/api/net/sourceforge/zmanim/util/JSuntimeCalculator">JSuntimeCalculator</a>, an implementation of the <a href="http://www.srrb.noaa.gov/highlights/sunrise/calcdetails.html">NOAA algorithm</a> by <a href="http://www.jstott.me.uk/">Jonathan Stott</a>. I was recently contacted by <a href="http://weeklyshtikle.blogspot.com/">Eliezer Bulka</a> who wanted to know why sunrise/sunset times generated by the NOAA algorithm were about 2 minutes off of the sunrise/sunset times generated by the NOAA <a href="http://www.srrb.noaa.gov/highlights/sunrise/sunrise.html">JavaScript implementation</a> that is the source of the JSuntimeCalculator. To compare apples and apples required modification of the NOAA JavaScript to allow entry of decimal latitude/longitude, and changing the output to display seconds. No change was made to the algorithm itself.  I then ported  the JavaScript directly to Java. This involved nothing more than slight syntax changes between the languages. Once this was done I noticed that the sun rise/set output from the Java port exactly matched the output of the NOAA JavaScript.  Analysis of Jonathan&#8217;s code showed (or at least my interpretation of it did) that there were two areas that caused the difference. Once is that he used a slightly different method of computing the Julian date, a key part of the algorithm. His change includes the time of day as part of the calculation. The net result of this change is that solar time generated using his algorithm varies based on the time of day the calculation is run, something that is incorrect. This means that there can be a discrepancy of up to one calendar day. If the user calculated sunrise at 11:59 PM, sunrise would be calculated for the following day even if the user attempted to calculate it for today. In addition, the other calculations do not match the output of the matching NOAA code. I have deprecated the JSuntimeCalculator and in its place added the <a href="/zmanim/docs/api/net/sourceforge/zmanim/util/NOAACalculator">NOAACalculator</a> that was the result of the direct port of the NOAA code, shoehorned into the Zmanim API Calculator interface. I ran some tests to compare the maximum and minimum discrepancy between the 2 implementations, and  calculations for Lakewood, NJ, latitude 40.0828, longitude -74.2094 show a discrepancy of between a minute and 34 seconds to a minute and 37 seconds for sunrise and sunset across an entire year of sunrise and sunset calculations.  I also compared the USNO algorithm to the new NOAA implementation and ended up with a maximum deviation of less than 30 seconds, something that had been about 1.5 minutes apart previously. While I do believe that the Julian date calculation is a bug, I do not know that this is a case as far as the rest of the calculation, but it is clear that it does not match the NOAA implementation that is was based on, and I recommend that you <a href="/zmanim-project/downloads/">download</a> the latest version that has the new NOAACalculator that fixes this issue. In addition to this fix, an additional patch will be released later this week that will address issues with calculations in the arctic circle. Stay posted for the next post.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kosherjava.com/2008/04/13/fix-to-noaa-sunrisesunset-algorithm/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Technical Information about the Bearing to Yerushalayim Map</title>
		<link>http://www.kosherjava.com/2008/04/07/technical-information-about-the-bearing-to-yerushalayim-map/</link>
		<comments>http://www.kosherjava.com/2008/04/07/technical-information-about-the-bearing-to-yerushalayim-map/#comments</comments>
		<pubDate>Tue, 08 Apr 2008 00:24:59 +0000</pubDate>
		<dc:creator>KosherJava</dc:creator>
		
		<category><![CDATA[Zmanim]]></category>

		<category><![CDATA[Software Dev]]></category>

		<guid isPermaLink="false">http://www.kosherjava.com/2008/04/07/technical-information-about-the-bearing-to-yerushalayim-map/</guid>
		<description><![CDATA[I have been asked a number of questions recently about the directional accuracy of the Bearing to Yerushalayim and Zmanim Map calculations. The rhumb line calculations are very straight forward and I will not spend much time on it in this article. As a side note, for those interested in the subject, I would like [...]]]></description>
			<content:encoded><![CDATA[<p>I have been asked a number of questions recently about the directional accuracy of the <a href="/2007/12/30/bearing-to-yerushalayim-and-zmanim-map/">Bearing to Yerushalayim and Zmanim Map</a> calculations. The <a href="http://en.wikipedia.org/wiki/Rhumb_line">rhumb line</a> calculations are very straight forward and I will not spend much time on it in this article. As a side note, for those interested in the subject, I would like to mention that Rabbi Gavriel Goetz recently published a very comprehensive pamphlet Gevuras Moishe on the subject and it is well worth reading.<br />
My original calculations and implementation of the <a href="http://en.wikipedia.org/wiki/Great_circle">great circle</a> route (geodesic line) used simple <a href="http://en.wikipedia.org/wiki/Spherical_trigonometry">spherical trigonometry</a> to calculate the initial bearing (and distance) based on a sphere using an <a href="http://en.wikipedia.org/wiki/Earth_radius">authalic mean radius</a> of 6371 km. These calculations were very similar to the method used by Rabbi Yehuda Herskowitz&#8217;s article in Yeshurun volume III page 586. This model of the earth is more than accurate enough for these calculations (you would need a very accurate “nose alignment” and the total lack of shukeling to even get within a degree of being correct). Google Maps API, Yahoo Maps and Microsoft’s Live Maps for simplicity sake, all use very similar calculations as mentioned in the <a href="http://cfis.savagexi.com/articles/2006/05/03/google-maps-deconstructed">cfis blog</a> quoting  <a href="http://www.sharpgis.net/">Morten Nielsen</a><br />
<blockquote>Google Maps / Virtual Earth / Yahoo Maps(?) all use a spherical datum based on WGS84. That is, it has the same center, orientation and scale as WGS84, but has no flattening. The radius of the sphere is the same as the semi-major axis of WGS84 (6378137 meters).</p></blockquote>
<p> Using a sphere, all the above mentioned mapping APIs use <a href="Spherical trigonometry">spherical law of cosines</a> formula for the calculations, that yield an <a href="http://www.movable-type.co.uk/scripts/latlong.html">identical result</a> to the more complex <a href="http://en.wikipedia.org/wiki/Haversine_formula">Haversine formula</a>. </p>
<p>Curious how accurate these calculations really are, being based on a perfect sphere and not the <a href="http://en.wikipedia.org/wiki/Oblate_spheroid">oblate ellipsoid/spheroid</a> that the earth actually is, I started looking into the subject a little more. The most accurate current <a href="http://en.wikipedia.org/wiki/Geoid">geoid</a> model of the earth is the <a href="http://en.wikipedia.org/wiki/WGS84">WGS84</a> model.  The geodesist/mathematician <a href="http://en.wikipedia.org/wiki/Thaddeus_Vincenty">Thaddeus Vincenty</a> published the Vincenty formulae for this type of calculation that is said to be accurate to about one-half millimeter, more than adequate for our calculation. <a href="http://www.movable-type.co.uk/">Chris Veness</a> <a href="http://www.movable-type.co.uk/scripts/latlong-vincenty.html">implemented this formula</a> in JavaScript and released it under the LGPL, making it very simple to use. I slightly <a href="http://www.kosherjava.com/maps/glatlng.js">modified</a> his work to allow easier interaction with the Google Maps API. The implementation that I used when I finally published the map on December 30, 2007 uses the Vincenty formula with the WGS84 geoid model (the Vincenty formula can easily be used with different goeiod models). The table below shows a comparison of the results for the initial bearing and distances of the different calculations based an a Lakewood, NJ (latitude: 40.095965&deg;, longitude: -74.22213&deg;) to Har Habayis (latitude: 31.77805&deg;, longitude: 35.235149&deg;) example.</p>
<table border="1">
<tr style="background: #FFFFB3; color: brown;">
<th>Calculation Method</th>
<th>Initial Bearing</th>
<th>Distance</th>
</tr>
<tr style="border-style:solid; border-width:1">
<td>6,371 km (authalic mean radius) sphere using spherical trigonometry</td>
<td style="white-space: nowrap">53.86555&deg;</td>
<td style="white-space: nowrap">9224.67442 km</td>
</tr>
<tr style="border-style:solid; border-width:1">
<td>Google Maps API 6,378.137km (WGS84 equatorial mean radius) sphere using spherical trigonometry</td>
<td style="white-space: nowrap">N/A</td>
<td style="white-space: nowrap">9235.00819 km</td>
</tr>
<tr>
<td>Vincenty formula using a WGS84 geoid</td>
<td style="white-space: nowrap">53.81786&deg;</td>
<td style="white-space: nowrap">9244.61686 km</td>
</tr>
<tr>
<td>rhumb line</td>
<td style="white-space: nowrap">95.37152&deg;</td>
<td style="white-space: nowrap">9891.16074 km</td>
</tr>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.kosherjava.com/2008/04/07/technical-information-about-the-bearing-to-yerushalayim-map/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zmanim Via Instant Messaging Bot</title>
		<link>http://www.kosherjava.com/2008/02/07/zmanim-via-instant-messaging-bot/</link>
		<comments>http://www.kosherjava.com/2008/02/07/zmanim-via-instant-messaging-bot/#comments</comments>
		<pubDate>Fri, 08 Feb 2008 00:22:26 +0000</pubDate>
		<dc:creator>KosherJava</dc:creator>
		
		<category><![CDATA[Zmanim]]></category>

		<category><![CDATA[Software Dev]]></category>

		<guid isPermaLink="false">http://www.kosherjava.com/2008/02/07/zmanim-via-instant-messaging-bot/</guid>
		<description><![CDATA[As hinted at in my previous post , there is a new project underway that uses the Zmanim API in a way that I had never really imagined. Using the Smack API, Michael Kopinsky created the ZmanimBot that allows getting zmanim by instant messaging the ZmanimBot, an internet bot. It currently supports the Google Talk [...]]]></description>
			<content:encoded><![CDATA[<p>As hinted at in my <a href="/2008/02/07/updated-zmanim-jar-released-please-download-the-latest/">previous post</a> , there is a new project underway that uses the Zmanim API in a way that I had never really imagined. Using the <a href="http://www.igniterealtime.org/projects/smack/index.jsp">Smack API</a>, Michael Kopinsky created the <a href="http://zmanimbot.googlepages.com/">ZmanimBot</a> that allows getting zmanim by <a href="http://en.wikipedia.org/wiki/Instant_messaging">instant messaging</a> the ZmanimBot, an <a href="http://en.wikipedia.org/wiki/Internet_bot#IM_and_IRC">internet bot</a>. It currently supports the <a href="http://www.google.com/talk/">Google Talk</a> IM system, but support for other systems might follow. Please be aware that the system is under development and is not always up. Additional information can be found on the <a href="http://zmanimbot.googlepages.com/">ZmanimBot</a> page.</p>
<p><b>Update</b> (April 13, 2008): The ZmanimBot is now available via <a href="www.aim.com">AIM</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kosherjava.com/2008/02/07/zmanim-via-instant-messaging-bot/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Updated Zmanim Jar Released - Please Download the Latest</title>
		<link>http://www.kosherjava.com/2008/02/07/updated-zmanim-jar-released-please-download-the-latest/</link>
		<comments>http://www.kosherjava.com/2008/02/07/updated-zmanim-jar-released-please-download-the-latest/#comments</comments>
		<pubDate>Thu, 07 Feb 2008 20:42:04 +0000</pubDate>
		<dc:creator>KosherJava</dc:creator>
		
		<category><![CDATA[Zmanim]]></category>

		<category><![CDATA[Software Dev]]></category>

		<guid isPermaLink="false">http://www.kosherjava.com/2008/02/07/updated-zmanim-jar-released-please-download-the-latest/</guid>
		<description><![CDATA[In December when developing the Zmanim/Bearing to Yerushalayim map (blog post), I noticed a problem with the code used to generate zmanim. The API returns a Java Date object. Usually only the time is of interest, and the date is ignored, but in some cases (when a timezone offset is specified without using the Olson [...]]]></description>
			<content:encoded><![CDATA[<p>In December when developing the <a href="/maps/zmanim.html">Zmanim/Bearing to Yerushalayim map</a> (<a href="/2007/12/30/bearing-to-yerushalayim-and-zmanim-map/">blog post</a>), I noticed a problem with the code used to generate <a href="/zmanim-project/">zmanim</a>. The API returns a Java Date object. Usually only the time is of interest, and the date is ignored, but in some cases (when a timezone offset is specified without using the <a href="http://en.wikipedia.org/wiki/Zoneinfo">Olson DB name</a> (such as America/New_York) or if the GMT timezone is used for other locations, and the local standard time is calculated as an offset of GMT), the date of the sunset returned was earlier than the sunrise date. This caused zmanim such as <a href="/zmanim/docs/api/net/sourceforge/zmanim/ZmanimCalendar.html#getSofZmanShmaGRA()">Sof Zman Shema</a> for some locations to be incorrect, since the math used was comparing surnise to a sunset on the incorrect date, causing some very odd behavior. Updated files that correct this issue were uploaded to the site on Dec 26th. I was notified today by a developer using the jar, that not all the <a href="/zmanim-project/downloads/">download links</a> were pointing to the updated versions, and this caused issues for his program (a post about his project will be posted in the near future). All the links have now been updated. Since the old code can sometimes generate incorrect zmanim, it is highly suggested that you replace your current jar with the latest version of <a href="/zmanim/lib/zmanim.jar">zmanim.jar</a> (or <a href="/zmanim/release/zmanim.zip">zmanim.zip</a>). </p>
<p>Along with the fix mentioned above, a number of other small fixes were done. These include among other minor issues, fixed, better and simplified XML output from the <a href="/zmanim/docs/api/net/sourceforge/zmanim/AstronomicalCalendar.html#toString()">toString</a> method, better error handling for expected error conditions, that had previously caused errors in the <a href="/zmanim-project/zmanim-calendar-generator/">generations of zmanim</a> for areas in the arctic circle such as <a href="http://en.wikipedia.org/wiki/Thule_Air_Base">Thule, Greenland</a>. In case you are curious, someone did actually try this, and the error logs lead me to find the issue. The IP address used for the request mapped back to the <a href="http://www.thule.af.mil/">Thule Air Base</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kosherjava.com/2008/02/07/updated-zmanim-jar-released-please-download-the-latest/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Bearing to Yerushalayim and Zmanim Map</title>
		<link>http://www.kosherjava.com/2007/12/30/bearing-to-yerushalayim-and-zmanim-map/</link>
		<comments>http://www.kosherjava.com/2007/12/30/bearing-to-yerushalayim-and-zmanim-map/#comments</comments>
		<pubDate>Sun, 30 Dec 2007 17:06:17 +0000</pubDate>
		<dc:creator>KosherJava</dc:creator>
		
		<category><![CDATA[Zmanim]]></category>

		<category><![CDATA[Software Dev]]></category>

		<guid isPermaLink="false">http://www.kosherjava.com/2007/12/30/bearing-to-yerushalayim-and-zmanim-map/</guid>
		<description><![CDATA[
Did you ever fiund yourself unsure of the correct bearing (direction) to Yerushalayim (Jerusalem)? &#160; The new Zmanim/Bearing to Yerushalayim map will help you find it very easily. &#160;The map draws two lines from your location to Yerushalayim. The blue line uses the commonly used (Levush and others)  rhumb line (a straight line on [...]]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://www.kosherjava.com/maps/zmanim.html" height="400" width="520" frameborder="0"></iframe><br />
<br />Did you ever fiund yourself unsure of the correct <a href="http://en.wikipedia.org/wiki/Bearing_%28navigation%29">bearing</a> (direction) to Yerushalayim (Jerusalem)? &nbsp; The new <a href="http://www.kosherjava.com/maps/zmanim.html">Zmanim/Bearing to Yerushalayim map</a> will help you find it very easily. &nbsp;The map draws two lines from your location to Yerushalayim. The blue line uses the commonly used (Levush and others)  <a href="http://en.wikipedia.org/wiki/Rhumb_line">rhumb line</a> (a straight line on a <a href="http://en.wikipedia.org/wiki/Mercator_projection">Mercator projection</a> map), while the green line shows the <a href="http://en.wikipedia.org/wiki/Great_circle">great circle route</a> (Emunas Chachamim and others) on a map. &nbsp; While it appears that the circle line is not a straight line, on a globe, the shortest (and straightest) line between two points follows the great circle route. &nbsp; Future posts will detail the technical aspects of the work involved. &nbsp; For additional information of the correct bearing for tefila, see Rabbi Yehuda Herskowitz&apos;s article in Yeshurun volume III page 586.</p>
<h3>How to Use</h3>
<p>Find your exact location on the map by dragging the marker to your exact location or by clicking anywhere on the map. You can also click on the search button and enter your location (such as &quot;Lakewood, NJ&quot; (the default), &quot;Vilnius, Lithuania&quot;) or just enter a zip code (Canadian or British postal codes work as well) to zoom in on your location. &nbsp; Changing to satellite view and zooming in farther will make the job easier (assuming that you can identify your roof). &nbsp; Once the red marker is centered on your location, click the red marker to show your exact latitude, longitude and bearing to Yerushalayim in an info window. &nbsp; There are two additional tabs that show today&apos;s zmanim. &nbsp; You can click on the &quot;Link&quot; button to refresh the page with the URL that contains coordinates to the currently displayed map with it&apos;s zoom level so that it can be bookmarked or emailed. <br />I would like to thank Rabbi Yehuda Herskowitz for his excellent article and additional information that he provided.</p>
<h3>Known Issues</h3>
<ol>
<li>Zmanim data sometimes fails to show in Firefox. This seems to be a bug the the Google Maps API when dealing with synchronous AJAX calls.</li>
<li>Locations close to 180&deg; from Yerushalayim (Alaska is a good test case) sometimes shows an incorrect rhumb line bearing (though the circle route shows correctly). The information in the info widow is correct. This is a known issue with the Google Maps API </li>
<li>Related to the above issue, sometimes the lines are drawn a &#8220;world away&#8221; and horizontal scrolling of the map is required to see the lines. Again this is a known Google Maps issue</li>
</ol>
<h4>To Do (related to Zmanim)</h4>
<ol>
<li>Support Daylight savings time (supported by the timezone webservice used, but not yet implemented in the map)</li>
<li>Allow changing of the date</li>
<li>Link to a <a href="">yearly calendar</a></li>
<li>Elevation lookup (already available in the yearly calendar)</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.kosherjava.com/2007/12/30/bearing-to-yerushalayim-and-zmanim-map/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zmanim Clock Applet Alpha Release</title>
		<link>http://www.kosherjava.com/2007/11/18/zmanim-clock-applet-alpha-release/</link>
		<comments>http://www.kosherjava.com/2007/11/18/zmanim-clock-applet-alpha-release/#comments</comments>
		<pubDate>Mon, 19 Nov 2007 02:59:51 +0000</pubDate>
		<dc:creator>KosherJava</dc:creator>
		
		<category><![CDATA[Zmanim]]></category>

		<category><![CDATA[Software Dev]]></category>

		<category><![CDATA[Site News]]></category>

		<guid isPermaLink="false">http://www.kosherjava.com/2007/11/18/zmanim-clock-applet-alpha-release/</guid>
		<description><![CDATA[A while ago, Dr. Irv Bromberg mentioned to me, that my Zmanim API was in use in the Astronomical Clock Applet created by Ali Adams. 




























 The applet was a modification to  Antony Pranata&#8217;s clock applet that displayed Islamic prayer times. Apparently the Zmanim API was so flexible that without any modification it was [...]]]></description>
			<content:encoded><![CDATA[<p>A while ago, <a href="http://www.sym454.org">Dr. Irv Bromberg</a> mentioned to me, that my <a href="/zmanim-project/">Zmanim API</a> was in use in the <a href="http://www.geocities.com/aliadams/AstroClock.html ">Astronomical Clock Applet</a> created by Ali Adams. <applet style="float: left; margin: 10px;" id="zmanimApplet" name="zmanimApplet" archive="/zmanim/lib/zmanimApplet.jar, /zmanim/lib/zmanim.jar" code="net/sourceforge/zmanim/applet/ZmanimClock" codebase="." width="300" height="300" alt="Missing Java Runtime Environment 1.2+" vspace="2" hspace="2">
<param name="noonattop" value="true" />
<param name="minuteSecondOnTop" value="true"/>
<param name="backcolor" value="white"/>
<param name="typeface" value="Arial"/>
<param name="fontcolor" value="black"/>
<param name="fontsize" value="12"/>
<param name="hhandcolor" value="black"/>
<param name="mhandcolor" value="black"/>
<param name="shandcolor" value="red"/>
<param name="displayDigital" value="true"/>
<param name="DisplayDate" value="true"/>
<param name="hourcolor" value="darkgray"/>
<param name="nightColor" value="#bbbbbb"/>
<param name="dayColor" value="#eeeeee"/>
<param name="hournumbers" value="true"/>
<param name="hourpoints" value="false"/>
<param name="minutecolor" value="gray"/>
<param name="minutenumbers" value="true"/>
<param name="minutepoints" value="true"/>
<param name="digitalclockfontsize" value="16"/>
<param name="digitalclockfontcolor" value="red"/>
<param name="location" value="Lakewood, NJ"/>
<param name="showlocation" value="true"/>
<param name="latitude" value="40.095965"/>
<param name="longitude" value="-74.222130"/>
<param name="elevation" value="20"/>
<param name="timezone" value="America/New_York"/>
<param name="prayers" value="true"/>
<param name="zmanim" value="AlosHashachar Sunrise SofZmanShmaMGA SofZmanShmaGRA SofZmanTfilaGRA SofZmanTfilaMGA Chatzos MinchaGedola MinchaKetana PlagHamincha Sunset Tzais72 Tzais16Point1Degrees"/></applet> The applet was a modification to  <a href="http://www.antonypranata.com/">Antony Pranata&#8217;s</a> clock applet that displayed Islamic prayer times. Apparently the Zmanim API was so flexible that without any modification it was able to be used for generating &#8220;zmanim&#8221; well beyond anything I had envisioned. At Dr. Bromberg&#8217;s suggestion I modified the clock <a href="http://en.wikipedia.org/wiki/Java_applet">applet</a> to display zmanim. Using the same Google Map API used in the Calendar Generator, I created the <a href="/zmanim-project/zmanim-clock-applet/">Zmanim Clock</a> page. The clock on the Clock page is very configurable, and allows selection of the location, zmanim etc. I contacted Antony Pranata, the original author of the clock who allowed my to release it under the <a href="http://www.fsf.org/copyleft/gpl.html">GPL</a>.  An easy to use downloadable version will be made available in the near future. For those who think that the clock is upside down, there are more than enough configuration options to tweak the clock to your heart&#8217;s content.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kosherjava.com/2007/11/18/zmanim-clock-applet-alpha-release/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
