tag:blogger.com,1999:blog-153798542024-03-05T15:49:43.260-05:00predator timesMy RandomnessAnonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.comBlogger25125tag:blogger.com,1999:blog-15379854.post-47398822500897385102013-09-20T21:37:00.000-04:002013-09-20T21:37:35.003-04:00How to Kill an App in iOS 7<div class="separator" style="clear: both; text-align: center;">
</div>
<div>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZo18F7zJY-FDhGcrioTN8oQwMH9YWYndXPOsT1UB3tLY3NrIq4DtKs6IeJ4j6WVL5s9ALZgnS7kqA8o82u7ZPaOIN4sQAkweosV7hbVataG1gnIQf-6VKTeq58OeFtgWVTXkLbA/s640/blogger-image-969672245.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZo18F7zJY-FDhGcrioTN8oQwMH9YWYndXPOsT1UB3tLY3NrIq4DtKs6IeJ4j6WVL5s9ALZgnS7kqA8o82u7ZPaOIN4sQAkweosV7hbVataG1gnIQf-6VKTeq58OeFtgWVTXkLbA/s640/blogger-image-969672245.jpg" /></a>It's almost the same as before, just a tad faster:</div>
<ol>
<li>Double click the home button</li>
<li>Swipe to the troublesome app</li>
<li>Swipe it up an out of there!</li>
</ol>
<div>
And that's that!<br />
<br />
Hopefully this saves you some frustration when switching to iOS 7 and you're wondering, "What the heck? I can't kill a troublesome app anymore!?"</div>
<div>
<br /></div>
Yes, yes you can.Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-1105754171043606852013-09-04T09:30:00.000-04:002013-09-04T09:30:02.724-04:00Updating Python Scientific Computing Environment on Mac OS 10.8Upgrading an OS is simultaneously awesome and terrifying. Awesome because you are about to get your hands on what, hopefully, will be some fantastic new features! Terrifying because the upgrade will likely break a lot of software on your system, especially development tools.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj24Gl9q5DPiysVcwe5p5cCCW58tdipiM1B-maaV9quaG0K6mJKPTqmsoUPDd2tH5KN9Qef3j1ir3_4_XhniKqS1dJK9KLIXHBJHA2P8UjJE3W2_1_Ou_5N1yL8pkXMPQY88_TUBw/s1600/curious-and-terrified.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="223" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj24Gl9q5DPiysVcwe5p5cCCW58tdipiM1B-maaV9quaG0K6mJKPTqmsoUPDd2tH5KN9Qef3j1ir3_4_XhniKqS1dJK9KLIXHBJHA2P8UjJE3W2_1_Ou_5N1yL8pkXMPQY88_TUBw/s320/curious-and-terrified.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Ooo, I'm intrigued! But is it safe?<br />
(image from <a href="http://www.parents.com/blogs/parents-news-now/2011/08/29/parents-news-now/baby-crazy-scientists-say-baby-fever-is-real/">here</a>)</td></tr>
</tbody></table>
<br />
In my case, I had a pretty good feeling the upgrade from Snow Leopard to Mountain Lion would break many parts of the python scientific computing development environment running on my system. Fortunately, I was going take a hiatus from that kind of development for a while. When I finally picked it back up, everything was working fine, surprisingly! But then I needed to update <a href="http://pandas.pydata.org/">Pandas</a> and <a href="http://ipython.org/">iPython</a>...<br />
<br />
My development environment was built using <a href="http://brew.sh/">Homebrew</a> and <a href="http://www.pip-installer.org/">pip</a>. It's got python, zeromq, numpy, scipy, matplotlib, cython, pandas, ipython, and qtconsole. If you are looking to create an the environment from scratch, check out this <a href="http://www.lowindata.com/2013/installing-scientific-python-on-mac-os-x/">article</a>. It's pretty good. At some point I'll write up what I did. This article focuses on updating your installation.<br />
<br />
<h3>
Happy Path to Updating</h3>
<hr />
<div>
My particular installation has a few more packages installed. So, there are more updates that need to occur. Note that when doing some of the upgrades via pip, other upgrades may get automatically triggered. For instance, upgrading matplotlib will likely upgrade tornado; therefore, you would not need to do so explicitly.</div>
<blockquote class="tr_bq">
<i> 01 brew update # update brew itself<br /> 02 brew upgrade # update all installed packages<br /> 03 pip list # list installed pip packages<br /> 04 pip install --upgrade numpy<br /> 05 pip install --upgrade scipy<br /> 06 pip install --upgrade matplotlib # will likely update tornado for you<br /> 07 pip install --upgrade cython<br /> 08 pip install --upgrade pandas<br /> 09 pip install --upgrade pyzmq<br /> 10 pip install --upgrade pygments<br /> 11 pip install --upgrade ipython # repeat 'til latest version is installed<br /> 12 pip list<br /> 13 ipython qtconsole # test ipython in the GUI<br /> 14 ipython # test ipython in the terminal</i></blockquote>
<h3>
Errors Updating Homebrew</h3>
<hr />
<div>
</div>
Now, it is very likely that the happy path did not work so smoothly (ah, gotta love updates). Firstly, you may have encountered issues with updating homebrew. Oh I don't know, maybe you saw something that said <b><i>error: unable to unlink old '.gitignore' (Permission denied)</i></b>, and several more like it. It kinda looks like this:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEithw5_LRTZbFgdGERn4s7ySswebxbIIPWmWunBznIpvuvH3UDimQ3__RCOxhZkw70EqomSHaXDrCI7YFK77eAxvRnaKnn3y0jrFfjETJ93GnXc7djaDQ5GKD2A3mvaLzrTCQahQw/s1600/brew_update_fail-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="158" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEithw5_LRTZbFgdGERn4s7ySswebxbIIPWmWunBznIpvuvH3UDimQ3__RCOxhZkw70EqomSHaXDrCI7YFK77eAxvRnaKnn3y0jrFfjETJ93GnXc7djaDQ5GKD2A3mvaLzrTCQahQw/s400/brew_update_fail-2.png" width="400" /></a></div>
<br />
Or maybe you got some error stating that <b><i>Your local changes to the following files would be overwritten by merge</i></b>. See my post on <a href="http://dranem05.blogspot.com/2013/09/tips-for-updating-homebrew-woes.html">Updating Homebrew Woes</a> for tips on dealing with various issues. I am going to be brief here. The following commands should solve your Homebrew issues, and you can start on the happy path again.<br />
<blockquote class="tr_bq">
<i> 01 brew doctor<br /> 02 sudo chown -R $(whoami) $(brew --prefix)<br /> 03 cd $(brew --prefix)<br /> 04 git fetch origin<br /> 05 git reset --hard origin/master</i></blockquote>
The <b><i>brew doctor</i></b> command will tell you nearly everything that is wrong. Listen to the doctor and do what she says. The chown command will make sure you, the local user, owns the directory in which brew lives. The last three will reset your brew installation to the master branch (so, if you did actually make local changes, you may want to commit them).<br />
<br />
<h3>
Errors Updating PIP Installed Packages</h3>
<hr />
<div>
</div>
You may have, or will, encounter numerous issues here. Some of them will result from not having updated Xcode and/or Command Line Tools for Xcode (see <a href="http://dranem05.blogspot.com/2013/09/tips-for-updating-homebrew-woes.html">Updating Homebrew Woes</a> for details). Here are a few errors you may encounter and solutions:<br />
<br />
<b> error: /usr/include/zlib.h: No such file or directory</b><br />
<br />
<b> </b><b> </b><i>➜ </i><i>install/update Xcode and/or Command Line Tools for Xcode</i><br />
<br />
<b> </b><b>src/_png.cpp:23:13: fatal error: 'png.h' file not found</b><br />
<br />
<b> </b><b> </b><i>➜ </i><i>brew install libpng</i><br />
<br />
<b> </b><b>various errors installing matplotlib</b><br />
<br />
<b> </b><i>➜ brew install freetype</i><br />
<b> </b><i>➜ brew install libpng</i><br />
<i><br /></i>
<br />
<h3>
Nifty Tools</h3>
<hr />
<div>
</div>
The <i><b>brew outdated</b></i> command will list all installed packages that have available updates. So, you can use this command to estimate how much updating you will be doing, and how much time you might have to devote to this endeavor.<br />
<br />
Unfortunately, pip does not have a similar command. However, Artur Siekielski wrote a <a href="http://code.activestate.com/recipes/577708-check-for-package-updates-on-pypi-works-best-in-pi/">script</a> that can tell you what pip packages are up-to-date or have available updates. I have not used the script, but it could be handy.<br />
<br />
<b>References + Links</b><br />
<div>
</div>
<hr style="-webkit-text-stroke-width: 0px; color: black; font-family: Times; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;" />
<a href="http://www.lowindata.com/2013/installing-scientific-python-on-mac-os-x/">Installing Scientific Python on Mac OS X</a><br />
<a href="http://dranem05.blogspot.com/2013/09/tips-for-updating-homebrew-woes.html">Updating Homebrew Woes</a><br />
<a href="https://github.com/mxcl/homebrew/wiki/troubleshooting">Homebrew Troubleshooting</a><br />
<a href="https://github.com/mxcl/homebrew/wiki/FAQ">Homebrew FAQ</a><br />
<a href="http://code.activestate.com/recipes/577708-check-for-package-updates-on-pypi-works-best-in-pi/">Script to Check for Package Updates on PyPi</a><br />
<br />
<a href="http://pandas.pydata.org/">http://pandas.pydata.org/</a><br />
<a href="http://ipython.org/">http://ipython.org/</a><br />
<a href="http://brew.sh/">http://brew.sh/</a><br />
<a href="http://www.pip-installer.org/">http://www.pip-installer.org</a><br />
<div>
<br /></div>
Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-38134156938502061692013-09-03T09:00:00.000-04:002013-09-04T01:28:17.785-04:00Tips for the Updating Homebrew WoesSometimes you run into something that requires you to update your installed packages. And then... you groan. Why? Because you know that once you attempt to update something, a gigantic can of worms will BURST open. Aaaand you know you are about to sink 3-5 hours updating packages, fixing dependencies, the whole nine.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBH9OwPw3YY_EGCQgXcyWfISsQ29UNBGkkXNC05hNN2OTrZnvCdTtJln6mwhSE7Zid71b-olIYut0yKYDiB6lBJQJEdprkxnJxwm9IdyEaedeg4bMButsqbZAnOIlC-t02A3D4Jw/s1600/brew_update_fail-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="158" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBH9OwPw3YY_EGCQgXcyWfISsQ29UNBGkkXNC05hNN2OTrZnvCdTtJln6mwhSE7Zid71b-olIYut0yKYDiB6lBJQJEdprkxnJxwm9IdyEaedeg4bMButsqbZAnOIlC-t02A3D4Jw/s400/brew_update_fail-2.png" width="400" /></a></div>
<br />
<span id="goog_69060772"></span>
To update brew and installed packages, you usually should only have to do the following commands <span style="font-size: x-small;">(1)</span>:<br />
<blockquote class="tr_bq">
1 brew update # updates brew itself<br />
2 brew upgrade # upgrades all brew installed packages to latest versions</blockquote>
If you are lucky that day, it will work without a hitch! If not, here are some tips:<br />
<br />
<h3>
<b>0. The doctor is your best friend</b></h3>
<hr />
Issue the "brew doctor" command. The doc will tell you what's wrong. Heed the doctor's orders and it will go a long way to reduce frustration.<br />
<br />
<h3>
<b>1. Make sure your brew --prefix directory is owned by you</b></h3>
<hr />
At some point, something will mess with the ownership and permissions on this directory (typically /usr/local) and brew will be unable to write to it. The following command will usually remedy the problem <span style="font-size: x-small;">(2)</span>:<br />
<blockquote class="tr_bq">
1 sudo chown -R $(whoami) /usr/local</blockquote>
This command will run as super user and recursively change ownership of that directory and its contents to you, the local user.<br />
<br />
<h3>
<b>2. A hosed brew installation should be reset</b></h3>
<hr />
Your brew installation may just be completely screwed from the onset. For instance, when you attempt a brew update you may get an error stating (among other things) that <i>"The following untracked working tree files would be overwritten by merge."</i> In this case, reset your brew installation to the master <span style="font-size: x-small;">(3)</span>:<br />
<blockquote class="tr_bq">
1 cd $(brew --prefix)<br />
2 git fetch origin<br />
3 git reset --hard origin/master</blockquote>
<h3>
<b>3. Update your Xcode installation and/or Command Line Tools for Xcode (CLT)</b></h3>
<hr />
Homebrew depends on stuff Xcode/CLT installs. Other packages Homebrew installs depend on stuff Xcode/CLT installs. Updating it is usually a good idea. If you do this by installing Xcode, you still have to do a few more things:<br />
<ol>
<li>Install Xcode from the App Store</li>
<li>Launch Xcode</li>
<li>Accept the License Agreement (most important step, otherwise Xcode is a dud)</li>
<li>Go to Preferences > Downloads</li>
<li>Install/Update Command Line Tools</li>
</ol>
If you see a message like <i><span style="font-family: inherit;">"error: /usr/include/zlib.h: No such file or directory"</span></i> when brewing, that usually means you didn't do steps 2-5 listed above. Get at it.<br />
<br />
I hope these tips save some of you a bit of time and hours of your life back!<br />
<br />
<b>Sources / References</b><br />
<hr />
1. <a href="https://github.com/mxcl/homebrew/wiki/FAQ">Homebrew FAQ</a><br />
2. <a href="https://github.com/mxcl/homebrew/wiki/troubleshooting">Homebrew Troubleshooting</a><br />
3. <a href="http://stackoverflow.com/a/12031907">Reverting to Master Branch</a><br />
<br />
<b>Good Links</b><br />
<hr />
<a href="https://github.com/mxcl/homebrew/wiki/troubleshooting">Homebrew Troubleshooting</a><br />
<a href="https://github.com/mxcl/homebrew/wiki/Homebrew-and-Python">Homebrew and Python</a><br />
<a href="http://brew.sh/">Homebrew Homepage</a><br />
<br />Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com1tag:blogger.com,1999:blog-15379854.post-76592820814605174732013-07-13T10:00:00.000-04:002013-08-06T18:17:36.141-04:00Programming Comcast XFINITY Remote to Logitech Z-5500 Sound System<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: left;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZLNK_9GsTiFf34M9oK9xxqmDrCC-p1pCmW9EqLXHaKkGLB22b7WKxJoId-bg4dGcBYSmTdi_EpkZpHlqjAX157XqrdFST15f6_V1k6qRlbs2eXWFcSaCiKAQ29y55OEUBFKAfZQ/s1600/logitech-z-5500.jpeg" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="241" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZLNK_9GsTiFf34M9oK9xxqmDrCC-p1pCmW9EqLXHaKkGLB22b7WKxJoId-bg4dGcBYSmTdi_EpkZpHlqjAX157XqrdFST15f6_V1k6qRlbs2eXWFcSaCiKAQ29y55OEUBFKAfZQ/s320/logitech-z-5500.jpeg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Straight up BOSS sound system</td></tr>
</tbody></table>
Let's paint the scenario. You have a sound system that is straight up BOSS. It even boasts an optical cable for even more crisp sound. Your TV is this pristine flat screen that can play high definition media like nobody's business. Not to mention, this TV of yours also has plenty of HDMI ports so you can hook up just about anything: XBOX, PlayStation, ROKU, and more! And you just got Comcast XFINITY and all of its HD offerings. Sweet.<br />
<br />
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIaMe5xLb_EpYsXb3pQhINGQ8pscf6R0YA9a1sYtHckgnnh388ohBya2BsEW_bmPxiwDx0gtuboj3EW3AfMWyKH2m8YqV1RKBxUBiemdqY2GL6UTED-7cwxxS1lRIz97dgyVPulg/s1600/Photo+Jul+13,+0+03+31.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIaMe5xLb_EpYsXb3pQhINGQ8pscf6R0YA9a1sYtHckgnnh388ohBya2BsEW_bmPxiwDx0gtuboj3EW3AfMWyKH2m8YqV1RKBxUBiemdqY2GL6UTED-7cwxxS1lRIz97dgyVPulg/s200/Photo+Jul+13,+0+03+31.jpg" width="150" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Exhibit "A"</td></tr>
</tbody></table>
But... you now have a plethora of controllers with which to contend. And if you have housemates... fahgettaboudit. They will be so confused and frustrated, you will have no hope of survival. There will be no end to the grief they give you. And who wants house drama? So, you opt to consolidate all functions into a single controller. However, you are too cheap to buy an awesome universal remote... because the Comcast XFINITY remote <b><i>IS</i></b> a universal remote (see Exhibit "A").<br />
<br />
Great. Now you get to the business of setting up the controller. TV gets programmed easy; no issues there. Then you get to your Logitech Z-5500 Sound System. Aaaaaand that Comcast remote can't recognize it. Not only is there no manufacturer code printed on the controller's user guide, but using the controller to search for your code comes to no avail. Now what?<br />
<br />
Enter secret codes. You'll have to manually program XFINITY remote and map the buttons to the functions you want. Here is the play by play:<br />
<br />
<b>Eligibility</b><br />
<ol>
<li>Do you have patience?</li>
<li>Does your controller look somewhat like exhibit "A"?</li>
</ol>
If you answered yes to those questions, you might just be in luck.<br />
<br />
<b>Test Case: Program the Power button</b><br />
<br />
We are going to try to program the power button. If we can do that, then you have carte blanche.<br />
<br />
<i>Set the controller's AUX mode to accept programming</i><br />
<ol>
<li>Press and release AUX</li>
<li>Press and hold SETUP until the AUX button blinks twice</li>
<li>Enter code 11523</li>
<li>The AUX button should blink twice in confirmation</li>
<li>Repeat if step 4 did not happen</li>
</ol>
<div>
<i>Program the Power button to toggle the Logitech Z-5500 system's power</i></div>
<div>
<br /></div>
<div>
Make sure the logitech system is powered on prior to completing these steps. Also make sure that you point the Comcast controller at the Logitech infrared receiver when entering commands.</div>
<div>
<ol>
<li>Press and release the AUX button</li>
<li>Press and hold SETUP until the AUX button blinks twice</li>
<li>Enter code 9 9 4</li>
<li>Press and release SETUP</li>
<li>Enter code 44485</li>
<li>Press and release the POWER button</li>
<li>The AUX button should blink twice in confirmation</li>
</ol>
<div>
Now, attempt to toggle power on the Logitech sound system. If you can't manipulate power with the controller, attempt to program it again with the above steps. If after a few tries there is no dice, sorry to say but you are SOL. But if it DOES work, read on friend!</div>
</div>
<div>
<br /></div>
<div>
<b>Heavy Lifting: Program the rest of the functions</b></div>
<div>
<br /></div>
<div>
<i>Assign controller buttons to desired functions for the Logitech system</i></div>
<div>
<br /></div>
<div>
To map functions to buttons, you have to repeat the steps written in the previous section for each function you want to map (this is where the patience part kicks in). Step 5 is where you will substitute the code for the function you want. And step 6 is where you will press the button to which you want that function mapped. Below is a table of all the codes, associated functions, and the mapping that I decided to utilize. Feel free to use my mapping or devise your own.<br />
<br /></div>
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: left; margin-right: 1em; text-align: left;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmGGMgIK__Lf6Bla9C8UP119pUp3JU2MIEsUaJI13N01aYEXT-6Jx6hjfMLGujnRmKRyFCHo8ethiW8lZC8J_zbq5ygvSaG-Lmvkks6gm0E_Rj0kmwsEglgkVcOylaZd7wfcL0Gw/s1600/Logitech_Z-5500_Function_Mapping-2.jpg" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmGGMgIK__Lf6Bla9C8UP119pUp3JU2MIEsUaJI13N01aYEXT-6Jx6hjfMLGujnRmKRyFCHo8ethiW8lZC8J_zbq5ygvSaG-Lmvkks6gm0E_Rj0kmwsEglgkVcOylaZd7wfcL0Gw/s320/Logitech_Z-5500_Function_Mapping-2.jpg" width="240" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Logitech functions mapped to XFINITY Remote</td></tr>
</tbody></table>
<table>
<tbody>
<tr><td><b><i>Code</i></b></td><td><b><i>Function</i></b></td><td><b><i>Mapping</i></b></td></tr>
<tr><td valign="top">44485<br />
12229 <br />
28357<br />
61381<br />
61125<br />
60869<br />
60613<br />
62405<br />
61893<br />
44741<br />
28613<br />
29637<br />
27845<br />
12485<br />
12997<br />
61637</td><td valign="top">Power<br />
Vol +<br />
Vol -<br />
Center +<br />
Center -<br />
Surround + <br />
Surround -<br />
Sub +<br />
Sub -<br />
Mute<br />
Direct<br />
Optical<br />
Coax<br />
Effect<br />
Settings<br />
Test</td><td valign="top">Power<br />
Vol +<br />
Vol -<br />
Up Arrow<br />
Down Arrow<br />
Left Arrow<br />
Right Arrow<br />
Ch +<br />
Ch -<br />
Mute<br />
HD ZOOM<br />
TV/VCR<br />
Last<br />
FAV<br />
Menu<br />
Info</td></tr>
<tr><td></td><td></td><td><br /></td></tr>
</tbody></table>
<b><br /></b>
<b><br /></b><br />
<b>Final Tweaks</b><br />
<br />
To limit further confusion with the main volume button... you wan to program the controller so that no matter what mode it is in (CABLE, TV, or AUX), the main volume button will raise or lower volume on the Logitech system, not the TV itself. Trust me, this goes a LONG way to mitigate against confusion from users.<br />
<br />
<i>Lock volume control to AUX mode</i><br />
<ol>
<li>Press and hold SETUP until a red light flashes twice</li>
<li>Enter code 9 9 3 (red light will flash twice)</li>
<li>Press and release AUX (red light for selected device will flash twice)</li>
</ol>
<div>
Now, if you wanted to lock volume control to the TV, you would substitute TV for AUX in the above steps.</div>
<div>
<br /></div>
<div>
<b>FANFARE!</b></div>
<br />
And that's that! If you made it through, tap yourself on the back. While you're at it, get yourself a Klondike bar. You deserve it. Your housemates and family will be happy too! To some degree, heh heh. And bookmark this page! You never know when your cable box will go kaput, Comcast will come replace it, and give you a whole new controller... be ready!!!<br />
<br />
<b>Sources</b><br />
<br />
<a href="http://www.avsforum.com/t/915014/remote-code-for-logitech-z-5500-speakers#post_13063692" target="_blank">Original post</a><br />
<a href="http://www.avsforum.com/t/1291853/z-5500-and-comcast-remote-problems#post_19525631" target="_blank">Codes that almost worked</a><br />
<a href="http://www.avsforum.com/t/1189316/controlling-logitech-z5500-z-5500-with-comcast-remote#post_17385261" target="_blank">Setting the 11523 code</a>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com1tag:blogger.com,1999:blog-15379854.post-29967003063911269792012-12-27T09:00:00.000-05:002012-12-27T09:00:10.891-05:00Curious Case of a Stuck Price QuoteThe number of gotchas you can come across while trading in the financial markets are innumerate. The latest I've come across on my merry journey: the almighty stuck price quote!<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIQFx9RoN5YIMtG71WKDYG6SMgNlkWq-5L2hHHHGNDR7eF2f4K8YUWfdBm4XfopbluAEP5IDbJ1hLKozMpMI062gPnZFx-xPHzbL8In1ZEtoE5LLiCJAmxUDL__cg0DnqYr1hS6Q/s1600/Stuck-Quote.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="125" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIQFx9RoN5YIMtG71WKDYG6SMgNlkWq-5L2hHHHGNDR7eF2f4K8YUWfdBm4XfopbluAEP5IDbJ1hLKozMpMI062gPnZFx-xPHzbL8In1ZEtoE5LLiCJAmxUDL__cg0DnqYr1hS6Q/s400/Stuck-Quote.jpg" width="400" /></a></div>
<br />
BAM! See it? I met this happy traveler back on Thursday, December 6th. There I was, minding my own business and watching the quotes meander as they oft do. Suddenly, I see the bid <b><i>far</i></b> surpass the ask! And what do you think my first thought was? Well, it definitely wasn't, "That can't be right... let's find out what's going on." No, my first thought was more, "Whoa! Quick, adjust my offer price in the off chance it might be real!"<br />
<br />
In the trading world, there are times when you shoot first and ask questions later. Remember the AAPL flash crash in 2010? I do! My long puts got pretty fat with a quickness, and I sold them just as fast. Now with profits safely taken off the table, I had plenty of time to ask questions. This scenario, however, wasn't the same case. No one gobbled up my puts.<br />
<br />
My net liquidating value looked AWESOME. But that was all fake. Now it was important to find out what the deal was so that I could know where the market was actually trading. A quick call to the broker and it was all clear, "Looks like the quote is stuck. I'll report it to the exchange." Did he just say, "stuck?" Better believe it. In fact, that bid price remained at $30.30 for a good long while.<br />
<br />
Moral of this story, watch out for stuck quotes! It is bad news, especially if you wrote a program to handle your trading for you. A stuck quote means could mean your program has a false idea about the state of the world. Add this quirk to the list of errant conditions for which you are checking!Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com2tag:blogger.com,1999:blog-15379854.post-73325633683101296072011-10-09T22:17:00.001-04:002017-10-12T20:52:23.332-04:00How To Obtain The Day of Week Given a Date in Google Spreadsheets<i>UPDATE 2017-10-12:</i><br />
As noted in the comments, there is an even much easier way to do this now!<br />
<br />
<span class=" default-formula-text-color" dir="auto" style="background-color: white; font-family: "inconsolata" , monospace , "arial" , "sans" , sans-serif; font-size: 14px; white-space: pre-wrap;"> =</span><span class=" default-formula-text-color" dir="auto" style="background-color: white; font-family: "inconsolata" , monospace , "arial" , "sans" , sans-serif; font-size: 14px; white-space: pre-wrap;">TEXT</span><span class=" default-formula-text-color" dir="auto" style="background-color: white; font-family: "inconsolata" , monospace , "arial" , "sans" , sans-serif; font-size: 14px; white-space: pre-wrap;">(</span><span dir="auto" style="background-color: white; color: #f7981d; font-family: "inconsolata" , monospace , "arial" , "sans" , sans-serif; font-size: 14px; white-space: pre-wrap;">A1</span><span class=" default-formula-text-color" dir="auto" style="background-color: white; font-family: "inconsolata" , monospace , "arial" , "sans" , sans-serif; font-size: 14px; white-space: pre-wrap;">,</span><span class=" string " dir="auto" style="background-color: white; color: green; font-family: "inconsolata" , monospace , "arial" , "sans" , sans-serif; font-size: 14px; white-space: pre-wrap;">"ddd"</span><span class=" default-formula-text-color" dir="auto" style="background-color: white; font-family: "inconsolata" , monospace , "arial" , "sans" , sans-serif; font-size: 14px; white-space: pre-wrap;">)</span><br />
<br />
At some point Google updated the text function to take formatting parameters which makes this a cinch.<br />
<br />
The old post from 2011-10-09 follows below and is a great introduction to the <b><i>CHOOSE</i></b> function. But don't use it for getting the day of week anymore!<br />
<br />
<hr />
<br />
Google Spreadsheets has a nifty function named <b><i>CHOOSE</i></b> which exhibits behavior like the switch statement programmers all know and love. Basically, it allows one to select an action/value based on some input. This is GREAT!<br />
<br />
I needed to fill cells with the day of the week given a date. There isn't any built-in function that performs this task in Google Spreadsheets right now. But, we can solve this very easily using the <b><i>CHOOSE</i></b> function.<br />
<blockquote>
<span class="Apple-style-span" style="background-color: white; font-family: "arial" , "sans" , sans-serif; font-size: 13px; white-space: pre;">=CHOOSE( weekday(H1), "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat")</span></blockquote>
This formula is very simple:<br />
<br />
<ol>
<li><i><span class="Apple-style-span" style="font-style: normal;">The contents of cell </span>H1</i> holds the date</li>
<li>The function <i style="font-weight: bold;">weekday</i> converts that date to a number from 1 through 7 representing the day of the week (Sunday=1)</li>
<li>This value, in turn, is then used by <i style="font-weight: bold;">CHOOSE</i> to select which value in the subsequent list to use in the current cell</li>
<li>Voila</li>
</ol>
<div>
E... to the Z.</div>
<div>
<br /></div>
<div>
In this case, we are converting dates to days of the week in the format I wanted. Now we can start getting all fancy. Imagine, instead of days of the week, the list of possible values were different formulas to compute some result. The formula to use depends on the value inserted in the first input to <i style="font-weight: bold;">CHOOSE</i>. However, remember that nothing is stopping even this first input from being yet another formula computing a specific result based on the data in particular cells. </div>
<div>
<br /></div>
<div>
With this function, the possibilities are endless!</div>
<div>
<br /></div>
<div>
<i style="font-weight: bold;">Reference:</i> See the second comment on <a href="http://blog.edwards-research.com/2010/04/day-of-the-week-function-for-google-spreadsheets/">this blogpost</a></div>
Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com4tag:blogger.com,1999:blog-15379854.post-35669606099274189872011-09-29T15:11:00.000-04:002011-09-29T15:11:38.273-04:00How to Sign Off of Netflix on PS3The answer will shock you.... it's basically the Konami code:<br />
<ol><li>Start up the Netflix App on your PS3</li>
<li>Go to the instant queue (just scroll to it at the bottom)</li>
<li>Input the following code sequence using your controller:</li>
<ol><li>Up Up</li>
<li>Down Down</li>
<li>Left Right</li>
<li>Left Right</li>
<li>Up Up Up Up (this is the departure from the Konami code)</li>
</ol></ol><div>After doing this, a popup will emerge describing the account currently activated on the PS3 with an option to deactivate it. And Voila.</div><div><br />
</div><div>Crazy...... and no joke, this does work.</div><div><br />
</div><div><b><i>Reference:</i></b> comment by dayanna on this <a href="http://community.us.playstation.com/thread/3348800?start=0&tstart=0">ps3 community thread</a></div>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com2tag:blogger.com,1999:blog-15379854.post-29620224849063254022011-06-22T18:38:00.000-04:002011-06-22T18:38:28.820-04:00Google Spreadsheets Tips: Not Equals, Newlines, And More!If you are like me, sometimes you just want to add a newline within a cell. And other times, you want to check whether item A is NOT EQUAL to item B within a formula. But dangit... how do you do it!? This entry will cover such tips and tricks as I learn more of them (filtering is pretty sweet too). Without further adieu:<br />
<ol><li>Google Spreadsheets Formula Documentation</li>
<li>Not Equals</li>
<li>Newline</li>
<li>Filtering</li>
<li>Give me the value or give me ZERO... no errors PLEASE!!!</li>
</ol><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><b><a href="http://docs.google.com/support/bin/answer.py?answer=82712">Google Spreadsheets Formula Documentation</a></b></div><hr /><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">That's the link to all the formulas available in google spreadsheets <i>(hint: click on the title of this very section)</i>. It is a pain to find just going to google help (strange....). This first tip is golden! Now you know where the formula list is.</div><div><ol></ol></div><b>Not Equals</b><br />
<hr />There are two ways to do not equals:<br />
<div><ol><li>Use the symbol: <></li>
<li>Use the function: NE()</li>
</ol><div>The first one can be used in calls like the following:</div></div><div><ul><li><i>=IF(A2<>"SKIP","Fanfare!","--")</i></li>
<li><i>=SUMIF(B4:B8,"<>2")</i></li>
</ul><div>That first one will print "Fanfare!" in its cell if the contents of A2 is not equal to "SKIP". That second one will will sum the contents of the cells in the range B4 to B8 that are not equal to 2.</div></div><div><br />
</div><div>Pretty sweet huh?</div><div><br />
</div><div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><b>Newline</b></div><hr />Found this one searching google help. Check out this <a href="http://www.google.com/support/forum/p/Google%20Docs/thread?tid=31f9dee982a9ef5a&hl=en">answer</a>.</div><div><br />
</div><div>There are two ways to create a newline within a cell:<br />
<div><ol><li>Use: &CHAR(10)&</li>
<li>Use shortcut: Ctrl+Enter <br />
<i>(i.e., press and hold the <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">ctrl</span> key and then press the <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">enter</span> key)</i></li>
</ol><div>I typically use the second one.</div></div><div><br />
</div><div><div><div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><b>Filtering</b></div><hr />Filtering is pretty dang sweet. It allows you to select specific cells of one column, based on criteria against another column. And if you want to get even more crazy, you can add more column/criteria pairs. In fact, you can even do rows, or both columns AND rows (but your brain might explode... just sayin'.)</div></div></div></div><div><br />
</div>Example:<br />
<br />
<i>=2*sum( filter( C2:C40, C2:C40<>"#N/A") )</i><br />
<br />
This formula will sum all of the values in the column C from rows 2 through 40 where the value within that cell is not equal to #N/A... and then multiply the result by 2. So if we had the following:<br />
<br />
<div><table><tbody>
<tr><td></td><td> <i>C</i> </td></tr>
<tr><td><i>2</i></td><td> 4 </td></tr>
<tr><td><i>3</i></td><td> 2 </td></tr>
<tr><td><i>4</i></td><td> #N/A </td></tr>
<tr><td><i>5</i></td><td> 3 </td></tr>
</tbody></table></div><br />
The answer would be 2*(4+2+3) = 2*9 = 18.<br />
<br />
What filter basically does is return the values for all cells in the first range where the corresponding cell in the criteria range meets the criteria.<br />
<br />
Let's look at another example:<br />
<br />
<i>=2*sum( filter( C2:C40, C2:C40<>"#N/A", D2:D40<>3) )</i><br />
<br />
This formula will sum all of the values in the column C from rows 2 through 40 where the value within that cell is not equal to #N/A and the corresponding cells of column D from 2 through 40 is not equal to 3. The result is then multiplied by 2. So if we had the following:<br />
<br />
<div><table><tbody>
<tr><td></td><td> <i>C</i> </td><td> <i>D</i> </td></tr>
<tr><td><i>2</i></td><td> 4 </td><td> 3 </td></tr>
<tr><td><i>3</i></td><td> 2 </td><td> 0 </td></tr>
<tr><td><i>4</i></td><td> #N/A </td><td> 2 </td></tr>
<tr><td><i>5</i></td><td> 3 </td><td> 9 </td></tr>
</tbody></table></div><div><br />
<br />
<div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">The answer would be 2*(2+3) = 2*5 = 10. </div></div><div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">Mull that one over a bit. But yes, filter is bad @$$.</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"></div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><b>Give me the value or give me ZERO... no errors PLEASE!!!</b></div></div><hr /><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><i>Answer:</i> <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"><b>N( IFERROR( <i>value </i></b><b>) )</b></span><br />
<br />
This combination of functions is magical. It will return 0 if whatever you are trying to do for <i>value </i>bombs big time. But, if it doesn't bomb, this combo will return <i>value</i>.<br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">Why would we want to do this? Check out the following data set:<br />
<br />
</div><div><table><tbody>
<tr><td></td><td> <i>C</i> </td><td> <i>D</i> </td><td> <i>E</i> </td></tr>
<tr><td><i>2</i></td><td> a </td><td> inc </td><td> 3 </td></tr>
<tr><td><i>3</i></td><td> b </td><td> inc </td><td> 1 </td></tr>
<tr><td><i>4</i></td><td> a </td><td> dec </td><td> -2 </td></tr>
<tr><td><i>5</i></td><td> b </td><td> add </td><td> 9 </td></tr>
</tbody></table></div><br />
Okay, so we've got something identified by the letter "a" and something identified by the letter "b". We also have indicators that suggest incrementing (<i>inc</i>), decrementing (<i>dec</i>), and adding (<i>add</i>). In this data set, <i>inc</i> and <i>add</i> mean the same thing. So to get the total amount of a particular item in column C, we need to some the values in column E where the corresponding cells in column D equal <i>inc</i> or <i>add</i>.<br />
<br />
Whew..... got that?<br />
<br />
Let's take the item designated as "b". If we wanted to find the total amount of it, we need two sums:<br />
<br />
<ul><li>sum of all rows in E corresponding to item "b" designated as <i>inc</i></li>
<li><i><span class="Apple-style-span" style="font-style: normal;">sum of all rows in E corresponding to item "b" designated as</span><span class="Apple-style-span" style="font-style: normal;"> </span><span class="Apple-style-span" style="font-style: normal;"><i>add</i></span></i></li>
</ul><br />
So, we filter on column E where column C="b" and where column D="inc". Then we filter again except change "inc" to "add".<br />
<br />
<i>= sum( filter(!E:E,!C:C="b",!D:D="inc") ) + sum( filter(!E:E,!C:C="b",!D:D="add") )</i><br />
<br />
This will gives us the answer 9. Great! Now, if we do the same thing for "a", the answer will be <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">#N/A</span>. Why? Because there are no rows in the data set for item "a" designated as <i>add</i>. So the filter won't return anything, and sum will throw an error. We don't actually care that there were no rows designated as <i>add</i>. In fact, we would just be happy if it returned 0.<br />
<br />
BAM! That's where <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">N( IFERROR( <i>value</i> ) )</span> swoops in like Superman and saves the day (or like Deadpool with guns blasting). If we wrap each sum method in <span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;">N( IFERROR( ) )</span>, we will get the result of 3 for "a". WIN!<br />
<br />
There may be a simpler way. If you know it, holla at me.<br />
<br />
</div></div>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com2tag:blogger.com,1999:blog-15379854.post-59035933281941221192011-06-07T09:00:00.002-04:002011-06-07T09:00:00.567-04:00When do Options Expire?This is a long time coming. I think I've had my reference articles opened in Chrome tabs for a year now (yeah, you read that correctly... one year). So, when do the financial instruments known as options expire? The answer isn't a simple one. It depends on what type of option we're talking about, and potentially on what underlying to which this instrument derives its value. This article aims to distill the answers in as concise a way as possible. Here goes:<br />
<br />
<table style="border: 1px dashed #606060;"><tbody>
<tr><td><b>Option Type</b></td><td><b>Option Frequency</b></td><td><b>Expiration</b> </td><td><b>Last Trading Opportunity</b></td><td><b>Settlement</b> </td><td><b>Reconciled</b> </td><td><b>Proviso</b></td></tr>
<tr><td colspan="7" style="border-bottom: 2px solid #606060;"></td></tr>
<tr><td>Equity </td><td>Weekly </td><td>Friday </td><td>Fri @ 16:00H </td><td>Fri @ 16:00H</td><td>Fri @ 17:00H</td><td></td></tr>
<tr><td colspan="7" style="border-bottom: 1px dashed #606060;"></td></tr>
<tr><td>Equity </td><td>Monthly </td><td>Saturday following the third Friday of the month</td><td>Fri @ 16:00H </td><td>Fri @ 16:00H</td><td>Sat @ 17:00H</td><td></td></tr>
<tr><td colspan="7" style="border-bottom: 1px dashed #606060;"></td></tr>
<tr><td>Index (PM) </td><td>Weekly </td><td>Friday</td><td>Thu @ 16:00H </td><td>Fri @ 16:00H</td><td>Fri @ 17:00H</td><td></td></tr>
<tr><td colspan="7" style="border-bottom: 1px dashed #606060;"></td></tr>
<tr><td>Index (PM) </td><td>Monthly </td><td>Saturday following the third Friday of the month</td><td>Thu @ 16:00H </td><td>Fri @ 16:00H</td><td>Sat @ 17:00H</td><td></td></tr>
<tr><td colspan="7" style="border-bottom: 1px dashed #606060;"></td></tr>
<tr><td>Index (AM) </td><td>Weekly </td><td>Friday</td><td>Thu @ 16:00H </td><td>Fri @ AM </td><td>Fri @ 17:00H</td><td>Settlement computed once all opening prices of all underlyings that represent this index are recorded</td></tr>
<tr><td colspan="7" style="border-bottom: 1px dashed #606060;"></td></tr>
<tr><td>Index (AM) </td><td>Monthly </td><td>Saturday following the third Friday of the month</td><td>Thu @ 16:00H </td><td>Fri @ AM </td><td>Sat @ 17:00H</td><td>Settlement computed once all opening prices of all underlyings that represent this index are recorded</td></tr>
</tbody></table>*All times above are Eastern Standard Time (EST)<br />
<br />
Allowing the option to expire "worthless" is a bad idea if the price is anywhere near the strike. Due to settlement and reconciliation processes, the option you thought was out-of-the-money may actually end up being in-the-money (and vice-versa). This is particularly bad if you are unhedged in a short position or don't have the funds in an account where a long position is automatically exercised.<br />
<br />
<b>Other Facts</b><br />
<hr /><i><b>American Style Exercise:</b> Options can be exercised anytime before expiration<br />
<b>European Style Exercise:</b> Options can only be exercised at expiration</i><br />
<ul><li>When holidays occur, last trading dates and index settlements get pushed earlier one day (as expected)</li>
<li>Equity Options have American Style Exercise</li>
<li>Index Options have European Style Exercise -- some are American</li>
</ul><br />
<b>Sources</b><br />
<hr /><a href="http://www.stock-market-links.com/review.asp?aid=519">Options Expiration and Exercise</a><br />
<a href="http://www.888options.com/help/faq/expiration.jsp">Options Expiration FAQ</a><br />
<a href="http://www.cboe.com/learncenter/glossary.aspx">CBOE Glossary</a><br />
<a href="http://www.investorplace.com/5749/options-expiration-options-dont-expire-on-friday/">Options Don't Expire on Fridays</a><br />
<a href="http://www.cboe.com/micro/weeklys/questions.aspx#2">What are the terms of Short-Term Options?</a>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com2tag:blogger.com,1999:blog-15379854.post-52576184041508726582011-06-05T12:53:00.000-04:002011-06-05T12:53:59.926-04:00How to Permanently Delete Images in iPhotoDid you know... iPhoto has it's own trash can!? Yup! Like you, I did not realize this fact. iPhoto does so many things under the hood, it's hard to know what exactly is going on. Did you know that if you do red-eye removal on a photo, a new copy of that photo is made? iPhoto wants to make sure the original photo stays intact so that we, the users, may always have access to it. Okay, let's get on with the purpose of this post.<br />
<br />
<i>Album:</i><br />
<ul><li>Is a "view" on the photos in your library</li>
<li>Think of albums as "Labels" in GMail</li>
<ul><li>many labels (albums) can point to the same e-mail (photo)</li>
<li>you can create as many labels (albums) as you want</li>
<li>deleting a photo from an album is akin to removing a GMail label from an e-mail -- that e-mail (photo) is simply removed from that view (label/album), but the e-mail still exists in your library</li>
<li>deleting a label (album) does not delete your e-mails (photos); it only removes the association</li>
</ul></ul><div><i>Library:</i></div><div><ul><li>all of your photos</li>
<li>deleting a photo in your library moves it to iPhoto's trash -- i.e., it still exists</li>
</ul><div><br />
So far, I hope the distinctions have been clear between deleting a photo in an album versus deleting a photo in your library. Once you have deleted a photo in your library (and it has been moved to the trash), you must <b><i>EMPTY THE TRASH</i></b> to permanently remove the photo from your computer. There are three ways to do this:</div></div><div><br />
</div><div><b>1. Use the main menu bar</b><br />
<hr /></div><div><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmd4jlUwIVV0azAw2W9SYTVaIvRQ3jzj3_6jgdOmzyQHnFQUdKW4AnvsfIrM3XaWLl_l-X9RSGCUMYMeDQcOgzhvv0l2xQz-rSz6fOCEHQ67Q7D2ve322amgysOcZYaO7VvwAsBQ/s1600/empty-trash-one.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmd4jlUwIVV0azAw2W9SYTVaIvRQ3jzj3_6jgdOmzyQHnFQUdKW4AnvsfIrM3XaWLl_l-X9RSGCUMYMeDQcOgzhvv0l2xQz-rSz6fOCEHQ67Q7D2ve322amgysOcZYaO7VvwAsBQ/s320/empty-trash-one.png" width="254" /></a></div><div>a) click on "iPhoto" in the main menu</div><div>b) click on "Empty Trash"</div><div>c) FANFARE!!!<br />
<br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><b>2. Use the trash icon</b><br />
<hr /></div><div><br />
</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9VrJ0GETnPHbf-PVWC6_hkpek0iaDF97GwU8FuFLu7zpFw-4SvRklkxX_W1wnxJ6WYjnXxxIm0Q_WYrGZQeLeOffT56JNzNGvyLiPhyZ4ASTAdpiBVNL5a1XEjzrDG70MIFy9kA/s1600/empty-trash-two.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9VrJ0GETnPHbf-PVWC6_hkpek0iaDF97GwU8FuFLu7zpFw-4SvRklkxX_W1wnxJ6WYjnXxxIm0Q_WYrGZQeLeOffT56JNzNGvyLiPhyZ4ASTAdpiBVNL5a1XEjzrDG70MIFy9kA/s1600/empty-trash-two.png" /></a></div><div>a) look under "Recent"</div><div>b) right click on "Trash"</div><div>c) select "Empty Trash"</div><div>d) FANFARE!!!</div><div><br />
</div><div><br />
</div><div><i><br />
</i><br />
<i>(Note: the icon will appear under "Recent" if you've recently viewed/emptied trash)</i></div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><b>3. Use a shortcut</b><br />
<hr /></div><div><br />
</div><div>a) make sure you haven't selected any images anywhere</div><div>b) press shift-command-delete</div><div><br />
</div><div><br />
</div>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com1tag:blogger.com,1999:blog-15379854.post-63905277927992320582011-05-07T10:00:00.003-04:002011-05-24T19:44:43.783-04:00My Country Music ExperimentCountry music gets a gigantic load of hate, primarily from us city dwellers. And I can't count myself outside of that hating crowd! At least... up until I finally made good on my word to give country a chance. It must have been six or so years ago when I realized, "Man, you've been broadening your music tastes across the board... and you STILL haven't given country a fair shot!" And there that thought lingered -- in the distant recesses of my mind. <br />
<br />
Then, maybe about two months ago, I got a tip that the NCAA Wrestling Championships were on ESPN2. Jumping out of my seat I rushed to that sweet HDTV and frantically flipped through hunting for the channel. Soon it dawned on me... we don't have that channel (dag...NAMIT!). The channel I landed on was some country music channel. I thought, "Meh, might as well leave it on in the background. I have been planning to give country a shot for who knows how long now." So began my experiment...<br />
<div><br />
</div><div>The majority of the music I heard, I did not like (no shocker there). But surprisingly, there were quite a few I did like! I mean, I expected there to be close to zero; instead there were more like ten! So, on to the next phase. <a href="http://www.pandora.com/">PANDORA</a> TIME! I seeded a new station with three tracks:</div><div><ol><li><a href="http://www.amazon.com/My-Kinda-Party/dp/B00480680O?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">My Kinda Party</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B00480680O" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /> by Jason Aldean</li>
<li><a href="http://www.amazon.com/Save-Horse-Ride-Cowboy/dp/B002QHBC9S?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">Save A Horse [Ride A Cowboy]</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B002QHBC9S" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /> by Big & Rich</li>
<li><a href="http://www.amazon.com/This/dp/B0043TGBAW?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">This</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B0043TGBAW" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /> by Darius Rucker</li>
</ol><div>Here is a YouTube video for My Kinda Party:</div></div><div><br />
</div><div class="separator" style="clear: both; text-align: center;"><object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://2.gvt0.com/vi/isLqoB3v_wI/0.jpg" height="266" width="320"><param name="movie" value="http://www.youtube.com/v/isLqoB3v_wI&fs=1&source=uds" /><param name="bgcolor" value="#FFFFFF" /><embed width="320" height="266" src="http://www.youtube.com/v/isLqoB3v_wI&fs=1&source=uds" type="application/x-shockwave-flash"></embed></object></div><div><br />
</div><div>Two months and numerous thumbed down tracks later, I'm still digging this <a href="http://www.pandora.com/?sc=sh475268780223392285">station</a>! The seeds worked great, and cutthroat curating is keeping it on point. What I've gleaned is that country nowadays is not like the country of before (and that country music fans are EXTREMELY stoked about bringing new people into the fold). Technically, I hear that the stuff I seem to have fallen for is country "pop" music. And, it is HARD to stay seated when the good stuff comes on!</div><div><br />
</div><div>Now if Pandora didn't exist, there's no way I would have really followed through on giving country music a chance. But Pandora makes it way easy. All I had to do was seed and thumb up or down the tracks it began playing. All the while, the algorithm powering Pandora gets smarter, converging on the type of country striking my fancy and playing more and more aligned picks. It's great! And if you haven't started using Pandora yet... get on it!</div><div><br />
</div><div>My experiment has revealed so far that country music pretty much revolves around the following:<br />
<ol><li>Keepin' it real</li>
<li>Embracing your humanness</li>
<li>Complimenting a woman every chance you get</li>
<li>Standing tall for what you believe in (don't back down)</li>
</ol></div><div>You can't go wrong with that! All four are realized in various styles of play. I'm a fan of the faster, more upbeat styles with some serious drum beats. The style makes it hard for a brother to remain seated. The music is MAD enjoyable. The storytelling is so genuine and somewhat innocent you can't help but get sucked in, and not to mention unintentionally HILARIOUS in quite a few songs. The music definitely about living life to the max and being real while pursuing that endeavor... ALL IN PEOPLE. You gotta have a great time and make the most of life, and you gotta do it with those whom you are close. In addition, let's not forget moments of pure chillin'.</div><div><br />
</div><div>And maaaaan, the women must feel like they're on cloud 9 all the time. For real! In nearly every genre of music women are talked up. But in the country songs I dig, women are pretty much (all in a good way) the most precious, beautiful, wild, dangerous, independent, exotic, amazing entities to ever exist. In addition, the lady is complimented with such clever use of words it reminded me of the days of good R&B where you <i>knew</i> the artists were singing about some intimate details but done in such a dressed up way it was straight beautiful and beyond smooth.</div><div><br />
</div><div>So, country music gets my thumbs up. I'm all about music that is great fun, gets you moving, and tells a great story or hits on real topics. Music lately has been moving away from that, so this was a refreshing breath of air and vitality. Give country a try! And use Pandora to do it -- makes finding your niche a cinch.</div><div><br />
</div><div>In addition to My Kinda Party mentioned earlier, here's a list of some of my current favorites with a bulleted shortlist below the widget. Click on the widget to see the longer list and play samples.</div><div><br />
</div><div style="text-align: center;"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab" height="280px" id="Player_93d2cacc-4a6a-4c2a-a90c-f3545a1d7563" width="336px"> <param NAME="movie" VALUE="http://ws.amazon.com/widgets/q?rt=tf_w_mpw&ServiceVersion=20070822&MarketPlace=US&ID=V20070822%2FUS%2Fdranem05com-20%2F8014%2F93d2cacc-4a6a-4c2a-a90c-f3545a1d7563&Operation=GetDisplayTemplate"><param NAME="quality" VALUE="high"><param NAME="bgcolor" VALUE="#FFFFFF"><param NAME="allowscriptaccess" VALUE="always"><embed src="http://ws.amazon.com/widgets/q?rt=tf_w_mpw&ServiceVersion=20070822&MarketPlace=US&ID=V20070822%2FUS%2Fdranem05com-20%2F8014%2F93d2cacc-4a6a-4c2a-a90c-f3545a1d7563&Operation=GetDisplayTemplate" id="Player_93d2cacc-4a6a-4c2a-a90c-f3545a1d7563" quality="high" bgcolor="#ffffff" name="Player_93d2cacc-4a6a-4c2a-a90c-f3545a1d7563" allowscriptaccess="always" type="application/x-shockwave-flash" align="middle" height="280px" width="336px"></embed></OBJECT> <noscript>&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;A HREF="http://ws.amazon.com/widgets/q?rt=tf_w_mpw&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;ServiceVersion=20070822&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;MarketPlace=US&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;ID=V20070822%2FUS%2Fdranem05com-20%2F8014%2F93d2cacc-4a6a-4c2a-a90c-f3545a1d7563&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;Operation=NoScript"&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;Amazon.com Widgets&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;/A&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;</noscript></div><div><ul><li><a href="http://www.amazon.com/Shes-Country/dp/B001ZWPPNO?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">She's Country</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B001ZWPPNO" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /> by Jason Aldean</li>
<li><a href="http://www.amazon.com/Picture-Of-Me/dp/B003M4ECNW?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">Picture Of Me</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B003M4ECNW" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /> by Lee Brice</li>
<li><a href="http://www.amazon.com/What-Was-I-Thinkin/dp/B000SXM3HM?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">What Was I Thinkin'</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B000SXM3HM" style="border-bottom-style: none !important; border-color: initial !important; border-left-style: none !important; border-right-style: none !important; border-top-style: none !important; border-width: initial !important; cursor: move; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important;" width="1" /> by Dierks Bentley</li>
<li><a href="http://www.amazon.com/What-Country-Is/dp/B002QVEXGI?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">What Country Is</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B002QVEXGI" style="border-bottom-style: none !important; border-color: initial !important; border-left-style: none !important; border-right-style: none !important; border-top-style: none !important; border-width: initial !important; cursor: move; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important;" width="1" /> by Luke Bryan</li>
<li><a href="http://www.amazon.com/Southern-State-Of-Mind/dp/B0043TE8RK?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">Southern State Of Mind</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B0043TE8RK" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /> by Darius Rucker</li>
<li><a href="http://www.amazon.com/Gimmie-That-Girl/dp/B003Y3HG98?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">Gimmie That Girl</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B003Y3HG98" style="border-bottom-style: none !important; border-color: initial !important; border-left-style: none !important; border-right-style: none !important; border-top-style: none !important; border-width: initial !important; cursor: move; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important;" width="1" /> by Joe Nichols</li>
<li><a href="http://www.amazon.com/Smoke-A-Little/dp/B001UXP71S?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">Smoke A Little Smoke</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B001UXP71S" style="border: none !important; margin: 0px !important; padding: 0px !important;" width="1" /> by Eric Church</li>
<li><a href="http://www.amazon.com/Love-Like-Crazy/dp/B003M4DBIE?ie=UTF8&tag=dranem05com-20&link_code=btl&camp=213689&creative=392969" target="_blank">Love Like Crazy</a><img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=dranem05com-20&l=btl&camp=213689&creative=392969&o=1&a=B003M4DBIE" style="border-bottom-style: none !important; border-color: initial !important; border-left-style: none !important; border-right-style: none !important; border-top-style: none !important; border-width: initial !important; cursor: move; margin-bottom: 0px !important; margin-left: 0px !important; margin-right: 0px !important; margin-top: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; padding-right: 0px !important; padding-top: 0px !important;" width="1" /> by Lee Brice</li>
</ul></div>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-16239515250997987782011-04-01T09:30:00.007-04:002011-04-01T09:30:02.455-04:00Integrating Eclipse, Subversion, and JIRA Studio on a MacAnother one for my fellow fully integrated development environment junkies. Continuing on with the mantra, "My tools should work for me, not the other way around," this post will discuss how to integrate Subversion and JIRA Studio into Eclipse 3.6 Helios in order to facilitate development and streamline workflow. This was done on a Mac running OS X version 10.6.7.<br />
<br />
Some background, JIRA Studio is the hosted version of the JIRA issue tracking and project management suite. Of all the issue tracking tools I've used (Bugzilla, Trac, Redmine, and others), JIRA handily surpasses them all. The Studio instance also integrates many of Atlassian's other products into one integrated suite that is beyond sweet (no pun intended).<br />
<br />
Alright, let's get on to it!<br />
<br />
<b><span class="Apple-style-span" style="font-size: large;">Installing/Updating Eclipse</span></b><br />
<hr />Download the latest eclipse installation per your requirements. I installed the OS X 64-Bit Java EE version which can be found here:<br />
<ul><li><a href="http://www.eclipse.org/downloads/">http://www.eclipse.org/downloads/</a></li>
</ul>Save the file and move to wherever you want to extract it (/Applications/eclipse/ is not a bad idea).<br />
<ul><li>gunzip <<i>eclipse-version.tar.gz></i><name downloaded="" file="" of="" tar.gz="" the="" you=""></name></li>
<li>tar -xvf <<i>eclipse-version.tar></i><name file="" of="" tar="" the=""></name></li>
</ul>These commands will extract the contents into a folder likely named eclipse. I suggest renaming that folder to be representative of the installation.<br />
<ul><li>mv eclipse eclipse-jee-helios-64</li>
</ul>Launch Eclipse and select a workspace. <br />
<br />
If you were using an older version of Eclipse, most of your workspace configurations are contained within the workspace and will be carried over. You will, however, need to re-download any plugins. Most plugins would need to be updated anyway due to the new version of Eclipse. Do this by going to "Help" on the main Eclipse menu bar and selecting "Eclipse Marketplace" or "Install New Software". With the latter, you will need to add update sites manually.<br />
<br />
<b><span class="Apple-style-span" style="font-size: large;">Installing JavaHL </span></b><br />
<b><span class="Apple-style-span" style="font-size: large;"></span></b><i>(Required for Subclipse)</i><br />
<hr />In order for Subclipse to work, it requires JavaHL (Java bindings to Subversion) to be installed. Visit <a href="http://subclipse.tigris.org/wiki/JavaHL">http://subclipse.tigris.org/wiki/JavaHL</a> for more background. I've come across two ways to realize this step:<br />
<ol><li>Via MacPorts</li>
<li>Via CollabNet</li>
</ol><div>The former avoids the off putting user registration/verification step required by the latter. But if the target system does not already have MacPorts installed, then a rather involved process will follow if using option 1. Otherwise, if MacPorts is already installed, option 1 is likely the better alternative with regards to keeping the target system updated and current.<br />
<br />
</div><div><i><span class="Apple-style-span" style="font-size: large;">Via Option 1:</span></i></div><div><ul><li><a href="http://matthew.mceachen.us/blog/how-to-set-up-native-subversion-javahl-with-subclipse-on-mac-os-x-332.html">Instructions for Installing MacPorts</a></li>
<li><a href="http://guide.macports.org/#installing">Instructions for Installing JavaHL via MacPorts</a></li>
</ul><div>However, the <a href="http://subclipse.tigris.org/wiki/JavaHL">JavaHL Subclipse Wiki Entry</a> does indicate that using MacPorts may result in a loading error from Subclipse if the target system is utilizing the native 64-bit JVM provided on Snow Leopard. The wiki claims this is due to MacPorts compiling the JavaHL packages as 32-bit binaries. Option 2 includes binaries for both 32-bit and 64-bit architectures and thus circumvents this issue.<br />
<br />
</div><div><i><span class="Apple-style-span" style="font-size: large;">Via Option 2:</span></i></div></div><div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"><br />
Note that after installation, we will augment the path such that this new Subversion installation is the one first found by any callers. In other words, the native Subversion binaries of OS X will still remain, just frog jumped.</div><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"></div><ol><li>Go to <a href="http://www.open.collab.net/downloads/community/">http://www.open.collab.net/downloads/community/</a></li>
<li>If don't already have an account, you will have to create one (it's free).</li>
<li>Download the Universal Subversion binaries for your version of OS X.</li>
<li>Double-click on the .dmg file.</li>
<li>Double-click on the package that appears and follow instructions to complete installation (not different from typical installation procedures of .dmg distributions).</li>
<li>Issue the following command in a terminal window to frog jump these binaries in front of the native OS X Subversion installation:</li>
<ul><li><b><i>export PATH=/opt/subversion/bin:$PATH</i></b></li>
</ul></ol><div>Both of the following items can be installed via the Eclipse Marketplace. However, you have less control over the version you want to install. So, the following the descriptions utilize the non-marketplace method. This involves adding a plugin's "update site" to your Eclipse installation.<br />
<br />
</div><div><b><span class="Apple-style-span" style="font-size: large;">Installing Subclipse</span></b></div><hr /><div>It is TREMENDOUSLY important that you install the version of Subclipse matching your version of Subversion. In addition, if you plan on utilizing multiple Subversion tools to interact with your local copy of the repository, all should be using the same version.<br />
<br />
</div><div>The Subclipse update sites can be found on the <a href="http://subclipse.tigris.org/">Tigris site</a>. I've listed a couple here for your convenience:</div><div><ul><li>http://subclipse.tigris.org/update_1.6.x Subversion 1.6.x</li>
<li>http://subclipse.tigris.org/update_1.4.x Subversion 1.5.x</li>
</ul></div></div><div><div><br />
<i><span class="Apple-style-span" style="font-size: large;"><span class="Apple-style-span" style="font-size: small; font-style: normal;"></span>Add the update site to Eclipse:</span></i></div><div><ol><li>Click on "Help" on the main Eclipse menu bar</li>
<li>Select "Install New Software"</li>
<li>Click on the "Add" button on the top right of the dialogue window</li>
<li>Enter an optional name like "Subclipse 1.6.x" and enter the 1.6.x update site (listed above) in the "location" text field</li>
<li>Click "Ok"</li>
<li>Now select the update site from the menu and click on next.</li>
</ol></div><div>You will see several items appear with check boxes to select software.<br />
<br />
You can select everything, or just the items you need. Make sure that anything labeled "required" is checked. Items having a dimmed connector icon are already installed and need not be checked.</div></div><ol><li>Click next and keep on following the instructions and accepting the license agreements</li>
<li>After installation completes, opt to restart Eclipse</li>
</ol><i><span class="Apple-style-span" style="font-size: large;">Check that Subclipse operates with JavaHL: </span></i><br />
<ol><li>Go to "Eclipse > Preferences..."</li>
<li>Expand "Team"</li>
<li>Click on "SVN"</li>
</ol>If there is no error from clicking on "SVN", then aside from your personal preferences the installation and configuration should be complete.<br />
<br />
<b><span class="Apple-style-span" style="font-size: large;">Installing the Atlassian Eclipse Connector</span></b><br />
<hr />The following are the connector's update sites:<br />
<ul><li>http://update.atlassian.com/atlassian-eclipse-plugin/e3.6</li>
<li>http://update.atlassian.com/atlassian-eclipse-plugin/e3.5</li>
</ul><div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;">Use the link below if you want the connector that still includes Crucible and Fisheye support (works for both Eclipse 3.5 and 3.6):</div><div><ul><li>http://update.atlassian.com/atlassian-eclipse-plugin/2.3.0/e3.5</li>
</ul></div><div>Follow the same procedure as outlined in "Installing Subclipse" to get the Atlassian Eclipse Connector plugin installed. Again, opt to restart Eclipse after installation.</div><div><br />
</div><div><i><span class="Apple-style-span" style="font-size: large;">Connect Atlassian Eclipse Connector to JIRA</span></i></div><div><ol><li>Launch Eclipse</li>
<li>If you have the default workbench layout in Eclipse, then a "Task" panel should appear in the upper left</li>
<li>Clicking on the new task icon on this panel will bring up the following menu:<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsYBqg8sN356Q33JG7KWgcCEEpGy6yUqc_H4KA8smQnIlw_TyM2SZbH8ig8DO3yXmYceFZ4qMWF7Mt-8EMQKK9xGQ1X3UENIjGQqffkp7UVzq8SUxqhjN9iJiHvMvB8XUMidKgqw/s1600/Screen+shot+2011-03-28+at+6.06.56+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="271" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsYBqg8sN356Q33JG7KWgcCEEpGy6yUqc_H4KA8smQnIlw_TyM2SZbH8ig8DO3yXmYceFZ4qMWF7Mt-8EMQKK9xGQ1X3UENIjGQqffkp7UVzq8SUxqhjN9iJiHvMvB8XUMidKgqw/s400/Screen+shot+2011-03-28+at+6.06.56+PM.png" style="cursor: move;" width="400" /></a></li>
<li>Click on add repository; the following dialogue should appear:<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYrQdmKrHxV7d2JrswtL_mgR0-bikzhIdc-CrtilV3Z7Iydt1MrTYPmEZDeFQdoHbzCgie-yVVcUYCGTFHRDpiWL5yVH5Ei6-v86QWFIRQtOSLp86RFoEhX8MysGdIkv7SdppXbw/s1600/Screen+shot+2011-03-28+at+6.07.51+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="251" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYrQdmKrHxV7d2JrswtL_mgR0-bikzhIdc-CrtilV3Z7Iydt1MrTYPmEZDeFQdoHbzCgie-yVVcUYCGTFHRDpiWL5yVH5Ei6-v86QWFIRQtOSLp86RFoEhX8MysGdIkv7SdppXbw/s400/Screen+shot+2011-03-28+at+6.07.51+PM.png" style="cursor: move;" width="400" /></a></li>
<li>Select JIRA</li>
<li>Augment options if desired</li>
<li>Verify the configuration</li>
</ol></div><div>Once the repository is all set, you'll need to add queries to get your tasks to appear in the task window. Using the same steps we walked through to reach the "Add Repository" selection, we can reach the "New Query" selection. The rest should be self-explanatory.<br />
<br />
Hope this helps!</div><div></div><div></div>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-51698463091202420092011-03-28T09:30:00.000-04:002011-11-01T15:25:09.823-04:00VMware Fusion + Ubuntu + Shared FoldersFor you crazies out there trying to circumvent lockouts... you may have endeavored to create a development environment utilizing multiple technologies to facilitate your need. Case in point:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbtx2Cd6Vf0M77_ws6FG-o-4bJcukK8eRMS1ymV1o7WzVcqVmEOwBmx-cixcR5oVu0QNObFhvhfD17nEobaKK_HoeVGZw0LxFkoI9nxW-b8dKgzJ1z4qznL1rdVyMpEuETB8k2nw/s1600/integrated-dev-environment.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="250" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbtx2Cd6Vf0M77_ws6FG-o-4bJcukK8eRMS1ymV1o7WzVcqVmEOwBmx-cixcR5oVu0QNObFhvhfD17nEobaKK_HoeVGZw0LxFkoI9nxW-b8dKgzJ1z4qznL1rdVyMpEuETB8k2nw/s400/integrated-dev-environment.jpg" width="400" /></a></div>
<br />
This setup allows me to run various programs on my local system when I'm not on campus. However, the tiny gotchas in setting up the environment have serious bite! The setup involves VMware Fusion on a Mac running an Ubuntu installation in a virtual machine and sharing folders between the host operating system (OS X) and the guest (Ubuntu). My Ubuntu installation is actually augmented as a Debathena station.<br />
<br />
This post will only cover getting around the problems encountered when sharing folders between the Mac and the Ubuntu Virtual Machine running concurrently. More specifically, making sure that it can be seen from the guest and streamlining to mitigate against the risk of system updates breaking the shared folders functionality. Creating the whole environment from scratch might be the topic of another post. Anyway, I found a mechanism so that shared folders work, but it does require a manual operation whenever the virtual machine is launched.<br />
<br />
The problem revolves around VMware Tools. VMware tools provides extra features that allow for a more seamless operation between the host and guest operating systems such that the line splitting the two is blurred. This includes copy/paste functionality, shared folders, and more. However, installing VMware tools is quite a process. There are a few ways to do it:<br />
<ol>
<li>using the open-vm-tools package provided by Ubuntu</li>
<li>using packages.vmware.com from VMware itself</li>
<li>manually via the VMware host you are running</li>
</ol>
<div>
Of these three, method 2 will allow you to utilize the standard package manager operations provided by the Ubuntu operating system to manage updates. And that... is priceless. When I first created this development environment, I went with option 3. Everything worked beautifully, although I had to use the 32-bit 10.04 Lucid version of Ubuntu instead of the 64-bit 10.10 version after hitting several road bumps. Then at some future date, I had to install a slew of updates... this is when vmware tools got broken and, more specifically, shared folders.</div>
<div>
<br /></div>
<div>
Go with option 2....</div>
<div>
<br /></div>
<div>
<b><span class="Apple-style-span" style="font-size: large;">Installation via Option 2</span></b><br />
<hr />
</div>
<div>
<b><br />
</b></div>
<div>
The following sites provide pretty good instruction on how to get vmware tools installed:</div>
<div>
<ul>
<li><a href="https://help.ubuntu.com/community/VMware/Tools">https://help.ubuntu.com/community/VMware/Tools</a></li>
<li><a href="http://www.vmware.com/pdf/osp_install_guide.pdf">http://www.vmware.com/pdf/osp_install_guide.pdf</a></li>
</ul>
</div>
<div>
Unfortunately, it will take some back and forth between the two guides to fully complete the installation as the former is missing some steps mentioned in the latter. Here is my abridged version (actual command line commands will be in bold italics):</div>
<div>
<ol>
<li>(<i>optional</i>) if vmware tools is already installed via option 3, it must be uninstalled:</li>
<ol>
<li><b><i>sudo vmware-uninstall-tools.pl</i></b> </li>
</ol>
<li>create a directory to store some keys (doesn't matter where)</li>
<li>navigate to that directory</li>
<li><b><i>wget http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-DSA-KEY.pub</i></b></li>
<li><b><i>wget http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub</i></b></li>
<li><b><i>wget http://packages.vmware.com/tools/VMWARE-PACKAGING-GPG-KEY.pub</i></b></li>
<li><b><i>sudo apt-key add *KEY.pub</i></b></li>
<li><b><i>cd /etc/apt/sources.list.d</i></b></li>
<li><b><i>sudo emacs -nw vmware-tools.list</i></b></li>
<li>add the following line to that file followed by a newline:</li>
<ol>
<li><i>deb http://packages.vmware.com/tools/esx/4.1latest/ubuntu lucid main restricted</i></li>
</ol>
<li><i style="font-weight: bold;">ctrl+x ctrl+s</i> (saves the file)</li>
<li><i style="font-weight: bold;">ctrl+x ctrl+c </i>(exits emacs)</li>
<li><b><i>sudo apt-get update</i></b></li>
<li><b><i>sudo apt-get install vmware-open-vm-tools-kmod-source</i></b></li>
<li><b><i>sudo module-assistant prepare</i></b></li>
<li><b><i>sudo module-assistant build vmware-open-vm-tools-kmod-source</i></b></li>
<li><b><i>sudo module-assistant install vmware-open-vm-tools-kmod</i></b></li>
<li><b><i>sudo apt-get install vmware-open-vm-tools</i></b></li>
</ol>
<div>
There is a chance that step 14 will generate an error in the vain of, "I don't know what file you are talking about...." If this happens, something likely went wrong in steps 9-12. Make sure there is a new line at the end of the file.</div>
<div>
<br /></div>
<div>
At some point during those steps, a reboot or two will likely be required. </div>
<div>
<br /></div>
<div>
<b><span class="Apple-style-span" style="font-size: large;">Installation Verification</span></b><br />
<hr />
</div>
<div>
<b><br />
</b></div>
<div>
After all these steps, it is wise to verify the installation. According to the VMware documentation, this can be done by running the following command:</div>
</div>
<div>
<ul>
<li><b><i>/etc/init.d/vmware-tools status</i></b></li>
</ul>
<div>
In this status, you want to verify that "vmware-guestd" is running (for ESX releases prior to 4.1) or "vmtoolsd" is running (for ESX releases 4.1 and later). The documentation also says to check that certain kernel modules are running using the <b><i>/sbin/lsmod</i></b> command. See page 29 under "Verify VMware Tools installation" in the documentation for more details.</div>
</div>
<div>
<br /></div>
<div>
<b><span class="Apple-style-span" style="font-size: large;">Verifying Shared Folders</span></b><br />
<hr />
</div>
<div>
<br /></div>
<div>
If you desire to share folders on your OS X side with the Ubuntu guest, a few extra steps will be required. </div>
<div>
<ol>
<li>On the VMware Fusion menu bar, select "Virtual Machine"</li>
<li>Click on "Shared Folders"</li>
<li>If a shared folder hasn't yet been created, select "Add a Shared Folder"</li>
<ol>
<li>When completed return to the "Virtual Machine > Shared Folders" menu option </li>
</ol>
<li>Select "Open Shared Folders Settings..." and verify your desired settings</li>
</ol>
<div>
Now that a shared folder is verified to exist on the VMware Fusion software, check that it can be seen within the Ubuntu guest (it likely won't):</div>
</div>
<div>
<ol>
<li>Open a terminal window</li>
<li><b><i>ls /mnt/hgfs/</i></b></li>
</ol>
<div>
If your shared folder does not get listed, it means Ubuntu cannot see it. Return to the VMware Fusion menu bar and do the following:</div>
</div>
<div>
<ol>
<li>Select "Virtual Machine > Shared Folders > Turn Shared Folders Off"</li>
<li>Select "Virtual Machine > Shared Folders > Turn Shared Folders On"</li>
</ol>
<div>
That's right, simply toggle shared folders off and on. Return to the terminal window on the Ubuntu guest and run the same command again: </div>
<div>
<ul>
<li><b><i>ls /mnt/hgfs/</i></b></li>
</ul>
<div>
This time, your shared folder should get listed. And off you go. </div>
</div>
</div>
<div>
<br /></div>
<div>
You should now be able to ensure vmware tools is always updated via Ubuntu's package manager. However, every time the Ubuntu guest is relaunched, the shared folders toggling trick will need to be executed to ensure the guest can see the shared folders.</div>
<div>
<br /></div>
<div>
Run along now, hope this helps!</div>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com13tag:blogger.com,1999:blog-15379854.post-12804418091381760982009-12-04T15:05:00.001-05:002009-12-04T15:09:50.307-05:00Rappers Hit Up Tech Conferences TooIt should come as no surprise that tech is a part of the game too. I'm sure you've heard, as have I, that CD album sales are down and that the giant music labels are trying to fight against a roaring tide that seeks to upend the old business models. The web has and continues to level the playing field. And rappers are discovering this. In this guest lecture at Stanford (part of <a href="http://ecorner.stanford.edu/">Standford's Entrepreneurial Thought Leaders Seminar</a>), artists Quincy Jones III and Chamillionaire lay it down for us. The web is changing how we communicate, how new fans are reached, and how street cred for products is measured. It's all about community. The current rage of social networks fuels this type of economy. Those who are on top of the game stand to make greater strides into reaching fans than those shunning the tech. In this talk, Chamillionaire mentions how he was clowned for using the internet back in the day for promoting his indy songs. But his early adoption kicked back some serious ROI. Both Quincy and Chamillionaire are staying on top of the game by embracing tech, hitting up tech conferences, and incorporating the cutting edge into their respective strategies. Check it out here:<br />
<br />
<embed flashvars="config=http://ecorner.stanford.edu/embeded_config.xml%3Fmid%3D2278" height="303" id="single" src="http://ecorner.stanford.edu/swf/player-ec.swf" type="application/x-shockwave-flash" width="500"></embed><br />
<br />
<b>NOTE:</b> <i>If the above doesn't play (seems like there might not be a video feed), click through to the site </i><a href="http://ecorner.stanford.edu/authorMaterialInfo.html?mid=2278"><i>here</i></a><i>, and click on "Download" to get the MP3 file. You can also find it on iTunes and subscribe to Stanford's podcast.</i>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-12817243146020492462009-11-24T14:15:00.002-05:002009-11-24T14:15:43.183-05:00New GChat Mobile Icon?<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVNfNHnfHKF44VX8DF0w38uJWDSl91fIpa4d3vn4SHaA5TEeW13dtS4Tgz2KkZsgzJy88c5N9gU2PDyqS3TmVk-v7kEx-FvfqZLeZmComRrL2vfGwoT095DuUZrDiXCiIPm5L99A/s1600/gchat-image-with-phone-icon.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVNfNHnfHKF44VX8DF0w38uJWDSl91fIpa4d3vn4SHaA5TEeW13dtS4Tgz2KkZsgzJy88c5N9gU2PDyqS3TmVk-v7kEx-FvfqZLeZmComRrL2vfGwoT095DuUZrDiXCiIPm5L99A/s320/gchat-image-with-phone-icon.jpg" /></a><br />
</div>I was logged into GMail and noticed on my GChat side bar the appearance of a new icon... a mobile phone! I've pointed it out in the image on the left. It hadn't appeared before today and I turned on the "robots" icon lab feature a few days ago. So this is probably new! And pretty kool. I wonder if it is drawing from GMail's contact management, or from Google Voice. If you hover over this contact, an option to SMS appears. Pretty neat.Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-805144906190086902009-03-08T14:25:00.004-04:002009-03-08T14:51:45.813-04:00Gmail and Safari 4 beta issueJust a quick post. Some of you out there may be using the brand spanking new Safari 4 beta. It is SWEEEEEEEEET by the way. And by sweet, I mean fast. Anyway, if you are using Google Gears with Gmail for offline access, you may experience problems with Safari 4 (on a Mac at least). What you will see when you attempt to log in is a beautiful blank page. Yes, blank and staring at you. If you run the Web Inspector, you will see that an error is occurring on load. The error is: <div><br /></div><div>TypeError: Result of expression 'mc().create' [undefined] is not a function. </div><div><br /></div><div>I've had numerous problems with offline Gmail on Safari (on a Mac) even before the beta. So I thought it might have something to do with it. <b></b></div><div><b><br /></b></div><div><b>The (Workaround) Fix</b> : <i>Disable Gmail from Google Gears</i></div><div><ol><li>Click on the "Safari" menu item on the menu bar </li><li>Select "Google Gears Settings..." </li><li>Click on the "Denied" radio button for everything Gmail related </li><li>Voila </li></ol>All done! Now if you need offline access to Gmail, this solution will not work for you. Apple (or Google) needs to actually resolve the issue so that offline Gmail is functional.<b></b></div><div><b><br /></b></div><div><b>How to Launch Web Inspector</b></div><div><ol><li>If you see the "Develop" menu item, skip to step 6 </li><li>Click on the "Safari" menu item on the menu bar </li><li>Select "Preferences..." </li><li>Click on the "Advanced" tab </li><li>Make sure the checkbox next to "Show Develop menu in menu bar" is activated </li><li>Click on the "Develop" menu item on the menu bar </li><li>Select "Show Web Inspector"</li></ol></div>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-30375208980356009942008-04-15T12:36:00.004-04:002008-04-15T12:51:40.966-04:00The Dreaded Wash Sale RuleIt's tax time and you are a fledgling investor. You've been dabbling in the markets trading various securities, even options! During all this activity you might have heard about something called a wash sale. But did you <i>really</i> pay attention? Nope! You thought, "Meh, I'll worry about that later. I've got a general handle on what it means. Back to trading!" And then tax time hit.......<br /><br />This post might be too late for some of you, seeing how it is the 11th hour. But just in case, I thought I'd provide a little insight. A wash sale is defined by the IRS <a href="http://www.irs.gov/publications/p550/index.html">Publication 550</a> as follows:<br /><br /><i>A wash sale occurs when you sell or trade stock or securities at a loss and within 30 days before or after the sale you:<br /></i><ul><li><i>Buy substantially identical stock or securities,</i></li><li><i>Acquire substantially identical stock or securities in a fully taxable trade, or</i></li> <li><i>Acquire a contract or option to buy substantially identical stock or securities</i></li></ul><b><i>What is meant by substantially identical?</i></b> Typically it means buying the same security. And yes, that includes options on that security! Doesn't that suck? Yeah... tell me about it.<br /><br /><b><i>Why is this rule in effect?</i></b> It is there to dissuade people from selling and buying a stock just to get the the loss write off. See, if you take a loss on an investment, the IRS has a provision that allows investors to deduct the loss come tax time. BUT... if you try to game the system, the IRS sticks it to you. When a wash sale occurs, you cannot deduct the loss.<br /><br /><b><i>What can you do?</i></b> You add the loss into the cost basis of the shares of stock you bought back within that window. Oh, and you have to add them proportionately. Say for instance you sold 100 shares of XYZ at a loss and bought 150 shares of XYZ within a 30 day window prior to or after selling those first 100 shares. The loss you just incurred is considered a wash. That's right, you can't deduct that loss! BUT, you can apply that loss to the cost basis of 100 of the 150 shares of XYZ that you bought.<br /><br /><b><i>So what does this mean?</i></b> It means you haven't lost the chance to deduct the loss; you only have to be a little more patient. By allowing you to add the loss to the cost basis of the new shares, the IRS gives you the opportunity to take the loss later -- that is if the new shares are also sold at a loss.<br /><br /><b><i>Okay, so you have a problem.</i></b> You need to determine whether or not you have a wash sale. You now know that a wash sale occurs when there is buying and selling of the same security, whether it be purely stock, options, or any combination, within a certain 30 day window. What happens if I buy a stock and options on that stock on the same day and both are sold within 30 days of the buying and the selling...... Specific ain't it? Yes, that's what I did. And I thought I was in a Catch 22. Why? Because if you take the wash sale terminology word for word, it may seem like you are screwed and cannot take any loss. It would sound like this:<br /><br /><ul><li>Bought 100 shares of stock XYZ and 2 Call option contracts on stock XYZ on Day 1</li><li>Sold 100 shares of stock XYZ on Day 10 at a loss</li><li>Did I buy substantially identical stock within a 30 day window? Yes, the options.<br /></li><li>Loss in sale of stock XYZ on Day 10 is a wash</li><li>Add cost basis of shares of XYZ to equivalent number of shares in the options contract ( so to one of the two contracts since each contract holds 100 shares )<br /></li><li>Both XYZ call options expire at a loss on Day 25</li><li>Did I buy substantially identical stock within a 30 day window? Yes, the stock.<br /></li><li>....<span style="font-weight: bold;">WHAT!?</span> Is my loss on the options a wash too!?<br /></li></ul> No! You are safe. You've already taken into account the stock. The number of shares in that stock you sold at a loss no longer exist and the loss has been added to the cost basis of the options. So when you ask the 30-day window question about the options, the stock that you sold earlier is no longer in the picture as it has already been accounted for.<br /><br />Okay, now there are several rules for wash sales. It gets pretty hairy, believe you me. And if you have a lot of complex situations like the one above (combinations of options, stock, and maybe other stuff), or a high frequency of trades, then doing this by hand is NOT an option. You want to use a program. I've done this research so you don't have to anymore. Check it out:<br /><br /><b><i>Where can I get software to do these calculations and generate Schedule D's?</i></b><br /><br /><a href="https://www.gainskeeper.com/">GainsKeeper</a>: Handles the simple stuff. Does NOT support <a href="https://www.gainskeeper.com/us/PortfolioTrackingInd.aspx">wash sale determination</a> when it involves the combination of stock and options: <span style="font-style: italic;">"GainsKeeper does not adjust for wash sales across long and short holdings. Nor will GainsKeeper generate a wash sale if you sell an equity at a loss, and then open a call option for the same equity within the wash sale window." </span>GainsKeeper is a web application with an online interface that can electronically aggregate your data from any number of brokerages you may have. It has a 30-day <b><a href="https://www.gainskeeper.com/registration.aspx?type=trial&who=individuals">free trial</a></b>.<br /><br /><a href="http://www.armencomp.com/tradelog/">TradeLog</a>: Handles the complex stuff. DOES support <a href="http://www.armencomp.com/tradelog/">wash sale determination</a> when it involves the combination of stock and options. It also handles rules regarding puts, shorts, etc. It is said that TradeLog applies the most stringent rules so as to catch any possible condition of a wash sale. So if you want to be safe, use TradeLog. This is a downloadable application and also supports download of data from any number of brokerages you may have. It has a <b><a href="http://www.armencomp.com/tradelog/">free trial</a></b> as well (see the right most bar on the that page).<br /><br /><a href="http://www.offwall.com/">Offwall.com</a>: This is a <b>FREE</b> online calculator. It seems very sophisticated and boasts <a href="http://www.offwall.com/ow_feature.html#sis">6 configurations</a> for calculations. These configurations depend on the complexity of your situation. Configuration 6 is the catch all and, some say, is the configuration that TradeLog uses. To use the calculator you must register. Once registered, you can upload your information.<br /><br />All of these solutions generate Schedule D's. However, Offwall.com is the only one that will do it for free. So what kind of pinch are you in?<br /><br />By the way, does Turbo Tax Premiere adequately determine wash sales? I can't say for certain, but it DOES use GainsKeeper. And we know from the GainsKeeper website that GainsKeeper does NOT handle the more complex wash sale triggers.....<br /><br />I hope this helps! Ganbare!<br /><br />Other links: <a href="http://www.fairmark.com/capgain/wash/wsira.htm"><br /></a><ul><li><a href="http://www.fairmark.com/capgain/wash/wsira.htm">About Wash Sales</a> (from Fairmark)</li> <li><a href="http://www.armencomp.com/wash-sales.html">About Wash Sales</a> (from TradeLog)</li></ul>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com3tag:blogger.com,1999:blog-15379854.post-39425171717171417362008-03-18T11:09:00.001-04:002008-03-18T11:11:06.975-04:00Bear Stearns for $2 may not hold?In my previous <a href="http://dranem05.blogspot.com/2008/03/talk-about-swing.html">post</a> I asked the question, how is Bear Stearns trading above $2 when the deal on the table is for $2 a share. SmartMoney has an <a href="http://www.smartmoney.com/bn/ON/index.cfm?story=ON-20080318-000188-0548">article</a> that brings some light to the situation. Obviously this offer is just cold to the bone! There is much more behind the scenes concerning why, especially regarding the repercussions of the alternative - bankruptcy. Anyway, the shareholders who are getting the major screw are not happy and it sounds like they will fight this price. Since the process of closing the deal could drag on for 12 months, the likelihood of forcing the offer to increase may be pretty good, especially since JP Morgan is guaranteeing all of Bear's trading activity within the firm for the entire period the deal is being negotiated. What does this mean? Well, it means that Bear Stearns can still do business! That is if other investment houses trust JP Morgan's guarantee and continue to trade with Bear (note that it was the pulling out action of counterparties last week that also hurt Bear, further deterioting confidence in the firm). So, if Bear can still operate, there is a possibility it can fix its financial situation, get back to stability, and maybe even start tearing a new path on the street. In that event, Bear would be worth more. It's now trading at $6.80. Those who bought yesterday have doubled!Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-67260032071791090822008-03-17T12:52:00.003-04:002008-03-17T14:12:25.863-04:00Talk about a swing!Early this morning I noticed, on my Google Sidebar, that premarket trading indicated stocks were about to get hit... BIG time. I wondered, "Whoa! What could be going on to elicit such a reaction!?" So I whipped open Google Finance and behold the word was in, JPMorgan Chase is buying Bear Stearns for $2 a share. <span style="font-weight: bold;">WHAT!? </span>Yes people, JPMorgan somehow put together a deal to buy one of the top tier Investment Banks in the country for <span style="font-style: italic;">ONLY</span> $2 a share! Needless to say, the stock price of Bear plummeted to $3 and change for an 80-90% drop in price after Friday's close. If that wasn't bad enough, note that this stock was trading in the $60 - $70 range last Monday... exactly one week ago. It dropped to the upper $20s and low $30s last Friday. And again, I tell you, it's now at $3 and change.<br /><br />JPMorgan Chase pretty much scored the deal of the year, that is if it can weather the financial difficulties Bear is fighting off to make it worthwhile. Much of the plunge in the stock during last week seemed to be due to rumors that lead people to head for the hills, at least according to Bear CEO Alan D. Schwartz. Check out this <a href="http://http//news.bbc.co.uk/2/hi/business/7296678.stm">BBC article</a> for more detail. Nevertheless, the price dove and the Fed was not having it. Both the Fed and JPM <a href="http://www.forbes.com/feeds/ap/2008/03/17/ap4782535.html">stepped</a> to the plate.<br /><br />Here are some questions. If JPMorgan Chase is buying Bear Stearns for $2 a share, how is Bear's stock trading above $2? Is this a short arbitrage opportunity? And what about the larger more looming question of, how in the WORLD does a top tier company like Bear go from a 52-week high of $158.36 to $3 and change? And especially since about half of that happened in 7 days! But wait, check this... what's even scarier is that apparently the way in which the Fed stepped in to help Bear is reminiscent of the ways in which the Fed stepped in to help organizations during the Great Depression.... that is according to this <a href="http://www.reuters.com/article/bondsNews/idUSN1755682020080317">article</a> from Reuters. Resorting to measures that haven't been used since the Great Depression..... WHOA!<br /><br />There are tons of articles on the web about this incident. Do a Google search; there will be no lack of its abundance. Just watch out for the people trying to spin this out of control crying doom and gloom. Yes, it's alarming. What should you do? Be careful out there. More importantly, stomp out the Greed bug. The market is tremendously volatile right now. If you are trading, get in and get out. Be happy with any profit you make. Those of you trusting your 401K retirement funds to some mutual fund manager.... you better pay attention to what's going on. There is no such thing as a free lunch and there is no genie out there. Bear is 77% institution owned according to Google Finance. That means a lot of the big boys hold this stock, including without question SEVERAL mutual funds. And nearly all 401Ks invest in mutual funds. I mean come on, who would expect a top tier Investment Bank to suddenly plunge.... Be careful out there.<br /><br />Oh, and for you conspiracy theorists.... this <a href="http://www.thestreet.com/s/who-traded-55000-bear-30-puts-tuesday/newsanalysis/optionsfutures/10407812.html?puc=_htmlttt">article</a> from the Street.com should prove mighty interesting. Somebody made a lot of money....Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-29885642282091427402007-10-08T14:17:00.000-04:002007-10-08T16:45:03.755-04:00Can We Get Back to Basics?There comes a point when people take things way to seriously, introducing wave after wave of complexity where simplicity should be the focus. Moreover, individuals and organizations begin to take the teachings, writings, or advice of someone or some entity and add upon it all KINDS of rules and regulations. Who are they to do such a thing? Especially when these kinds of additions begin to deviate from the core idea, that which is basic, and transform the focus to something altogether antithetical. Let us take, for instance, the current gripe the Church of England has with Insomniac Games/Sony.<br /><br />Matt Peckham reports in his <a href="http://blogs.pcworld.com/gameon/archives/005630.html">blog entry</a> for Game On that the Church of England is calling for the removal of Insomniac's game, <a href="http://www.resistancefallofman.com">Resistance: Fall of Man</a>, from the British Academy of Film and Television Arts' (BAFTA) video game award shortlist. Read Peckham's piece to get a back story, and also checkout this <a href="http://en.wikipedia.org/wiki/Resistance:_Fall_of_Man">Wikipedia entry</a> for even more background about the game itself and the ensuing real world battle royale between Sony and the Church. In summary though, the controversy is over a major gun battle taking place between human soldiers and the alien invaders inside of a virtual representation of the <a href="http://www.manchestercathedralonline.co.uk">Manchester Cathedral</a> within the game. The Church is irate about the bloodbath depicted and the desecration that results. I am concerned less with legal and more with something deeper.<br /><br />So what does all this have to do with getting back to the basics? Simple, is the Church more concerned with the building itself or the potential destructive power that such a depiction might have on the relationship of a person and his/her God? If it is the former, then the Church itself has a much bigger problem to contend with - has the building become its idol? If it is the latter, then the Church still has a major problem to contend with, just not as big. That problem? Members whose strength of faith rests on a physical inanimate building rather than the level and depth of relationship he or she has with God.<br /><br />The question here is motive, plain and simple. <br /><br />Jesus Christ laid the smack down on the Pharisees of old who put the law, especially the hundreds of additions to the original Mosaic law, above the only real command of Love. That's right, two laws encompass everything that is everything: Love God with everything you have, and love your neighbor. Where any other law or tradition violates these two, love is the path taken, not the law. Peep <a href="http://bibleresources.bible.com/passagesearchresults2.php?passage1=Mark+3&book_id=48&version1=31&tp=16&c=3">Mark 3:1-6</a> in the Bible to catch a glimpse of this in action.<br /><br />Is the Church's motive love or other? Is the building holding a higher place of honor in the Church's minds and hearts than God himself? Has this building become an idol? If the answer to these questions point away from God, then I bet God would rather the building destroyed in reality for this building is causing the people to stumble ( peep <a href="http://bibleresources.bible.com/passagesearchresults2.php?tp=16&book_id=48&c=3&passage1=Mark+9&version1=31">Mark 9:42-47</a> spoken in extreme ). God is concerned more with the relationship people cultivate with Him than with any physical item or organization. Because if that relationship is strong, then that individual will take on the mind and character of God. And when that happens, this individual will have Life in abundance, and will interact with his or her fellow men and women in such ways that will bless all in overflowing capacity. A building cannot teach you that.<br /><br />We need to get back to the basics. We need to get back to the core of what Christ taught. If something else takes the place of love, developing a strong relationship with Pops (God), and basing the strength of our faith on that, it must be ousted for it will only lead to our destruction. God is a creator, not a destroyer. So why should we waste our time on things that will only bring us ruin and destruction? <br /><br />It is my hope that the Church has already investigated such things and are walking the walk. If the Church's motive is thus pure, and the building is not an idol clouding sound judgment, then I endorse its investigation into the matter at hand. More specifically, I endorse its investigation into the MOTIVE behind Insomniac's inclusion of such a scene.<br /><br />If Insomniac's goal was to defame and desecrate the image of the church, and more specifically the being that is God, then I say "bring da ruckus!" That kind of motive is entirely evil, selfish, and destructive and thus deserving of repercussions. It shows no respect. But you know what? If that were the motive, I wouldn't worry much about the come uppins Insomniac/Sony could receive at the hands of men (even though it could be devastating). I'd worry more about the come uppins the decision makers would receive when they face God himself (I would not wish that on anybody!).<br /><br />In the end, it is just a building. I mean, the White House was blown up in the movies <a href="http://www.imdb.com/title/tt0116629/">Independence Day</a> and <a href="http://www.transformersmovie.com/">Transformers</a>, the former in replica reality and the latter with.... I won't say... I don't want to ruin it for those who haven't seen the film. What's important is the motive and the ideas behind these acts, the people they may or may not hurt, and the unforeseen repercussions it, and any reactions, may have on lives going forward.<br /><br />No matter what or in whom you believe, spread love people. Spread love.Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-1125375985583529892005-08-29T23:14:00.000-04:002005-08-30T00:26:25.590-04:00Languages + Martial ArtsLanguages are pretty interesting. Some are ultra complex, while others are extremely simple. But all languages have a couple things in common. One obvious commonality is they all seek to allow one to communicate his or her thoughts, ideas, or current state of being to another as clearly and vividly as one is able. Another pretty sweet thing about languages is that once you have mastered it, you no longer really have to think about it. The words just flow, as if instinctual. Now what if we take that concept and apply it to other things in life... say martial arts. <br /><br />My old sensei (Tony Avila) and I recently started thinking about languages as applied to martial arts when talking about progress in the arts as his San-dan test approached. We study American Jiu Jitsu by the way (<a href="http://web.mit.edu/jiu-jitsu/www" target="newin">MIT</a> <a href="http://www.nyjiujitsu.com" target="newin">NY</a>). When you first jump into martial arts, it's all about absorbing all of the awesome techniques coming your way. All you can really think about is, "Man, this is so cool!" Then you reach black belt and you realize, "Wow, I still don't know anything." Matter of fact, black belt is like having just learned how to say your first words. Pretty exciting! <br /><br />So anyway, you learn words, you learn phrases, you learn sentences, you learn paragraphs... The goal is to eventually get to the point where the martial art is no longer something you have to think about, but something that just flows. You become so fluent in the language that you can string together any combination of words fluidly and effortlessly into an amazing piece of prose or poetry. The art is no longer something you merely study, but something you influence, soemthing that has become yours, something that resonates with your very essence. It is no longer something that is out there and you are trying to grasp. No, instead it is something that is in you and you have personalized. Your movements convey your personality. Your teaching convey your experience. Your fluidity demonstrates your level of fluency. <br /><br />During my old sensei's test, I saw some of this demonstrated. It is amazing what you come to find out when something goes "wrong." What do you do when you make a mistake? What happens when a technique slips, or a stick gets knocked out of your hand? When these apparent "errors" emerge, that is when your true colors come to surface and the level of your language competency becomes apparent. The beginnings of Sensei Tony's language emerged during these times, and they were fluid. <br /><br />Time to hit that next level.Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com1tag:blogger.com,1999:blog-15379854.post-1124842427629333662005-08-23T19:42:00.000-04:002005-08-23T23:27:08.023-04:00Miracle Sleep Pill<span style="font-size:85%;">I don't know about you, but if I could sleep less and still get the rejuvenation required by sleep, I would be ALL OVER THAT. Don't get me wrong, sleep is awesome, <span style="font-style: italic;">especially</span> after working out like a madman and draining all of your energy training, playing a sport with friends or in competition, exercising, pulling all-nighters... you know, whatever gets your blood pumping. Sleep does indeed feel oh so sweet. However, on the flip side, sleep is also about 7 or 8 hours of time clandestinely sneaking away in the "momentary" blink of a deceived eye. With a bit of math, we can see that if one slept, on average, 6 hours a day (accounting for the 4-5 years at MIT where sleep was not an option... hah hah) for the first 24 years of your life, he or she will have slept away approximately 1/4 of his or her life. That's a HUGE chunk: 52,416 of the 209,664 hours of your life spent sleeping. Do you know how many awesome experiences you could have engaged in with 52,416 extra hours!? Anything that has ever peaked your interest you would now have a chance at trying your hand. Matter of fact, you could develop those talents that all this time you wished you <span style="font-style: italic;">had</span> more opportunity <span style="font-style: italic;">to</span> develop! Do you realize how many places you could then travel to and take in the sights, sounds, culture, and adventure? Exciting!<br /><br />I have been fantasizing about such a thing for some time now. Would it be possible to develop a pill that, when taken, all a human would need is one hour of sleep to be completely rejuvenated? Then I thought of the possibilities that would emerge if such a pill became reality. In my world, such a pill would be awesome! I could start drawing more, writing more, eating more, training more, researching (even cooler things) more, inventing more, traveling more, dancing more, developing even deeper relationships and tighter interactions with people, hanging out more... the list goes on. But alas, there is at least one problem with such a pill... and that is the human factor.<br /><br />What's the human factor? Well, we are greedy!!! Hah hah! No matter how much we try to hide it, diminish it, or destroy it, at some inner level we hunger for more all the time. So, inevitably, people would begin to work themselves to death. People do it now! Imagine if they had more time. Would work hours increase? Some people would be of the mindset, "Hey, I can work more hours, and pull in more cash flow! Then I can buy even more things or engage in even more activity!" How would the quality of work and commitment demanded out of you from employers, educational institutions, professional societies, government, and others, change? Would we actually have more time to do more of the things we'd like to get our hands on? Or would we instead be doing more of the same, just longer hours. The truth is, this phenomeon is something we can't escape: no matter how well intentioned a thing, someone will find a way to use it for ill, in any myriad of ways that word ill can play out. The question then becomes, will the benefits outweigh the risks? But enough philosophizing. There exists now a version of this miracle pill!<br /><br />Spotted on <a href="http://science.slashdot.org/article.pl?sid=05/08/23/1518236&from=rss" target="newin">Slashdot</a>, this pill apparently reverses the effects of sleep deprivation. It's not quite the miracle pill of my fantasy, but it is a step in that direction. Check out the article, it is pretty interesting.<br /></span>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com0tag:blogger.com,1999:blog-15379854.post-1124565843289167052005-08-21T01:03:00.000-04:002005-08-22T00:22:28.273-04:00Feats of Strength<span style="font-size:85%;">A feat of strength is always something that puts people into a state of awe. Why? Because witnessing these "mere" feats of strength assaults our senses in such away that we cannot help but be set on our heels! In some cases, these feats of strength are so freakishly out of this world that our minds just blank. In other cases, we just stand there, agape and amazed. The annual <a href="http://www.oncewerewarriors.net/ONCEWERE/7-STRONGEST/strong.html" target="newin">World's Strongest Man</a> comeptition exhibits some of these outstanding feats (like pulling a sizeable truck strapped via chest harness 100ft with raw leg pumping strength). Check out <a href="http://www.xtrememass.com/forum/archive/index.php/t-2943.html" target="newin"> xtrememass</a> for a fuller description or </span><span style="font-size:85%;"><a href="http://en.wikipedia.org/wiki/World%27s_Strongest_Man" target="newin">WSM on Wikipedia</a> for a *super* short description. Other feats of strength are those done by cleverly leveraging knowledge of physics. Ever heard of the <a href="http://www.coralcastle.com/" target="newin">Coral Castle</a>? Composed of stones weighing an average of 6 tons, the castle was built by ONE single man... who was 5 feet tall and 100 pounds... wow... But what about our other fellow organisms with whom we co-exist... roaming this rock called earth?<br /><br /></span><span style="font-weight: bold;font-size:85%;" >Some Amazing Strength</span><span style="font-size:85%;"><br /><br />A <span style="font-weight: bold;">flea</span> can move things <span style="font-weight: bold;">100x</span> its weight, and it can exert a jumping force of <span style="font-weight: bold;">150 G's</span> (that's 150x the force of gravity... WOW!) [Bug Attack, National Geographic Channel]<br /><br />A <span style="font-weight: bold;">tick</span> clamps down and does not budge until it is done feeding. It can suck blood upwards of <span style="font-weight: bold;">10x</span> its own weight, maybe even more [Bug Attack, National Geographic Channel]. That's like me, at 155 pounds, sitting down in the morning and having a feast until I am 1,550 pounds!!! That's almost 3/4 of a TON! I would <span style="font-style: italic;">not</span> be able to move...<br /><br />[The following appeared on Dangerous Encounters, National Geographic Channel]<br /><br />A domestic <span style="font-weight: bold;">dog</span> has a bite force of <span style="font-weight: bold;">317 pounds</span> (human equivalent of obliterating a single sheep bone in one chomp).<br /><br />A <span style="font-weight: bold;">lion</span> has a bite force of <span style="font-weight: bold;">691 pounds</span> (human equivalent of obliterating two sheep bones in one chomp).<br /><br />A <span style="font-weight: bold;">hiyena</span> has a bite force of <span style="font-weight: bold;">1,000 pounds</span> (!!!) (human equivalent of obliterating three sheep bones in one chomp).<br /><br />A <span style="font-weight: bold;">snapping turtle</span> (mind you, they have no teeth) nudges hiyenas with a bite force of <span style="font-weight: bold;">1,004 pounds</span>!!!<br /><br />A <span style="font-weight: bold;">Florida crocodile</span> has a bite force of... sit down of this one... no really... <span style="font-weight: bold;">2,500 pounds!!!!!</span> *IF* a human had that kind of bite force, we would be able to chomp through a giant cow bone with one single chomping action splitting it in half.<br /><br />By the way, on the show they cast a likeness of a human skull out of some metal and hooked its jaws up to some suped up hydraulics. They then used this way awesome contraption to show what a human could chomp through if we had these levels of bite force. And when I say obliterate... I mean OBLITERATE. Bones were crushed and snapped like NOTHING... and you could see the tell-tale puffs of powder that result when something is crushed/snapped like a twig. It was awesome!<br /><br />My friends, the world is an amazing, dangerous, and exciting place!<br /></span>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com3tag:blogger.com,1999:blog-15379854.post-1124565389644572512005-08-20T12:06:00.000-04:002005-08-20T15:23:10.563-04:00Reality Check<span style="font-size:85%;">While eating a bowl of <a href="http://www.blogger.com/lifecereal.com" target="_blank">Life Cereal</a> (good stuff), I turned on the TV to catch whatever might be on (since it is rare that I do). While flipping through, I came to the <a href="http://www.nationalgeographic.com/channel/" target="_blank">National Geographic Channel's</a> Bug Attack show. OH MY GOODNESS... the critters that are out there... man! It never ceases to amaze me, the things we know that we don't know and the things that we don't even know that we don't know.<br /><br />It's easy for us, as humans, to think we are indestructable. I mean, we are living large! We've sought out land, made it habitable, and moved on in. We dominate the world... us humans. Matter of fact, you could say we are on top of the food chain. As a result, it is so easy to forget that things smaller than the head of a pin can take a full grown human out in less than a day. Yeah... scary. As if lethal ones weren't bad enough... there are other critters that don't kill you, just give you a debilitating condition that you'll have to bout with for the rest of your life! Straight CRAZY!<br /><br />The show was some reality check, reminding me of the truth of our fragile genetic makeup. It's good to be reminded of our mortality though. I think it's healthy and allows us to keep a proper perspective about life. What's more, it allows us to remember just how precious life truly is because things can change in the blink of an eye (sometimes even faster). So, my charge to you, don't let life pass you by, enjoy every passing moment, launch yourself into the adventure that life is, and make it one awesome ride!<br /><br />Okay, on to some of the more interesting and less disgusting non-lethal critters. Though I have to say, the host of the show is crazy. Knowing what these critters can do, homeboy STILL gets up close and personal! I give him props, but you won't find me engaging in such close encounters, no way.<br /><br /><span style="font-weight: bold;">Jumper Ant</span> - That's right, they jump... about 5 centimeters. They've got skills too. When they notice a prey, they don't attack head on. Instead they come up from behind or above and then pounce. Then they're like, "DINNER TIME! WOOO!" and take a monster bite. It's more like a sting with their long pincers. At the same time, they drop some venom that, depending on the person, can stop (or come close to stopping) your breathing in 5 minutes..... freaky.<br /><br /><span style="font-weight: bold;">Black Widow</span> - There's a small family in a suburb located in Pheonix, Arizona. They have a spider farm... more specifically, a black widow spider farm RIGHT IN THEIR HOUSE. All three (husband, wife, and daughter) run the business. They extract the black widow's venom and sell them to scientists making anti-venom medicine. You just have to see it... man.... Anyway, a Black Widow's venom feels like a charlie horse with 10x the umph (according to the husband). It's so painful, it feels like the muscle is contracting to the point of nearly snapping the bone.<br /><br /><span style="font-weight: bold;">Super Deadly Wasp</span> - I forget its actual name, but apparently this wasp is the most aggressive wasp whose bite/venom combo is the most painful non-lethal bite out there. The show didn't detail what it actually feels like, and what causes the intense pain, but by the host's and his accomplace's ultra caution when approaching a hive... that pain is no joke. So check it out, these two approach a hive home to about 200 of these bad boys. The expert tells the host that they are going to try and snatch the hive... yeah... crazy. But first, in order to test the aggressiveness of the hive, the expert says they need to blow up a balloon and place it between the hive and themselves. He then proceeds to tell the host that each wasp can sting up to 5 times. The host does the math and says... "so, that's, at worst, about 500 stings each right? And these things have the worst and most painful wasp bite known to man? I'm going to stand... over here." The expert goes on to explain that *if* the wasps burst the balloon (it was a monster black balloon too by the way)... run. Within seconds after only slightly disturbing the nest, the whole swarm pounced, the balloon burst with a quickness, and both host and expert high tailed it while falling over themselves trying to get past natural rain forest obstacles. It was pretty funny to watch actually ;-D<br /><br /><br /><span style="font-weight: bold;"></span></span>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com2tag:blogger.com,1999:blog-15379854.post-1123902141727587842005-08-12T22:59:00.000-04:002005-08-12T23:02:21.730-04:00First post... is wack yo, heh ;-D<span style="font-family: verdana;"><span style="font-size:85%;">Testing baby... testing.... this my first post baby, yeah! checkit, bam bam hoorah! </span><br /></span>Anonymoushttp://www.blogger.com/profile/06668995149490883622noreply@blogger.com1