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

<channel>
	<title>bitbucket &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/bitbucket/</link>
	<description>Feed of posts on WordPress.com tagged "bitbucket"</description>
	<pubDate>Sun, 26 May 2013 02:50:17 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Changing URL for Remote]]></title>
<link>http://myrailslearnings.wordpress.com/2012/05/06/changing-url-for-remote/</link>
<pubDate>Mon, 07 May 2012 01:26:11 +0000</pubDate>
<dc:creator>admin</dc:creator>
<guid>http://myrailslearnings.wordpress.com/2012/05/06/changing-url-for-remote/</guid>
<description><![CDATA[I changed the hosting of my repo from Github to Bitbucket.  I like Bitbucket because not only does i]]></description>
<content:encoded><![CDATA[<p>I changed the hosting of my repo from Github to Bitbucket.  I like Bitbucket because not only does it house the code and history, but also it ties in with a bug tracker that allows for tracking (and assigning) of bugs, but also collaboration with developers.</p>
<p>To remap my remote repo, I did this:</p>
<p>git remote set-url [example] [git://github.com/user/test.git]</p>
<p>where:</p>
<p>[example] = repo name</p>
<p>[git://github.com/user/test.git] = new repo url</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[solarPower first prototype!]]></title>
<link>http://scompoprojects.wordpress.com/2012/04/26/solarpower-first-prototype/</link>
<pubDate>Thu, 26 Apr 2012 03:51:43 +0000</pubDate>
<dc:creator>scompo</dc:creator>
<guid>http://scompoprojects.wordpress.com/2012/04/26/solarpower-first-prototype/</guid>
<description><![CDATA[Hi, I had two 9V/1W solar panels laying around at home and I was wondering what to do with them for]]></description>
<content:encoded><![CDATA[<div id="post_content_21821780862">
<p>Hi, I had two 9V/1W solar panels laying around at home and I was wondering what to do with them for a long time. Hopefully I’ve put them to good use finally! I also happened to have around some <a title="mc34063 datasheet" href="http://www.google.it/url?sa=t&#38;rct=j&#38;q=&#38;esrc=s&#38;source=web&#38;cd=1&#38;ved=0CEEQFjAA&#38;url=http%3A%2F%2Fwww.onsemi.com%2Fpub%2FCollateral%2FMC34063A-D.PDF&#38;ei=iaOYT9KiGsqo4gSVz5DFBg&#38;usg=AFQjCNFAiRMwHsKOnA8NQtV8h9iBNhPTNg&#38;sig2=vmUTTyqtARzS-5aUEvk0dQ" target="_blank">MC34063</a> DC/DC switching converters, wich I would like to use too, so this is basically what came out of them!</p>
<p><!--more--></p>
<p>I bought my solar panels at <a title="mouser" href="http://www.mouser.com/" target="_blank">mouser</a> with a stock of components I needed for an old project, you can find them with this product code: 750-00031. They are made by parallax. The MC34063 are generic jellybean chips, as <a title="eevblog" href="http://www.eevblog.com/" target="_blank">Dave Jones</a> says (thanks a lot for the <a title="eevblog video" href="http://youtu.be/qGp82xhybs4" target="_blank">video</a> too if you&#8217;ll ever read this, check all his videos and site, there&#8217;s a lot of great stuff over there), wich you can find everywhere, I&#8217;ve got mine in a SOIC-8 package at in an electronic components store in Mestre, but you can find them online for a few cents too.</p>
<p>Basically what I wanted to design was a DC/DC converter wich converts the power form the solar panels down to 5 volts  to use with any usb chargeable device you would like to charge/power, unluckily the power from the panels wouldn&#8217;t be enough to charge at a decent rate (let&#8217;s say 500mA) anything so I decided to use some AA NiMh batteries to store the charge and get the nice side effect that it works also with no sun at all.</p>
<p>What I came up with was basically this, much from the data sheet, I&#8217;ve just tweaked the values calculating them with the formulas also from the data sheet.<br />
After calculating them by hand I&#8217;ve found out <a title="calculator" href="http://www.nomad.ee/" target="_blank">this</a> nice page which contains a nice calculator ready for you to use..</p>
<div id="attachment_17" class="wp-caption alignnone" style="width: 310px"><a href="http://scompoprojects.files.wordpress.com/2012/04/main.png"><img class="size-medium wp-image-17" title="Main schematics" src="http://scompoprojects.files.wordpress.com/2012/04/main.png?w=300&#038;h=132" alt="Main schematics" width="300" height="132" /></a><p class="wp-caption-text">Main schematics</p></div>
<p>I designed a board (which you can find at the bitbucket repository in the link at the end of the article) and toner transferred it to a copper clad board and etched with H2O2 + HCl in proportion of 2:1 as I found on <a title="instruct" href="http://www.instructables.com/id/Stop-using-Ferric-Chloride-etchant!--A-better-etc" target="_blank">this instructables</a>.<br />
It didn&#8217;t turn out too bad, I was a little worried for the little package of the DC/DC converter, but  turned out that wasn&#8217;t much of a problem at all.</p>
<p>I&#8217;ve built it up and tried it out, of course the first time I&#8217;ve soldered it upside down getting a nice short circuit -_- the nice thing is that it survived pretty well and after getting it correctly soldered up it worked like it was supposed to! I&#8217;ve measured out how it worked. I checked it with a simple NPN 2N222 transistor hooked up in a common emitter configuration with I controlled with a 20K potentiometer on the base and remaining down to 200/250mA  just not to blow it up. The ripple was under 100 mV  and it didn&#8217;t drop the voltage more than 50mV, so I was quite happy with it.</p>
<p>The battery pack I made provides 7,2 volts with 2300 mAh nominal current (Energizer). I know it&#8217;s not the best way to do it, you can do it better and with nicer materials, but that&#8217;s how I made it:</p>
<p>I used aluminum kitchen foil, a lot of black electrician tape and plastic to keep them tight together. I folded pieces of aluminum foil on themselves to create a thicker stripe with I cut and shaped like in the picture.</p>
<div id="attachment_21" class="wp-caption alignnone" style="width: 231px"><a href="http://scompoprojects.files.wordpress.com/2012/04/battconn.png"><img class="size-full wp-image-21" title="battConn" src="http://scompoprojects.files.wordpress.com/2012/04/battconn.png?w=221&#038;h=85" alt="Battery connections" width="221" height="85" /></a><p class="wp-caption-text">Battery connections</p></div>
<p>The bigger part it&#8217;s used to connect to the &#8211; terminal of the battery and the tape it&#8217;s used to insulate a bit one from the other<br />
I put them in series like in the following picture.</p>
<div id="attachment_22" class="wp-caption alignnone" style="width: 310px"><a href="http://scompoprojects.files.wordpress.com/2012/04/batt.png"><img class="size-medium wp-image-22" title="battery pack" src="http://scompoprojects.files.wordpress.com/2012/04/batt.png?w=300&#038;h=190" alt="battery pack" width="300" height="190" /></a><p class="wp-caption-text">battery pack</p></div>
<p>I placed the pieces of plastic over the contacts and taped it all up after trying it out ending up with this:</p>
<div id="attachment_23" class="wp-caption alignnone" style="width: 310px"><a href="http://scompoprojects.files.wordpress.com/2012/04/2012-04-23-01-11-20.jpg"><img class="size-medium wp-image-23" title="finished battery pack" src="http://scompoprojects.files.wordpress.com/2012/04/2012-04-23-01-11-20.jpg?w=300&#038;h=225" alt="finished battery pack" width="300" height="225" /></a><p class="wp-caption-text">finished battery pack</p></div>
<p>After connecting the 2 &#8220;leads&#8221; to some wires scavenged form an old pc fan I proceeded to put 2 diodes in series with each solar panel and connecting them together to get to the input connector, connected the battery and measured some more with actual components instead of my bench suppl. I created an USB board to connect a cable to it and proceeded with some real life test under the sun!<br />
I noticed that with full sun the system it&#8217;s working properly but when it&#8217;s darker it has some drop from the battery as long as they get emptier and close to their end life as I would expect.</p>
<p>Some pictures of the test.</p>
<div id="attachment_24" class="wp-caption alignnone" style="width: 310px"><a href="http://scompoprojects.files.wordpress.com/2012/04/2012-04-25-17-16-56.jpg"><img class="size-medium wp-image-24" title="Inner connections" src="http://scompoprojects.files.wordpress.com/2012/04/2012-04-25-17-16-56.jpg?w=300&#038;h=225" alt="Inner connections" width="300" height="225" /></a><p class="wp-caption-text">Inner connections</p></div>
<div id="attachment_25" class="wp-caption alignnone" style="width: 310px"><a href="http://scompoprojects.files.wordpress.com/2012/04/2012-04-25-17-16-28.jpg"><img class="size-medium wp-image-25" title="Closed &#34;box&#34;" src="http://scompoprojects.files.wordpress.com/2012/04/2012-04-25-17-16-28.jpg?w=300&#038;h=225" alt="Closed &#34;box&#34;" width="300" height="225" /></a><p class="wp-caption-text">Closed &#34;box&#34;</p></div>
<p>My android phone was happy with it and so was I!</p>
<div id="attachment_26" class="wp-caption alignnone" style="width: 250px"><a href="http://scompoprojects.files.wordpress.com/2012/04/screenshot.png"><img class="size-medium wp-image-26" title="ScreenShot" src="http://scompoprojects.files.wordpress.com/2012/04/screenshot.png?w=240&#038;h=300" alt="ScreenShot" width="240" height="300" /></a><p class="wp-caption-text">ScreenShot</p></div>
<p>The trick to behave like a line adapter was to short out the 2 data line together, it will just say charging (USB) instead and draw 300 mA instead of a nice 500 mA like it&#8217;s doing this way. There is a strange way of charging an apple ipod touch/iphone/ipad/iwhatever using very big capacity batteries, as <a title="ladyada" href="http://www.ladyada.net/" target="_blank">Ladyada</a> found out <a title="icharge" href="http://www.ladyada.net/make/mintyboost/icharge.html" target="_blank">here</a> (check her site too, it&#8217;s really useful!).<br />
I&#8217;ve made a board to set the 2 data lines voltage also to 2 volts just switching some jumpers if you need that.</p>
<p>I&#8217;ve learned quite a lot of things from this and there&#8217;s still much room for improvement, like getting an output status, monitoring the battery over-charge and a bunch of other things I&#8217;m working on, but for a first prototype I&#8217;m quite happy with it!<br />
I&#8217;ve learned pretty much how to use the <a title="kicad" href="http://kicad.sourceforge.net/wiki/Main_Page" target="_blank">kicad</a> EDA and learned some things about DC/DC switching regulators. I would like to add an AVR uC (Just because I&#8217;m used to them) to keep track of the output voltage and battery pack charge, maybe controlling a low power display or something like that.</p>
<p>If you want you can download everything I worked in from here: <a title="Bitbucket repository - SolarPower" href="https://bitbucket.org/scompo/solarpower/overview" target="_blank">Bitbucket &#8211; solarPower</a> there’s also a download for a little release with the schematics in pdf and the gerber board files.</p>
</div>
]]></content:encoded>
</item>
<item>
<title><![CDATA[TumblrPicUploader first release!]]></title>
<link>http://scompoprojects.wordpress.com/2012/04/26/tumblrpicuploader-first-release/</link>
<pubDate>Thu, 26 Apr 2012 01:47:50 +0000</pubDate>
<dc:creator>scompo</dc:creator>
<guid>http://scompoprojects.wordpress.com/2012/04/26/tumblrpicuploader-first-release/</guid>
<description><![CDATA[Hi, this is just a quick post, I’ve prepared a little python application to upload pictures from a p]]></description>
<content:encoded><![CDATA[<p>Hi, this is just a quick post, I’ve prepared a little python application to upload pictures from a pc/mac/linux box with python installed using their REST API V2.</p>
<p>I tried to use java at first but there was some problem with the photoset uploading wich was driving me mad..</p>
<p>After some searching I’ve found out that the tumblr team wrote an example in python to do just that (a bunch of person had the same problem apparently).<br />
So, I learned python and went for it..<br />
That’s what I came up with..<br />
<a title="Bitbucket repository - TumblrPicUploader" href="https://bitbucket.org/scompo/tumblrpicuploader/overview" target="_blank"><br />
Bitbucket Repository &#8211; TumblrPicUploader</a></p>
<p>Have fun with that, read the readme file and if you have any question, just write me here or on my email.</p>
<p>Bye!</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Hold me harmless]]></title>
<link>http://iam.richardbucker.com/2012/04/14/hold-me-harmless/</link>
<pubDate>Sat, 14 Apr 2012 15:31:49 +0000</pubDate>
<dc:creator>Richard Bucker</dc:creator>
<guid>http://iam.richardbucker.com/2012/04/14/hold-me-harmless/</guid>
<description><![CDATA[Everyone complains about terms and conditions in our desktop software and our web services etc. I ha]]></description>
<content:encoded><![CDATA[<p>Everyone complains about <em>terms and conditions</em> in our desktop software and our web services etc. I happen to use trello, github, bitbucket and other free services regularly. So I cannot fault them for including topics like <em>hold harmless</em> when referring to the service, and security or availability of my data. But it&#8217;s a completely different matter when you pay for services like crashplan, Dropbox and iCloud. These are their primary function. </p>
<p>One of these days I will need commit to reading more T&#38;Cs.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Open Source]]></title>
<link>http://teenagecoder.wordpress.com/2012/04/11/open-source/</link>
<pubDate>Wed, 11 Apr 2012 20:33:05 +0000</pubDate>
<dc:creator>fadelakin</dc:creator>
<guid>http://teenagecoder.wordpress.com/2012/04/11/open-source/</guid>
<description><![CDATA[As a part of focusing solely on programming, I have decided to make all my programs, apps etc free a]]></description>
<content:encoded><![CDATA[<p>As a part of focusing solely on programming, I have decided to make all my programs, apps etc free and open source. Which means if I work on a weekend project, I will upload the project and its source code on github and bitbucket for you guys to check out. My mobile apps are going to be free too. You can check them out on the WP7 marketplace here (<a href="http://bit.ly/HvEo2F">http://bit.ly/HvEo2F</a>). If there are prices, then they have not been updated yet. I&#8217;m also working on redeveloping my website from the ground up and will have my projects and everything on it. All the projects will be released under the MIT public license(<a href="http://bit.ly/HvF6wR">http://bit.ly/HvF6wR</a>). You are free to take the projects, modify them and redistribute them if you want or use them in your own projects. Most of the projects will be focused on web and software development. There will be some games but rarely. Until further notice you can check out my blog to stay updated. I haven&#8217;t updated it in a while but I&#8217;ll be updating it regularly.</p>
<p>May the code be with you.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Weekest Links 3/26 - 4/1]]></title>
<link>http://augmentedblog.wordpress.com/2012/04/02/weekest-links-326-41/</link>
<pubDate>Mon, 02 Apr 2012 17:09:28 +0000</pubDate>
<dc:creator>Trak</dc:creator>
<guid>http://augmentedblog.wordpress.com/2012/04/02/weekest-links-326-41/</guid>
<description><![CDATA[Warning: tomfoolery below.  Just mad doggin' it. &nbsp; metaio | junaio recap: Augmented Minds becom]]></description>
<content:encoded><![CDATA[Warning: tomfoolery below.  Just mad doggin' it. &nbsp; metaio | junaio recap: Augmented Minds becom]]></content:encoded>
</item>
<item>
<title><![CDATA[Tower App Missed the Runway - BitBucket]]></title>
<link>http://iam.richardbucker.com/2012/03/21/tower-app-missed-the-runway-bitbucket/</link>
<pubDate>Wed, 21 Mar 2012 13:31:24 +0000</pubDate>
<dc:creator>Richard Bucker</dc:creator>
<guid>http://iam.richardbucker.com/2012/03/21/tower-app-missed-the-runway-bitbucket/</guid>
<description><![CDATA[I like Tower. It&#8217;s a strong GUI in front of a DVCS that can be hard to manage if you&#8217;re]]></description>
<content:encoded><![CDATA[<p>I like <a href="http://www.git-tower.com/">Tower</a>. It&#8217;s a strong GUI in front of a DVCS that can be hard to manage if you&#8217;re not completely versed in it&#8217;s execution. Even with quality books from <a href="http://pragprog.com">PragProg</a> it&#8217;s still a challenge. So Tower is welcome.</p>
<p>This week they announced support for <a href="http://bitbucket.org">BitBucket</a>. BitBucket is a DVCS based on Mercurial instead of Git. (BitBucket does have a Git option when creating repositories.) So when the announcement was made I was pretty excited.</p>
<p><em>I use both GitHub and BitBucket. GH is perfect for my public projects and BB is perfect for my private projects.  It&#8217;s all about the cost.</em></p>
<p>Naturally I was excited when they mentioned the BB support. I thought&#8230; one tool, two repos.</p>
<p>But that is not the case. There is little or no documentation on this feature. The &#8220;manage repositories&#8221; is very unclear and the behavior seems to be adaptive. To what, I do not know. The one thing that is missing is a statement like:</p>
<blockquote><p>While we have support for BitBucket, we are still limited to Git repositories.</p></blockquote>
<p>That would make a lot more sense.  I&#8217;m not certain that I would convert my repos to Git because I happen to like mercurial better&#8230; and for no particular reason other than the fact that as a tool it is implemented in a single language unlike Git which uses several. This has the potential, and has in the past, failed to build when versioning goes bad.</p>
<p>Oh well, maybe later.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Announcing pricing - AppHarbor]]></title>
<link>http://chrismcleod.me/2012/03/06/announcing-pricing-appharbor/</link>
<pubDate>Tue, 06 Mar 2012 12:42:21 +0000</pubDate>
<dc:creator>Chris McLeod</dc:creator>
<guid>http://chrismcleod.me/2012/03/06/announcing-pricing-appharbor/</guid>
<description><![CDATA[Announcing pricing &#8211; AppHarbor. AppHarbor finally announces pricing for their awesome service.]]></description>
<content:encoded><![CDATA[<p><a href="http://blog.appharbor.com/2012/02/02/announcing-pricing#disqus_thread">Announcing pricing &#8211; AppHarbor</a>.</p>
<p>AppHarbor finally announces pricing for their awesome service. I&#8217;ll write up a post on this soon(ish), as it&#8217;s worth commenting on properly.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Setting Up the Newton Environment - Take 1]]></title>
<link>http://amberdoctor.wordpress.com/2012/03/05/setting-up-the-newton-environment/</link>
<pubDate>Mon, 05 Mar 2012 21:02:13 +0000</pubDate>
<dc:creator>amberdoctor</dc:creator>
<guid>http://amberdoctor.wordpress.com/2012/03/05/setting-up-the-newton-environment/</guid>
<description><![CDATA[My To Do List includes setting up: Eclipse XAMPP Access to the shared BitBucket repo Mercurial WASCE]]></description>
<content:encoded><![CDATA[<p><strong>My To Do List includes setting up:</strong></p>
<ul>
<li>Eclipse</li>
<li>XAMPP</li>
<li>Access to the shared BitBucket repo</li>
<li>Mercurial</li>
<li>WASCE</li>
</ul>
<p><strong>Setting up Eclipse:</strong><br />
I installed Eclipse a long time ago for a course that required using Eclipse.  I haven&#8217;t really used it since as I tend to prefer Netbeans.  I didn&#8217;t see it in All programs but I knew I had it installed so I did a quick search and found it.  The fact that Eclipse doesn&#8217;t appear in my Start Menu Programs list is just one more reason that I prefer Netbeans.  I hate making short cuts to things but I think I might add one to my desktop so that I don&#8217;t run into this issue again.</p>
<p>Although later I discovered that I had the wrong version of eclipse and had to go install Eclipse for Java EE.  Downloaded <a href="http://www.eclipse.org/downloads/" target="_blank">here</a>.  Extracted all files to &#8220;C:\&#8221;. Ran eclipse.exe. Chose a workspace and it ran just fine.</p>
<p><strong>Setting up XAMPP:</strong><br />
I&#8217;ve installed XAMPP before on OSX.  I downloaded XAMPP from here: <a href="http://www.apachefriends.org/en/xampp-windows.html#641">http://www.apachefriends.org/en/xampp-windows.html#641</a>.  When I ran the installer I made sure to set the destination folder to C:\xampp otherwise it won&#8217;t run.  I skipped installing Filezilla because I&#8217;ve got limited space and I only need the Apache and MySQL. I ran xampp_start.exe and then xampp_stop.exe (to stop xampp in the command line).  Then I opened xampp-control.exe and started MySQL and Apache running (click the start next to the name in the window).  I went into my Firefox browser and typed localhost/myphpadmin to bring up the My PHP admin box.  I have no clue what I did wrong along the way but it was in German.  So I fussed around and determined that &#8220;anzeige-einstellungen&#8221; is German for &#8220;Appearance Settings&#8221; and from there I recognized the language option and swapped it to English.  So I seem all set on this front.  I&#8217;ll need to come back and run the data base set up process but I&#8217;ll take care of that at a later date.</p>
<p><strong>Setting up Mercurial with Bitbucket:</strong><br />
I followed the guide found <a href="http://confluence.atlassian.com/display/BITBUCKET/Set+up+Git+and+Mercurial">here</a>.</p>
<p><strong>Setting up WASCE:</strong><br />
So I was trying to set this up and ran into an issue.  I began by downloading it from: <a href="http://www-01.ibm.com/software/webservers/appserv/community/" target="_blank">http://www-01.ibm.com/software/webservers/appserv/community/</a>. It asks for some information and then you can click download.  When I do it auto runs a download manager.  The download manager fails to be able to install the program and causes an error.  As such you have to go to where you downloaded the files and run the wasce_setup-3.0.0.0-win.exe.  Hit &#8220;Next&#8221; on the Introduction step then accept the license agreement and hit next again.  It asks to install to the default of C:\Program Files\IBM\WebSphere\AppServerCommunityEdition so you can just hit next again. Make sure you click &#8220;Yes, I would like to install the Eclipse Plugins&#8221; and that you pick the right folder for eclipse &#8220;C:\&#8221; Here&#8217;s where it got annoying.  I didn&#8217;t have the right copy of Eclipse (apparently there&#8217;s more than one) and I had to go get eclipse for Jave EE rather than just Java. So I held off on clicking next until I finished installing Eclipse for Java EE.  The next step is a review and confirm by clicking Install.  After it installs I let it pop open the First Steps window.</p>
<p>Here&#8217;s where I started following some tech notes provided by team member, David Wozniak.</p>
<p><em>{Start Tech Notes}</em><br />
9) Have the install complete and launch eclipse<br />
10) Go to the Java EE perspective<br />
11) In the server view right click and select New -&#62; Server.<br />
12) In the option box select the WASCE v3.0 server under IBM<br />
13) It will ask for the location of where the installer loaded the WAS CE. (C:\Program Files\IBM\WebSphere\AppServerCommunityEdition)<br />
14) Click next and you will see an area to update the admin and localhost name. DO NOT CHANGE THIS NOW. If you do the server will not start.<br />
15) Click finish.<br />
16) The server should now appear. You can right click and select Start and Stop etc.<br />
17) Now for the important feature:<br />
With the server started. Right Click and Launch the Console.<br />
All the configuration of the server will be from the web app that is launched. This is the same app that will run on the production server.</p>
<p>Log on to the console. Initially the user name is &#8220;system&#8221;, and the password is &#8220;manager&#8221;.</p>
<p>You can add more admins and remove the default login once you in. If you change it you will need to delete and recreate the workspace server updating the login information I told you not to touch in set 14.</p>
<p><em>{End Tech Notes}</em></p>
<p>At step 16 I encountered an error: &#8220;Starting &#8216;Newton&#8217; encountered a problem.  Server Newton failed to Start.&#8221;  I did make sure that I didn&#8217;t change any of the information in step 14 by deleting and recreating the server.  It had no effect.  Here&#8217;s the stack trace:</p>
<p>!SESSION 2012-03-05 14:56:49.076 &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
eclipse.buildId=unknown<br />
java.version=1.6.0_29<br />
java.vendor=Sun Microsystems Inc.<br />
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US</p>
<p>!ENTRY org.eclipse.osgi 4 0 2012-03-05 14:56:49.082<br />
!MESSAGE Error reading configuration: Unable to create lock manager.<br />
!STACK 0<br />
java.io.IOException: Unable to create lock manager.<br />
at org.eclipse.osgi.storagemanager.StorageManager.open(StorageManager.java:699)<br />
at org.eclipse.osgi.internal.baseadaptor.BaseStorage.initFileManager(BaseStorage.java:220)<br />
at org.eclipse.osgi.internal.baseadaptor.BaseStorage.initialize(BaseStorage.java:154)<br />
at org.eclipse.osgi.baseadaptor.BaseAdaptor.initializeStorage(BaseAdaptor.java:123)<br />
at org.eclipse.osgi.framework.internal.core.Framework.initialize(Framework.java:190)<br />
at org.eclipse.osgi.framework.internal.core.Framework.&#60;init&#62;(Framework.java:162)<br />
at org.eclipse.osgi.framework.internal.core.EquinoxLauncher.internalInit(EquinoxLauncher.java:67)<br />
at org.eclipse.osgi.framework.internal.core.EquinoxLauncher.init(EquinoxLauncher.java:37)<br />
at org.eclipse.osgi.launch.Equinox.init(Equinox.java:178)<br />
at org.apache.geronimo.main.FrameworkLauncher.launch(FrameworkLauncher.java:171)<br />
at org.apache.geronimo.main.Bootstrapper.execute(Bootstrapper.java:49)<br />
at org.apache.geronimo.cli.AbstractCLI.executeMain(AbstractCLI.java:65)<br />
at org.apache.geronimo.cli.daemon.DaemonCLI.main(DaemonCLI.java:32)</p>
<p>I&#8217;ve googled around but I haven&#8217;t found an answer and I&#8217;ve run out of time to work on this at the moment.  A such I&#8217;m going to continue working at this at a later time.</p>
<p><strong>Accomplished:</strong></p>
<ul>
<li>Eclipse</li>
<li>XAMPP</li>
<li>WASCE (started)</li>
</ul>
<p><strong>To Do:</strong></p>
<ul>
<li>Access to the shared BitBucket repo (waiting on invite)</li>
<li>Mercurial</li>
<li>WASCE (to finish)</li>
</ul>
<p><a title="Setting Up the Newton Environment - Take 2" href="http://amberdoctor.wordpress.com/2012/03/05/setting-up-the-newton-environment-take-2/">Setting Up the Newton Environment &#8211; Take 2</a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Hour 4 - Home Setup]]></title>
<link>http://10000hoursapp.wordpress.com/2012/02/21/hour-4-home-setup/</link>
<pubDate>Tue, 21 Feb 2012 19:54:51 +0000</pubDate>
<dc:creator>Ali</dc:creator>
<guid>http://10000hoursapp.wordpress.com/2012/02/21/hour-4-home-setup/</guid>
<description><![CDATA[Having got Eclipse working well on the home laptop, now time to get that sync&#8217;d with the BitBu]]></description>
<content:encoded><![CDATA[<p>Having got Eclipse working well on the home laptop, now time to get that sync&#8217;d with the BitBucket repository&#8230;which was brilliantly easy!  Log in, get the link, File-&#62;Import&#8230; in Eclipse&#8230;and Robert is your Father&#8217;s brother (well, actually, Father-in-law&#8217;s brother, but we&#8217;ll try not to mix up too many metaphors!)<br />
So now try to connect up my HTC Desire HD to allow that for development from the home PC&#8230;and need to get HTC Sync&#8230;so currently typing this while waiting for 149Mb of files to download!</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Hour 3]]></title>
<link>http://10000hoursapp.wordpress.com/2012/02/20/hour-3/</link>
<pubDate>Mon, 20 Feb 2012 22:06:06 +0000</pubDate>
<dc:creator>Ali</dc:creator>
<guid>http://10000hoursapp.wordpress.com/2012/02/20/hour-3/</guid>
<description><![CDATA[Have a working Android app just with different tabs. That&#8217;s backed up to a Mercurial repositor]]></description>
<content:encoded><![CDATA[<p>Have a working Android app just with different tabs.  That&#8217;s backed up to a Mercurial repository, and that is synchronized with BitBucket.  All in all, a good start.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[New Eclipse Bitbucket Mylyn Connector]]></title>
<link>http://fredgrott.wordpress.com/2012/02/15/new-eclipse-bitbucket-mylyn-connector/</link>
<pubDate>Wed, 15 Feb 2012 08:25:42 +0000</pubDate>
<dc:creator>Fred Grott</dc:creator>
<guid>http://fredgrott.wordpress.com/2012/02/15/new-eclipse-bitbucket-mylyn-connector/</guid>
<description><![CDATA[Evidently someone forked one of the not-updated in  a while mylyn connectors for Bitbucket and fixed]]></description>
<content:encoded><![CDATA[<p>Evidently someone forked one of the not-updated in  a while mylyn connectors for Bitbucket and fixed it. Installation Instructions are at <a href="//bitbucket.org/pplupo/bitbucket-mylyn-connector/wiki/Home">here</a>.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Supersized Jquery library]]></title>
<link>http://meloveyouruntime.wordpress.com/2012/02/12/supersized-jquery-library/</link>
<pubDate>Sun, 12 Feb 2012 14:42:16 +0000</pubDate>
<dc:creator>frangilbert</dc:creator>
<guid>http://meloveyouruntime.wordpress.com/2012/02/12/supersized-jquery-library/</guid>
<description><![CDATA[I keep saying this: if .net and C# (or just back end technologies), then HTML, Javascript and CSS (f]]></description>
<content:encoded><![CDATA[<p>I keep saying this: if .net and C# (or just back end technologies), then HTML, Javascript and CSS (front end technologies) are my mistress. I love to dabble with these lovely pieces of simple but great technologies.</p>
<p>One of my latest things is to take a library off Github (let&#8217;s not forget Bitbucket too!) and start playing with it. Recently, I needed a way of easily animating a background on a page and by chance stumbled across the Mishkin&#8217;s site: <a href="http://mishkins.co.uk/">http://mishkins.co.uk/</a>. Apart from ogling the food, the background transitions are amazing, even if you have low resolution images. I decided to peruse the source code to find they use a Jquery library called <a href="http://www.buildinternet.com/project/supersized/">Supersized</a>, a library which allows backgrounds to be loaded and displayed like a slideshow with lovely effects. It even handles stretching the image as you need and various other options.</p>
<p>Have a go. I love the way the web has progressed.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Bitbucket Academic License]]></title>
<link>http://martinralbrecht.wordpress.com/2012/02/08/bitbucket-academic-license/</link>
<pubDate>Wed, 08 Feb 2012 20:04:18 +0000</pubDate>
<dc:creator>martinralbrecht</dc:creator>
<guid>http://martinralbrecht.wordpress.com/2012/02/08/bitbucket-academic-license/</guid>
<description><![CDATA[So, I use bitbucket a lot. Mainly to host open-source code but I also try to use revision control fo]]></description>
<content:encoded><![CDATA[<p>So, I use <a href="https://www.bitbucket.org">bitbucket</a> a lot. Mainly to host open-source code but I also try to use revision control for most of my papers and research collaborations. Problem was, though, that you can only have 5 people you can work on a private repositories with in total with the free plan. So you can have at most 5 other researchers you can work on stuff in parallel with. Whoever checked the length of author lists on recent crypto papers might know that five suffices for like one paper but you cannot work on two papers in parallel like that.</p>
<p>But the next plan up which gives you 10 people costs $10 a month which is a bit steep for someone like me. Also, 10 is probably still a bit low during a productive year.</p>
<p>Enter <a href="http://www.atlassian.com/software/views/bitbucket-academic-license.jsp">Bitbucket Academic License</a>: unlimited private users, i.e., people you can work with, if you are an academic.</p>
<p>Sales pitch end <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[How to migrate a Subversion repository to Mercurial]]></title>
<link>http://thelandoftheblind.wordpress.com/2012/02/06/how-to-migrate-a-subversion-repository-to-mercurial/</link>
<pubDate>Tue, 07 Feb 2012 03:39:00 +0000</pubDate>
<dc:creator>Kevin</dc:creator>
<guid>http://thelandoftheblind.wordpress.com/2012/02/06/how-to-migrate-a-subversion-repository-to-mercurial/</guid>
<description><![CDATA[Git is great and everything, but if you want the latest in distributed version control systems, you]]></description>
<content:encoded><![CDATA[<p>Git is great and everything, but if you want the latest in distributed version control systems, you want Mercurial (Hg). </p>
<p>Mercurial was initially released about two weeks after Git, both with the goal of providing distributed version control for the development of the Linux kernel, but Git won that honor (not least because it was started by Linus Torvalds). On the other hand, Mercurial was conceived and began development in Minneapolis, so that makes it hip. </p>
<h1>The scenario</h1>
<p>I have some code to be released as open source when I get around to it, but I have plenty of code I just want in a private repository. </p>
<p>I have a Subversion (SVN) repository running off a local, free <a href="http://www.visualsvn.com/" target="_blank">VisualSVN</a> server. Great. </p>
<p><a href="http://kilnhg.com" target="_blank">Kiln</a> is built on top of Mercurial. Kiln is free for 2 users. I already use Kiln for some code. Great.</p>
<p><a href="https://bitbucket.org/" target="_blank">BitBucket</a> is built on top of Mercurial and Git. You can create either type of repo. BitBucket is free for 5 users for private repos. BitBucket works with <a href="https://appharbor.com/" target="_blank">AppHarbor</a>. I should use BitBucket if I want to use AppHarbor. <em>Great</em>. </p>
<p>Now to get to migrating. </p>
<p><!--more--><br />
<h1>A guide to a guide</h1>
<p>First, an excellent guide to using the free, open source <a href="https://bitbucket.org/durin42/hgsubversion/" target="_blank">hgsubversion</a> tool to migrate your SVN repo to Hg is <a href="http://blogs.atlassian.com/2011/03/goodbye_subversion_hello_mercurial/" target="_blank">available on the Atlassian blog</a>, the relatively new owners of BitBucket. For all sorts of details I&#8217;m omitting, please refer to their blog post, as I am merely adding a few points here for what seemed like &#8220;gotcha&#8221; scenarios. My conversion was very basic, and the Atlassian blog post covers much more complicated requirements in greater detail. They also performed their conversion on Unix/Linux, where I was working from a Windows server, so you can get a feel for how the commands translate if you need to use the options I used on *nix. </p>
<p>Second, I couldn&#8217;t get the migration to work from a local SVN file source (<code>file:///...</code>), so instead of creating a mirror of the SVN server, I used the SVN server directly over HTTP. Because my SVN server was my local machine, this had no impact on the migration performance. Your scenario may be different. </p>
<p>Third, I simply used the &#8220;<code>hg --insecure</code>&#8221; option to get around the problem of self-signed SSL certificates, because I know my local server is only marginally a threat. If you need more options for dealing with SSL certs when connecting to your SVN or Hg servers, <a href="http://mercurial.selenic.com/wiki/CACertificates" target="_blank">refer to the Mercurial manual/wiki</a>. </p>
<p>Fourth, I simply cloned the hgsubversion repo and it worked for me. If you need to dive deeper, there is <a href="http://mercurial.aragost.com/kick-start/en/hgsubversion/" target="_blank">a great Mercurial kick-start guide on hgsubversion</a>. </p>
<h1>Installing Mercurial</h1>
<p>If you&#8217;re a Kiln user, then I recommend you simply download the Kiln client installer, as it will include Mercurial, <a href="http://tortoisehg.bitbucket.org/" target="_blank">TortoiseHg</a> for GUI activities, and their Kiln extensions for Mercurial. If you&#8217;re not using Kiln, then I recommend you install TortoiseHg, will will include the GUI and Mercurial itself.<br />
<h1>Installing Subversion</h1>
<p>If you plan to pull code directly from your SVN repo into your new Hg repo, then you don’t really need an SVN client installed. If your SVN repo runs on a remote server, then it would be best to mirror the SVN repo locally first.</p>
<p>If you don&#8217;t already have an SVN client installed, then I recommend <a href="http://tortoisesvn.net/" target="_blank">TortoiseSVN</a>, as it will include both GUI tools and the command line SVN programs. </p>
<h1>Migrating Subversion to Mercurial</h1>
<p>So, now it&#8217;s time to migrate the SVN repo to Mercurial. There is a free extension for Mercurial, called <a href="https://bitbucket.org/durin42/hgsubversion/" target="_blank">hgsubversion</a>, that will perform the migration and preserve the revision history. Basically, you need to do the following: </p>
<ol>
<li>Create a mirror of your SVN repo so you don&#8217;t accidentally screw the pooch during the migration. I skipped this step, but it may work for you.
<li>Create a user map to convert the SVN author format to Hg format.
<li>Create the Hg repo on the server.
<li>Get the hgsubversion source code.
<li>Create a clone of your Hg repo and dump your SVN repo into it.
<li>Push the local Hg repo to the server. </li>
</ol>
<h2>1. Mirror the SVN repo (optional)</h2>
<ol>
<li>At a cmd prompt, where <code><a href="https://localhost/svn/main/Repo" rel="nofollow">https://localhost/svn/main/Repo</a></code> is the path to your SVN repo: <br /> 
<div style="display:inline;float:none;margin:0;padding:0;" id="scid:C89E2BDB-ADD3-4f7a-9810-1B7EACF446C1:13896324-f00d-4d77-a0e2-998e76c3cafb" class="wlWriterEditableSmartContent">
<pre style="white-space:normal;">
<pre class="brush: plain; auto-links: false; light: false; pad-line-numbers: true; title: ; notranslate" title="">
md C:\hgsvn 
cd C:\hgsvn 
svnadmin create svnmirror 
echo. &#62; svnmirror/hooks/pre-revprop-change.bat 
svnsync init &#34;file:///%CD%\svnmirror&#34; https://localhost/svn/main/Repo 
svnsync sync &#34;file:///%CD%\svnmirror&#34;
</pre>
</div>
<li>Depending on the size of your repo, it might take some time to copy the repo's entire revision history into your mirror. Mine took a few minutes, but one of the projects at Atlassian took a few days.</li>
</ol>
<h2></h2>
<h2>2. Create a user map</h2>
<ol>
<li>Create an empty text file at <code>C:\hgsvn\usermap.txt</code>
<li>Add SVN and Hg username mappings one per line, in the format: 
<div style="display:inline;float:none;margin:0;padding:0;" id="scid:C89E2BDB-ADD3-4f7a-9810-1B7EACF446C1:0b8834a2-280c-4f93-89cd-e82bf4783529" class="wlWriterEditableSmartContent">
<pre style="white-space:normal;">
<pre class="brush: vb; title: ; notranslate" title="">
SVN Username=Hg Username
</pre>
</div>
<p>So, you could have: </p>
<div style="display:inline;float:none;margin:0;padding:0;" id="scid:C89E2BDB-ADD3-4f7a-9810-1B7EACF446C1:fbf95661-6a00-4e1d-b17d-52995f999a24" class="wlWriterEditableSmartContent">
<pre style="white-space:normal;">
<pre class="brush: plain; title: ; notranslate" title="">
Me=NewMe 
Guy=NewGuy
</pre>
</div>
<p>Or: </p>
<div style="display:inline;float:none;margin:0;padding:0;" id="scid:C89E2BDB-ADD3-4f7a-9810-1B7EACF446C1:5ce9d1c3-dcee-4a0f-8bc7-183bac3f33a1" class="wlWriterEditableSmartContent">
<pre style="white-space:normal;">
<pre class="brush: plain; title: ; notranslate" title="">
Me=Me &#60;me@me.com&#62; 
Gal=Gal &#60;gal@gal.com&#62;
</pre>
</div>
</li>
</ol>
<h2>3. Create the Hg server repo</h2>
<ol>
<li>Go forth and create the repo on your central Hg server, whether it be Kiln, BitBucket, or other. You will need the URL to the remote repo on the server to set it as the default host for your local repo. It can be used to set the default host when you clone the repo, but technically you can also set it at any time by editing the <code>.hg/hgrc</code> file in your local Hg repo, and setting:
<div style="display:inline;float:none;margin:0;padding:0;" id="scid:C89E2BDB-ADD3-4f7a-9810-1B7EACF446C1:2345c62a-a136-43c5-9d64-637e80dc0768" class="wlWriterEditableSmartContent">
<pre style="white-space:normal;">
<pre class="brush: plain; title: ; notranslate" title="">
[paths]
default = https://myusername@bitbucket.org/myusername/repo
</pre>
</div>
</li>
</ol>
<h2>4. Get hgsubversion</h2>
<p>The hgsubversion project, like much of Mercurial, is written in Python, so Mercurial will run the extension as an interpreted script without the need for a precompiled binary.</p>
<ol>
<li>Get the latest <a href="https://bitbucket.org/durin42/hgsubversion/src" target="_blank">hgsubversion source</a>. From a cmd prompt: 
<div style="display:inline;float:none;margin:0;padding:0;" id="scid:C89E2BDB-ADD3-4f7a-9810-1B7EACF446C1:fbdddf59-c401-43a9-a658-5dbc8c5dc2ef" class="wlWriterEditableSmartContent">
<pre style="white-space:normal;">
<pre class="brush: plain; title: ; notranslate" title="">
cd C:\hgsvn 
hg clone https://bitbucket.org/durin42/hgsubversion 
</pre>
</div>
</li>
</ol>
<h2>5. Clone the Hg repo and fill it with the SVN repo</h2>
<ol>
<li>I created a simple <code>hgsvn.bat</code> batch file, but you can also type the following at the cmd prompt.
<div style="display:inline;float:none;margin:0;padding:0;" id="scid:C89E2BDB-ADD3-4f7a-9810-1B7EACF446C1:dc3b5cc9-dfe5-45fc-87fb-ebd4efa0636e" class="wlWriterEditableSmartContent">
<pre style="white-space:normal;">
<pre class="brush: plain; title: ; notranslate" title="">
cd C:\hgsvn 
svn ls https://localhost/svn/main/Repo 
hg clone --insecure --config ui.username=myusername --config &#34;extensions.hgsubversion=C:\hgsvn\hgsubversion\hgsubversion&#34; --config hgsubversion.authormap=usermap.txt --config hgsubversion.defaulthost=https://myusername@bitbucket.org/myusername/repo svn+https://localhost/svn/main/Repo hgsvn
</pre>
</div>
<li>Wait a while, depending on the size of your repo, to copy the SVN repo in "<code>C:\hgsvn\svnmirror</code>" to your new Hg repo in "<code>C:\hgsvn\hgsvn</code>". </li>
</ol>
<p>There are some important points crammed in those few options, so let's examine them more closely. </p>
<ul>
<li><strong>svn ls <a href="https://localhost/svn/main/Repo" rel="nofollow">https://localhost/svn/main/Repo</a>
<p></strong>This statement is there simply to form a connection to the SVN server, in order to cache your credentials if you need to authenticate to the SVN server. If your credentials are needed for authentication, you will be prompted to enter them after this statement. Your cached credentials will be needed by hgsubversion. If you aren't using <code>localhost</code>, use the name of your SVN server. If that is your local machine, it can be your hostname, but make sure it is in all lowercase. </p>
<p>Theoretically, you can skip this step if you are using a local file path instead of SVN over HTTP.</p>
<li><strong>hg clone --insecure
<p></strong>The "<code>--insecure</code>" option disables Mercurial's SSL certificate validation. If you're using an SVN server with a self-signed cert, this is required to connect to the SVN server, as unless you've established your local machine as a trusted Certificate Authority (CA), the server's cert isn't signed by a trusted CA. </p>
<li><strong>--config ui.username=myusername
<p></strong>This is your Hg username that will be used for any commits to your local repo, or pushes to your remote repo. If you're using Kiln, your default username will be set to your Kiln username in the <code>C:\%USERPROFILE%\Mercurial.ini</code> config file, so you need to override it on the command line with your BitBucket or other username. </p>
<li><strong>--config "extensions.hgsubversion=C:\hgsvn\hgsubversion\hgsubversion"
<p></strong>This enables the hgsubversion extension in the subfolder where you cloned the hgsubversion source. Note that the .py files are in an "<code>...\hgsubversion\hgsubversion</code>" subfolder. </p>
<li><strong>--config hgsubversion.authormap=usermap.txt<br /></strong>This sets the usermap.txt file as the author map for hgsubversion. If you're executing the hg command from the same folder as the usermap.txt file, a relative path to the file will work fine. 
<li><strong>--config hgsubversion.defaulthost=https://myusername@bitbucket.org/myusername/repo
<p></strong>This sets the location of your Hg server repo from which you are cloning your local repo. This will set the server address for use when it's time to push the repo to the server. </p>
<li><strong>svn+https://localhost/svn/main/Repo
<p></strong>If you're using the local SVN mirror on disk instead of the SVN server over HTTP, use "<code>file:///C:\hgsvn\svnmirror</code>" instead. Otherwise, the points below are some of the most important.</p>
<p>First, "<code>svn+https</code>" ensures that the resource is treated as an SVN server. Due to a conflict with Mercurial and Subversion support in hgsubversion, URLs starting with "<code>http</code>" are first treated as Hg servers. When the connection attempt is made, the authentication will fail, and the whole process will collapse. This is discussed at length in <a href="https://bitbucket.org/durin42/hgsubversion/issue/227/crash-on-https-with-forced-auth" target="_blank">an hgsubversion issue</a>.</p>
<p>Second, "<code>svn+https</code>" uses SVN authentication over HTTPS and will use the credentials cached from the previous "<code>svn ls</code>" command. Without this, authentication to the SVN server will fail.</p>
<p>Third, once again you can use "<code>localhost</code>" or a hostname for a local or remote server, but make sure that the hostname is in all lowercase. An uppercase letter in the hostname will cause the connection to fail. </li>
</ul>
<h2>6. Push the repo to the Hg server</h2>
<p>Once the SVN repo is dumped into your local HG repo, you can push the commits to the server with "<code>hg push</code>" or the TortoiseHg Workbench.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[ChatBot!]]></title>
<link>http://danedmunds.wordpress.com/2012/02/04/chatbot/</link>
<pubDate>Sat, 04 Feb 2012 18:13:30 +0000</pubDate>
<dc:creator>danedmunds</dc:creator>
<guid>http://danedmunds.wordpress.com/2012/02/04/chatbot/</guid>
<description><![CDATA[I&#8217;ve been working on this project in my free time in the last while and it&#8217;s finally in]]></description>
<content:encoded><![CDATA[<p>I&#8217;ve been working on this project in my free time in the last while and it&#8217;s finally in a state worthy of putting up online.</p>
<p>I was a huge fan of Google Reader and its sharing capabilities. Generally the things I shared weren&#8217;t very thought provoking or worth posting to Google+ or facebook (which is clearly why Google ruined the sharing, they wanted to force people to share to Google+)&#8230; basically what I&#8217;m saying is that the things I tended to share were funny pictures I thought would make my friends smile. One thing I was never happy with was that I could only share to my friends who also had Google Reader, which made me turn to using Twitter to publish my items tagged with a &#8220;twitter&#8221; tag. This could have also been accomplished by allowing my shares to be public but I didn&#8217;t want them associated with my Google profile.</p>
<p>Once Google finally axed sharing I started to think of other ways to share out these silly pictures. I figured Tumblr was pretty much what I was looking for, just a stream of content. I didn&#8217;t want to have to sign in and create posts by hand every time so I thought that a cool way to automate it would be to create a Google Talk bot (since whenever I&#8217;m on a computer I&#8217;m pretty much signed into GTalk) that I could just paste image urls to and it would post them to Tumblr.</p>
<p>And so ChatBot was born! It&#8217;s an XMPP Bot which does exactly what I&#8217;ve described above.</p>
<p>I used <a href="https://github.com/nsheridan/tumblr-java" target="_blank">tumblr-java</a> written by <a href="https://github.com/nsheridan" target="_blank">Niall Sheridan</a> to handle posting to Tumblr and <a href="http://www.igniterealtime.org/projects/smack/" target="_blank">SMACK</a> to handle the XMPP side of things.</p>
<p>The source code is available on my bitbucket: <a href="https://bitbucket.org/danedmunds/chatbot/" target="_blank">ChatBot</a>.</p>
<p>A build of it is available on my mediafire:<a href="http://www.mediafire.com/?xipvh04xccoc85c"> http://www.mediafire.com/?xipvh04xccoc85c</a></p>
<p>If you want to try it for yourself all you need to do is download the zip file from mediafire and edit the config file.</p>
<p>Once you extract the zip file you will get the following directory layout&#8230;<br />
<a href="http://danedmunds.files.wordpress.com/2012/02/folder1.png"><img class="alignnone size-full wp-image-69" title="folder" src="http://danedmunds.files.wordpress.com/2012/02/folder1.png?w=122&#038;h=92" alt="" width="122" height="92" /></a></p>
<ul>
<li>chatbot.jar is an executable jar file containing the project.</li>
<li>lib contains all the 3rd party jars ChatBot depends on</li>
<li>config contains the config.xml file used to store all the configuration information</li>
<li>bin contains a .bat file which will launch ChatBot with the config.xml file stored in the config folder</li>
</ul>
<p>To configure ChatBot simple edit config.xml under the config folder&#8230;</p>
<pre class="brush: xml; title: ; notranslate" title="">
&#60;config&#62;
	&#60;googleTalk&#62;
		&#60;userName&#62;bot.email@gmail.com&#60;/userName&#62;
		&#60;password&#62;MyPaZZw0Rd&#60;/password&#62;
	&#60;/googleTalk&#62;
	&#60;users&#62;
		&#60;user&#62;
			&#60;userName&#62;my.admin@gmail.com&#60;/userName&#62;
			&#60;displayName&#62;Johnny Admin&#60;/displayName&#62;
			&#60;permissions isAdmin=&#34;true&#34; /&#62;
		&#60;/user&#62;
		&#60;user&#62;
			&#60;userName&#62;user@gmail.com&#60;/userName&#62;
			&#60;displayName&#62;Jane User&#60;/displayName&#62;
			&#60;permissions&#62;
				&#60;activity id=&#34;ca.adrenalinaid.chatbot.tumblr.PostToTumblr&#34;&#62;allow&#60;/activity&#62;
			&#60;/permissions&#62;
		&#60;/user&#62;
	&#60;/users&#62;
	&#60;activities&#62;
		&#60;activity id=&#34;postToTumblr&#34;&#62;
			&#60;class&#62;ca.adrenalinaid.chatbot.tumblr.PostToTumblr&#60;/class&#62;
			&#60;config&#62;
				&#60;userName&#62;tumblr.email@gmail.com&#60;/userName&#62;
				&#60;password&#62;myTumblrPassword&#60;/password&#62;
				&#60;subscriptions&#62;
					&#60;subscription&#62;
						&#60;subscriber&#62;my.admin@gmail.com&#60;/subscriber&#62;
						&#60;postsFrom everyone=&#34;true&#34; /&#62;
					&#60;/subscription&#62;
					&#60;subscription&#62;
						&#60;subscriber&#62;user@gmail.com&#60;/subscriber&#62;
						&#60;postsFrom&#62;
							&#60;user&#62;my.admin@gmail.com&#60;/user&#62;
						&#60;/postsFrom&#62;
					&#60;/subscription&#62;
				&#60;/subscriptions&#62;
			&#60;/config&#62;
		&#60;/activity&#62;
	&#60;/activities&#62;
&#60;/config&#62;
</pre>
<ul>
<li>Put your Google credentials under the googleTalk node.</li>
<li>The users node is to configure the users that are going to be able to interact with the bot and to specify what they can do.</li>
<li>Under the postToTumblr activity put your Tumblr credentials</li>
<li>If you want the bot to notify specific users when posts are successful put that information under the subscriptions node.</li>
</ul>
<p>Anyway, there it is! Feel free to send me any messages with bugs, questions, suggestions!<br />
I&#8217;ll probably be moving on to a different project since this one is in a good enough state for now but I&#8217;ll definitely be coming back to this, add more activites, maybe make a UI.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Usare bitbucket da Visual Studio 2010]]></title>
<link>http://watchingbluescreens.wordpress.com/2012/01/15/usare-bitbucket-da-visual-studio-2010/</link>
<pubDate>Sun, 15 Jan 2012 10:15:00 +0000</pubDate>
<dc:creator>lucajulian</dc:creator>
<guid>http://watchingbluescreens.wordpress.com/2012/01/15/usare-bitbucket-da-visual-studio-2010/</guid>
<description><![CDATA[Bitbucket è un sito di hosting per i sistemi di controllo versione distribuito DCVS Git e Mercurial.]]></description>
<content:encoded><![CDATA[<div class="separator" style="clear:both;text-align:center;"><a href="http://watchingbluescreens.files.wordpress.com/2012/01/bitbucket.png" style="clear:left;float:left;margin-right:1em;margin-bottom:1em;"><img border="0" height="128" width="128" src="http://watchingbluescreens.files.wordpress.com/2012/01/bitbucket.png?w=128&#038;h=128" /></a></div>
<p>Bitbucket è un sito di hosting per i sistemi di controllo versione distribuito <a href="http://en.wikipedia.org/wiki/Distributed_Version_Control_System">DCVS</a> Git e Mercurial. L&#8217;offerta di servizi comprende un issue tracker e wiki, così come l&#8217;integrazione con una serie di popolari servizi come Basecamp e Twitter.</br>Se siete interessati a capire in modo più approfondito servizi e possibilità che può darvi questo servizio vi consiglio di partire da <a href="http://confluence.atlassian.com/display/BITBUCKET/bitbucket+Documentation+Home">qui</a>.</br>Per utilizzare bitbucket, è necessario installare uno strumento DVCS sul computer in cui scrivete il codice dei vostri progetti. C&#8217;è la possibilità di usare bitbucket anche in altri scenari (non solo su Windows e per Visual Studio) ma questa breve guida tratterà di come gestire bitbucket in una macchina fisicamente vicino a voi come il vostro computer di casa o lavoro. Ecco quindi gli step da seguire.</br>Per prima cosa iscrivetevi a <a href="https://bitbucket.org/">bitbucket</a>. </br></br><strong>Installare Mercurial e VisualHG</strong></br>TortoiseHg 2.2.2 è la versione attuale per Microsoft Windows di Mercurial. Scaricate l&#8217;installer a questo <a href="http://tortoisehg.bitbucket.org/download/index.html">indirizzo</a> e installate il programma. Successivamente scaricate e installate <a href="http://visualhg.codeplex.com/">VisualHG</a> che è il plugin di Mercurial per Microsoft Visual Studio.</br></br><strong>Utilizzare Mercurial in Visual Studio</strong></br>Aprite Visual Studio, andate sul menù Tools sulla voce Options. Scorrete la lista fino a trovare Source Control e selezionate VisualHG. Sull&#8217;area online che vi mette a disposizione bitbucket create un nuovo repository e copiate l&#8217;URL. Create una cartella sul File System per dove metterete il codice, selezionate le proprietà della cartella e troverete la voce TortoiseHg. Premete su clone e vi apparirà la schermata che segue.
<div class="separator" style="clear:both;text-align:center;"><a href="http://watchingbluescreens.files.wordpress.com/2012/01/program2bmanager_2012-01-15_11-03-381.jpg" style="margin-left:1em;margin-right:1em;"><img border="0" height="133" width="400" src="http://watchingbluescreens.files.wordpress.com/2012/01/program2bmanager_2012-01-15_11-03-381.jpg?w=400&#038;h=133" /></a></div>
<p>Impostate come source l&#8217;URL che avete precedentemente copiato e premete Clone. A questo punto vi verrà chiesto di inserire utente e password, confermate e inizierà la procedura.</br>Aprite Visual Studio, aprite il vostro progetto e se tutto è stato configurato correttamente avrete uno scenario di questo tipo (tratto dalla documentazione di <a href="http://visualhg.codeplex.com/documentation">VisualHG</a>)
<div class="separator" style="clear:both;text-align:center;"><a href="http://watchingbluescreens.files.wordpress.com/2012/01/visualhgscreenshot2.png" style="margin-left:1em;margin-right:1em;"><img border="0" height="400" width="382" src="http://watchingbluescreens.files.wordpress.com/2012/01/visualhgscreenshot2.png?w=382&#038;h=400" /></a></div>
<p></br></br>Per maggiori info potete andare a consultare la documentazione di <a href="http://confluence.atlassian.com/display/BITBUCKET/bitbucket+Documentation+Home">bitbucket</a> e quella di <a href="http://tortoisehg.bitbucket.org/manual/2.2/quick.html">TortoiseHg</a>.
<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3067802397609302356-4529366545548905399?l=watchingbluescreens.blogspot.com' alt='' /></div>
]]></content:encoded>
</item>
<item>
<title><![CDATA[New Year's Resolutions]]></title>
<link>http://sudocoding.wordpress.com/2012/01/08/new-years-resolutions/</link>
<pubDate>Sun, 08 Jan 2012 17:45:50 +0000</pubDate>
<dc:creator>Daniel Tahara</dc:creator>
<guid>http://sudocoding.wordpress.com/2012/01/08/new-years-resolutions/</guid>
<description><![CDATA[Since classes start tomorrow, I figured that now would be a really good time to make a post. I am mo]]></description>
<content:encoded><![CDATA[<p>Since classes start tomorrow, I figured that now would be a really good time to make a post. I am more excited for this coming term than any so far while at Yale, in large part because I am finally going to get to dive into the heart of the computer science major and otherwise submerse myself in the computer science community. In terms of CS classes, I will be taking two: Data Structures and Programming Techniques and Design and Analysis of Algorithms. The first one is going to really whip my C into shape, and obviously give me forwards and backwards knowledge of <del>linked lists</del>, I mean, data structures (okay, okay, it&#8217;s really hard to be funny on paper).  The second course, a bit more theoretical and a bit more math-y, will definitely structure my thinking and approaches to problem solving.</p>
<p>But enough of the boring stuff.  I decided last semester that I love computer programming, and even more so, that I want to put the time in to be good at it.  Not, not good.  Great.  So over break, I spent a fair amount of time reading up in the <a>Stanford CS Library</a> as well as various programming blogs like Joel on Software, Steve Yegge&#8217;s Rants, and Coding Horror, and my reading prompted me to make the following New Year&#8217;s Resolutions:</p>
<ol>
<li><em>I will use version control</em>.  Not just for CS assignments, but <a href="http://mendicantbug.com/2008/11/30/10-reasons-to-use-git-for-research/" target="_blank">for papers as well</a>.  As both <a href="http://www.joelonsoftware.com/articles/fog0000000043.html" target="_blank">Joel Spolsky</a> (Fog Creek, Stack Overflow) and the <a href="http://reliscore.com/blog/the-difference-between-student-programmers-and-professional-programmers" target="_blank">guys at Reliscore</a> described, the use of version control is one of the things that sets apart the good programmers from the great ones.  I can&#8217;t tell you how many times I made copies of my project folder for my Yale Daily News iPhone app &#8212; I realized that I needed to do version control, but at that point, hadn&#8217;t bothered to learn to use <a href="http://git-scm.com/" target="_blank">git</a> (or even XCode&#8217;s built in repository system, for that matter).  But now, I am convinced.  So after a fair amount of research, I installed git on my computer, and set up an account with <a href="https://bitbucket.org/dktahara" target="_blank">BitBucket</a> to handle my online repositories.  Why BitBucket, you ask, rather than <a href="https://github.com/" target="_blank">Github</a> or <a href="http://code.google.com/hosting/" target="_blank">Google Project Hosting</a>?  Simple answer: free, unlimited repositories (public <em>and</em> private), and, <a href="http://www.atlassian.com/software/views/bitbucket-academic-license.jsp" target="_blank">if you&#8217;re a student,</a> unlimited users.  BitBucket also allows you to keep <a href="http://mercurial.selenic.com/" target="_blank">Mercurial</a> repositories, which is nice if you prefer that to git.  Also, for Mac users, <a href="http://www.sourcetreeapp.com/" target="_blank">SourceTree</a>, made by the company who runs BitBucket, is a brilliant GUI for Git and Mercurial on Mac OSX.  Although I will make an effort to learn how to use git from the command line, SourceTree will really help to keep myself organized.</li>
<li><em>I will learn how to use and write test scripts for my assignments</em>.  In a technical interview I had the other day, I was asked not only how to optimize an algorithm for a given problem, but also what test cases I would implement to check that algorithm.  I was able to come up with a few on the spot &#8212; EOF conditions, whitespace, non-ASCII characters, int overflow errors, null pointers &#8212; but developing test cases on a regular basis will challenge me to think in a more complete way about the problems that I am solving.  I also decided that I will write my test scripts in Python, which, quite obviously, will help me learn Python.</li>
<li><em>I will learn as much Linux as possible</em>.  There are so many ways in which Linux can help with coding, whether they be command-line utilities like <code>grep</code> and <code>sed</code> or software like <a href="http://www.gnu.org/software/emacs/" target="_blank">emacs</a> (yes, I know I can use it on a Mac, but I much prefer <a href="http://www.barebones.com/products/textwrangler/" target="_blank">TextWrangler</a>) and <a href="http://valgrind.org/" target="_blank">valgrind</a>.  If I want to consider myself a real programmer, then Linux is a must.</li>
</ol>
<p>Those are my resolutions.  I&#8217;ll let you know how they go!</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Happy New Year]]></title>
<link>http://dickyjim.wordpress.com/2012/01/03/happy-new-year/</link>
<pubDate>Tue, 03 Jan 2012 20:52:55 +0000</pubDate>
<dc:creator>dickyjim</dc:creator>
<guid>http://dickyjim.wordpress.com/2012/01/03/happy-new-year/</guid>
<description><![CDATA[Pretty much every site on my Google Reader feed is doing their review of the year. Having just start]]></description>
<content:encoded><![CDATA[<p>Pretty much every site on my Google Reader feed is doing their review of the year. Having just started blogging, I&#8217;m only at 9 posts and I&#8217;ve just managed to reach triple figures on views! (Well&#8230; I reached 100 on the 1st of January which I&#8217;m still pretty proud of).</p>
<p><strong>Last few weeks</strong></p>
<p>There&#8217;s been a couple of things on my mind for the last few weeks that have been holding up my posting.</p>
<ul>
<li><em>Still reading Raymond Chen.</em> My next <a title="http://dickyjim.wordpress.com/category/blogs-ive-read/" href="http://dickyjim.wordpress.com/category/blogs-ive-read/">Blog&#8217;s I&#8217;ve Read</a> entry was going to be <a title="http://blogs.msdn.com/b/oldnewthing/" href="http://blogs.msdn.com/b/oldnewthing/">The Old New Thing</a> blog from Raymond Chen. With a post every day from him for the last 9 years, I started at the beginning of 343 odd pages with 10 posts a page and have only about 60 left. The quality of the content I&#8217;ve found there makes me want to make that the next post for the category, but I want to get up to date first in case something exciting happens.</li>
<li><em>I&#8217;ve been considering the best way to post my updated version of Very Sleepy. </em>After writing about my changes, I wanted to publish a version that people could use to see if it fixes their issues and if they like the more responsive interface. My first idea was to speak to <a title="http://kayru.org/" href="http://kayru.org/">Yuriy O&#8217;Donnell</a> and piggy-back on his <a title="https://bitbucket.org/kayru/sleepy-ex" href="https://bitbucket.org/kayru/sleepy-ex">Sleepy-ex</a> project on <a title="https://bitbucket.org/" href="https://bitbucket.org/">bitbucket.org</a>. Thinking further (and after having spoken to Yuriy) I realized that it would be better to look into creating my own project for sharing. With Git and Mercurial both being something outside of my comfort zone, using a DVCS is something that I&#8217;ve only read about in depth without having actually used it yet. It feels a bit overkill to use a DVCS just to share some code and an exe.</li>
<li><em>My HTML5 work has stalled based on a loss of motivation.</em> My work-in-progress game has been in-progress for the last few months. I&#8217;ve got to several points where I&#8217;ve had something showable as simple example of using some of the HTML5 features I depended on, but I wanted to take it to the point where I could show off a basic game. Of course, by saying game, I need to make sure I include all of the auxiliary bits that you expect with games, such as menus, score, timer etc. I&#8217;ve always been a big fan of the &#8220;find the fun&#8221; philosophy when creating games, but looking at my bodged together interface makes me want to add some more polish before testing it some more and looking for the fun.</li>
<li><em>Finding time to work on my JavaScript code.</em> Actually getting to the code to write some more is the biggest challenge since <a title="http://www.dropbox.com/" href="http://www.dropbox.com/">dropbox</a> isn&#8217;t the kind of thing you can install on a corporate network for giggles.</li>
<li><em>Wanting to update the blog.</em> While travelling during the Christmas break, I left the laptop at home but still wanted to keep working on some posts. As this list of random things is proof, there&#8217;s been several ideas I&#8217;ve wanted to post about, but not in much depth. The problem is, when I have an idea, I want to note it somewhere. I did look at <a title="http://ios.wordpress.org/" href="http://ios.wordpress.org/">WordPress for iOS</a> as a possibility, but then I was too busy to try it.</li>
<li><em>Mentally tossing up the value of Twitter.</em> Again, with these random ideas I want to post about, I was thinking I could squeeze it down to 140 characters and dip my toe in the water. However, I realised that once I got started, most of my tweets would be either retweets of other&#8217;s work or me expressing anger at <a title="http://www.southeasternrailway.co.uk/" href="http://www.southeasternrailway.co.uk/">SouthEastern</a> trains, delayed ferries and other tidbits that would interest few if any.</li>
<li><em><em>And then my iPhone broke.</em> </em>I managed to get a bent pin in the connector port. First problem, I only discovered this when I got home and wanted to charge it since the battery was nearly dead &#8211; the pin was stopping it from charging. Second problem, I hadn&#8217;t backed up since the iOS 5 update which was about 6 weeks out of date, and the phone wouldn&#8217;t talk to iTunes. I spoke to one of the Apple Geniuses at the Genius Bar and he suggested a wifi sync when I got home, hoping that I could get enough copied off in however long 17% of battery lasts. However, before I left work, one of my colleagues was able to apply finesse and fine copper wire to bend the pin back up so that a cable could be attached. That got me to 100% battery and leaving the cable in until I got home meant that I could connect to iTunes and backup. (For reference, wifi sync appears to need to be enabled in iTunes with the phone connected so would not have worked <img src='http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  ) The next day I went back and paid for an out of warranty replacement phone, fortunately 1/4 of the price of a new one and installed it straight from the previous night&#8217;s backup.</li>
<li><em>Investigating <a title="http://explore.live.com/skydrive" href="http://explore.live.com/skydrive">SkyDrive</a>.</em> During a cloud discussion, we had a who&#8217;s got the biggest free storage contest and SkyDrive won with 25GB for starters whipping my <a title="https://www.icloud.com/" href="https://www.icloud.com/">iCloud</a>&#8216;s 5GB (personally I think that the iCloud storage should scale on the size of device and accumulate for multiple devices). I&#8217;ve been looking at how easy it is to get things in and out with something like <a title="http://www.cloudstorageexplorer.com/" href="http://www.cloudstorageexplorer.com/">SDExplorer</a> and soon will go crazy by putting all my photos on there.</li>
</ul>
<p><strong>The rest of the year<br />
</strong></p>
<p>Looking forward to the rest of the year, there&#8217;s several things I want to post about:</p>
<ul>
<li>The first thing is a status update for my HTML5 stuff (or rather publishing that post-in-progress with a link to the work-in-progress). I&#8217;d then like to polish off what I was working on and write something more in-depth. WebGL is still sitting in the back of my mind, but I just can&#8217;t use it on the iPad yet.</li>
<li>A review of the games I enjoyed in 2011 &#8211; it&#8217;s been a great year for PS3 and I&#8217;ve played some really enjoyable games.</li>
<li>Looking at some upcoming games or writing about my experiences. I&#8217;m already looking forward to <a title="http://www.ea.com/ssx" href="http://www.ea.com/ssx">SSX</a> and <a title="http://www.borderlands2.com/" href="http://www.borderlands2.com/">Borderlands 2</a> this year. Now if I could just <a title="http://dickyjim.wordpress.com/2011/11/07/game-guilt/" href="http://dickyjim.wordpress.com/2011/11/07/game-guilt/">finish off the other games in the queue</a>.</li>
<li>More blogs for the <a title="http://dickyjim.wordpress.com/category/blogs-ive-read/" href="http://dickyjim.wordpress.com/category/blogs-ive-read/">Blogs I&#8217;ve Read</a> category.</li>
<li>Maybe an iPhone app or two that I&#8217;ve enjoyed.</li>
</ul>
]]></content:encoded>
</item>
<item>
<title><![CDATA[2011 Review]]></title>
<link>http://eventuallyconsistent.net/2011/12/31/2011-review/</link>
<pubDate>Sat, 31 Dec 2011 22:30:32 +0000</pubDate>
<dc:creator>Steve Bate</dc:creator>
<guid>http://eventuallyconsistent.net/2011/12/31/2011-review/</guid>
<description><![CDATA[Just had to get a quick end of year post up. Yep, it&#8217;s new years eve, I&#8217;ve just finished]]></description>
<content:encoded><![CDATA[Just had to get a quick end of year post up. Yep, it&#8217;s new years eve, I&#8217;ve just finished]]></content:encoded>
</item>
<item>
<title><![CDATA[2011 Spring results]]></title>
<link>http://knockycode.wordpress.com/2011/12/20/2012-spring-results/</link>
<pubDate>Tue, 20 Dec 2011 08:07:39 +0000</pubDate>
<dc:creator>Key</dc:creator>
<guid>http://knockycode.wordpress.com/2011/12/20/2012-spring-results/</guid>
<description><![CDATA[Subject Code Subject Name Mark Result Points Gained 31244 Applications Programming 89 High Distincti]]></description>
<content:encoded><![CDATA[<div style="line-height:1.5;">
<table>
<tbody>
<tr>
<th>Subject Code</th>
<th>Subject Name</th>
<th>Mark</th>
<th>Result</th>
<th>Points Gained</th>
</tr>
<tr>
<td>31244</td>
<td>Applications Programming</td>
<td>89</td>
<td>High Distinction</td>
<td>6</td>
</tr>
<tr>
<td>31269</td>
<td>Business Requirements Modelling</td>
<td>68</td>
<td>Credit</td>
<td>6</td>
</tr>
<tr>
<td>31270</td>
<td>Networking Essentials</td>
<td>79</td>
<td>Distinction</td>
<td>6</td>
</tr>
<tr>
<td>31271</td>
<td>Database Fundamentals</td>
<td>66</td>
<td>Credit</td>
<td>6</td>
</tr>
</tbody>
</table>
<p>I am extremely happy with my Networking Essentials results. :D Pretty sad with my Database Fundamentals mark, but I hope that&#8217;s not an indicator of how well I design databases when I go out to the real world. I did great in my database subjects back in TAFE&#8230;.</p>
<p>Anyway, back to writing up this Git and BitBucket tutorial that&#8217;s <a href="https://www.progclub.net/~key720/tutorials/git_bitbucket/">hosted</a> here. It&#8217;s not even half-finished and yet it&#8217;s a wall of text already. But I&#8217;ve learnt a lot in regard to VCS&#8217;s and some of the differences between distributed VCS&#8217;s and centralised VCS&#8217;s, and those damn line endings. I really hope Windows 8 follows Mac OS X and stick to LF when it comes to EOL marking.</p>
<p><strong>EDIT</strong>: Something went wrong, apparently, with the posting of my Database Fundamentals mark. It is now 78, giving me a Distinction. W00t!
</div>
]]></content:encoded>
</item>
<item>
<title><![CDATA[How to delete a remote GIT branch]]></title>
<link>http://ecoders.wordpress.com/2011/12/12/how-to-delete-a-remote-git-branch/</link>
<pubDate>Mon, 12 Dec 2011 15:09:36 +0000</pubDate>
<dc:creator>emilpk</dc:creator>
<guid>http://ecoders.wordpress.com/2011/12/12/how-to-delete-a-remote-git-branch/</guid>
<description><![CDATA[Today I needed to delete one of my remote branches.  Here is the solution I found, simply run this c]]></description>
<content:encoded><![CDATA[<p>Today I needed to delete one of my remote branches.  Here is the solution I found, simply run this command from GIT Bash:</p>
<p>$ <strong>git push origin :remoteBranchName</strong></p>
<p>So if for example your remote branch is called &#8220;testBranch&#8221; and the remote is called &#8220;origin&#8221;, you would run:</p>
<p>$ <strong>git push origin :testBranch</strong></p>
<p>Hope this helps anyone out there.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Coldboot Code Available]]></title>
<link>http://martinralbrecht.wordpress.com/2011/12/02/coldboot-code-available/</link>
<pubDate>Fri, 02 Dec 2011 10:53:22 +0000</pubDate>
<dc:creator>martinralbrecht</dc:creator>
<guid>http://martinralbrecht.wordpress.com/2011/12/02/coldboot-code-available/</guid>
<description><![CDATA[After receiving two inquiries about the coldboot attack paper which were best answered by looking at]]></description>
<content:encoded><![CDATA[<p>After receiving two inquiries about the coldboot attack paper which were best answered by looking at the code or by comparing with our code, I figured it was about time I put it online. So here it is:</p>
<p><a href="//bitbucket.org/malb/algebraic_attacks/src/1af75effcc7d/coldboot">https://bitbucket.org/malb/algebraic_attacks/src/1af75effcc7d/coldboot</a></p>
<p>For this code to run you&#8217;ll need to apply this patch to<a href="http://www.sagemath.org"> Sage</a>:</p>
<p><a href="http://trac.sagemath.org/sage_trac/ticket/10879">http://trac.sagemath.org/sage_trac/ticket/10879</a></p>
<p>which adds an interface to <a href="http://scip.zib.de/">SCIP</a>. Unfortunately, this patch crashes on OSX and I didn&#8217;t figure out yet why. Anybody willing to help, please step forward <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Also, I assume the code on bitbucket needs some patching to work with the most recent version of Sage. Patches very welcome!</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[using bitbucket for a research repository]]></title>
<link>http://parezcoydigo.wordpress.com/2011/11/30/using-bitbucket-for-a-research-repository/</link>
<pubDate>Wed, 30 Nov 2011 16:18:37 +0000</pubDate>
<dc:creator>ctb</dc:creator>
<guid>http://parezcoydigo.wordpress.com/2011/11/30/using-bitbucket-for-a-research-repository/</guid>
<description><![CDATA[Why Version Control Choosing a VCS for research materials Setting Up A Bitbucket Repo Installing Mer]]></description>
<content:encoded><![CDATA[<div class="toc">
<ul>
<li><a href="#why-version-control">Why Version Control</a>
<ul>
<li><a href="#choosing-a-vcs-for-research-materials">Choosing a VCS for research materials</a></li>
<li><a href="#setting-up-a-bitbucket-repo">Setting Up A Bitbucket Repo</a>
<ul>
<li><a href="#installing-mercurial">Installing Mercurial</a></li>
<li><a href="#setting-up-a-bitbucket-repo_1">Setting Up a BitBucket Repo</a></li>
<li><a href="#you-need-a-local-copy">You Need A Local Copy</a></li>
</ul>
</li>
<li><a href="#the-workflow">The Workflow</a></li>
<li><a href="#mercurial-resources">Mercurial Resources</a></li>
<li><a href="#other-version-control-like-options">Other version-control-like options</a></li>
</ul>
</li>
</ul>
</div>
<h2 id="why-version-control">Why Version Control</h2>
<p>In the long, long ago days of March 2010, Julie Meloni posted <a href="http://chronicle.com/blogs/profhacker/a-gentle-introduction-to-version-control/23064">a piece</a> on the ProfHacker blog on version control systems (VCS) and what they might offer to the everyday academic trying to hack her workflow. If you don&#8217;t know what version control is, take a look at that post. VCSs originated with the specific needs of software programmers to save, access, restore, share, collaborate asynchronously on code. Version control has become a cornerstone of software development, and even more so of the social aspects that mark open source/free software communities. Sites such as <a href="http://github.com">Github</a> have flourished because of the ease with which individuals can share, fork, and otherwise review and distribute code for open source projects <a href="https://github.com/parezcoydigo/myTasks">super small</a> and <a href="https://github.com/torvalds/linux">super large</a>. (That&#8217;s right&#8211; the linux kernel.) There are a number of open source VCSs that are available free of charge, including <a href="http://subversion.apache.org/">Subversion</a> (svn), <a href="http://git-scm.com/">Git</a>, and <a href="http://mercurial.selenic.com/">Mercurial</a> (hg).</p>
<p>That&#8217;s all well and good for code, but what does it have to do with an historian&#8217;s research repository? Well, the basics of version control boil down to this this &#8211;&#62; documents placed under revision control are tracked by the VCS. Changes to those documents are committed, together with a message summarizing the changes, to a repository. Repositories can be replicated, or cloned, on any machine that has the VCS installed. In essence, every change to a document that you save and commit to the repository is eternally there, and can be returned to. Differences between versions of documents can be visualized. There are other useful aspects for academics as well&#8211; including branching, which allows you to create a parallel version of any document and develop it independently. Just as an example, say you have a single CV that you want to adapt for specific venues (grant applications, job applications to different types of universities/colleges, etc.)&#8211; with varying degrees of ease depending on the VCS, you could branch that CV into different forms tagged by their intended use.  With a few simple commands, these changes can then be synced across your computers.
</p>
<p>Suffice to say, a VCS offers an academic the ability to maintained versioned backups of his or her research and other personal files. And, for my own DIY predilections, I must admit that I like repurposing tools intended for wholly different audiences and putting them to work for historical research.
</p>
<h2 id="choosing-a-vcs-for-research-materials">Choosing a VCS for research materials</h2>
<p>Following Meloni&#8217;s advice back in March of 2010, I began to play with svn for maintaining a repo of my research and writing. (This post, for example, will be committed to my svn repo, which I haven&#8217;t yet migrated away from completely.) My webhost offers svn repos as part of its standard hosting package, and so I went that direction first. I was attracted by the idea in part because as a commuter, I have a variety of personal and work machines that I use on a regular basis &#8212; and I wanted all of my research files to sync on all those different computers. I also am attracted to the idea of redundancy in backup methods. I currently have offsite backups of my main laptop on <a href="http://www.backblaze.com/">backblaze</a>. I have some of my stuff in <a href="http://www.dropbox.com">Dropbox</a>. I also clone the hard drive of my laptop once a week to an external drive. Paranoid, I know. But I&#8217;ve come by that paranoia honestly.
</p>
<p>When I started in earnest to collect, transcribe, and analyze sources for my next project, I decided I wanted a project-specific, version-controlled repository for my sources and python scripts related to the project. I could have done this with my svn repo on my server. With svn, a single central repo tracks folders and files. You checkout either all or part of the repo, work locally, and then commit everything back to that central repo. Works great, though svn makes some things like branching overly difficult.
</p>
<p>After putting a small bit of <a href="http://github.com/parezcoydigo">code</a> up on Github, I discovered that I liked working with git, which operates on a different model than svn. Git clones repositories to wherever you want them in their entirety. Changes to documents are made to a local working copy of the document, committed locally, and then pushed/pulled to/from other repositories. Branching is much easier, as is merging changes back in. But, these are my research files, many of which aren&#8217;t ready for prime time yet. Github offers private repositories, but only for pay. I&#8217;m a cheapskate historian, so I went looking for a service that offered even a limited number of private repos for free. Enter Bitbucket, which offers free public and private repos for accounts with up to five users. In fact, BitBucket also offers an unlimited license to academics with a verifiable .edu <a href="http://www.atlassian.com/software/views/bitbucket-academic-license.jsp">address</a>. I like companies that offer educator discounts. Given the availability of free private repos, I decided to go with Bitbucket for my research archive.</p>
<h2 id="setting-up-a-bitbucket-repo">Setting Up A Bitbucket Repo</h2>
<p>Bitbucket now supports git, but when I started this project, it didn&#8217;t. So, the rest of this post will be a tutorial on using Mercurial with Bitbucket. As long as you&#8217;re not scared of using the command line a little (and would you be reading this if you were?), basic usage is very straight forward.
</p>
<h3 id="installing-mercurial">Installing Mercurial</h3>
<p>The most important first step is to install Mercurial on your machine. There are a couple of options for doing this. The easiest is to <a href="http://mercurial.selenic.com/downloads/">download</a> the appropriate package installer for your operating system (OS X or Windows) just as you would any other piece of software. On Linux, <a href="http://hgbook.red-bean.com/read/a-tour-of-mercurial-the-basics.html">install</a> with your distribution&#8217;s package installer.
</p>
<p>Alternatively on a Mac, if you use <code>homebrew</code> you can install with:<br />
<code>$ brew install mercurial</code>
</p>
<p>Finally, if you&#8217;re familiar with python and use either <code>easy_install</code> or <code>pip</code>, you can install that way. Mercurial is written in python, and is available as a python package. So, for a systemwide install, you simply need:<br />
<code>$ sudo easy_install mercurial</code><br />
or<br />
<code>$ sudo pip install mercurial</code>
</p>
<p>Mercurial uses <code>hg</code> (the chemical symbol for mercury) as its alias on the command line. So, to verify that the installation worked, open a terminal prompt at enter:<br />
<code>$ hg --version</code>
</p>
<p>As of this writing, you should see something like:<br />
<code>Mercurial Distributed SCM (version 2.0)</code><br />
<code>(see <a href="http://mercurial.selenic.com" rel="nofollow">http://mercurial.selenic.com</a> for more information)</code><br />
<code>Copyright (C) 2005-2011 Matt Mackall and others</code>
</p>
<p><code>This is free software; see the source for copying conditions. There         is  NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</code>
</p>
<h3 id="setting-up-a-bitbucket-repo_1">Setting Up a BitBucket Repo</h3>
<p>Once <code>hg</code> is installed, the next step is to set up the private repository for your research materials on Bitbucket. It&#8217;s a painless process. Fill out the information on the <a href="https://bitbucket.org/account/signup/">sign up page</a>. Please note that your username will define the urls for your repositories, so choose it carefully. If you may want an educator&#8217;s unlimited account in the future, provide your university email address.
</p>
<p>Once your account is set up, log in to your account. From the Repositories tab, click on <code>create repository</code>. One the next form, create a new repository from scratch by providing a name (like, say, &#8220;Research&#8221;). Make sure that Private is selected, along with Mercurial as the repository type. You can also choose to use either an issue tracker or wiki for Project Management. This is actually a cool feature. For humanities projects, I like to use a wiki, which I then use for project planning, large project ideas, and the like. Click on <code>Create repository</code>, and voila, you have an empty repository. Navigate on over to your new repository page, which will be in this pattern: <code><a href="https://bitbucket.org/&#060;username&#062;/&#060;repo&#038;#62" rel="nofollow">https://bitbucket.org/&#060;username&#062;/&#060;repo&#038;#62</a>;</code>. Nothing to see there yet, but now we&#8217;ll fix that.
</p>
<h3 id="you-need-a-local-copy">You Need A Local Copy</h3>
<p>OK, so now we need to set up a repo on your local machine to work with your bitbucket repo. We need to make a folder for the repo, we need to clone it, and then we can start to populate it with research materials that we&#8217;ll push back to bitbucket. This is the same process you&#8217;ll follow on any other computers you&#8217;d like to have your materials on as well. So, here we go.
</p>
<p>First up, make a folder to put your repo in. I like to use a <code>projects</code> folder in my home directory. YMMV. Time to get a little used to the terminal, so let&#8217;s do it there. From your home directory, which is the directory Terminal will probably open in (if not you can always get there with a simple <code>$ cd</code>), enter this command at the prompt: 
</p>
<ol>
<li><code>$ mkdir projects</code>
</li>
</ol>
<p>The road to version control forks here. When cloning your remote repo, you have two options. The first, using <code>https</code> requires you to enter your bitbucket password each time. The second uses <code>ssh</code> and requires that you enter an ssh key once in your bitbucket account settings. Let&#8217;s look at the latter. On a Mac, this is pretty easy. We need to change into a hidden folder. You should already be in your home directory, and if you are, enter this:
</p>
<ol>
<li><code>$ cd .ssh</code>
</li>
<li><code>$ ssh-keygen</code>
</li>
</ol>
<p>This will create an ssh public/private key pair. Open the public key with vim or nano or your favorite text editor. It will most likely be named <code>id_rsa.pub</code>. You can check with <code>$ ls</code>. Highlight the <strong>entire</strong> key and copy it to your clipboard. Now, go back to your <a href="https://bitbucket.org/account">bitbucket account page</a> and paste the key in the Add Key box. Now, back to your terminal. Change into your <code>projects</code> directory and clone the repo:
</p>
<ol>
<li><code>$ hg clone ssh://hg@bitbucket.org/&#60;username&#62;/&#60;repo&#62;</code>
</li>
</ol>
<p>Of course, substitute your username and repo name there. This will create a new folder with the name of your repo, and where your files will reside. The <code>https</code> method is similar, but requires no keygen, so you would have gone straight to cloning the repo for step two:
</p>
<ol>
<li><code>hg clone <a href="https://&#060;username&#062;@bitbucket.org/&#060;username&#062;/&#060;repo&#038;#62" rel="nofollow">https://&#060;username&#062;@bitbucket.org/&#060;username&#062;/&#060;repo&#038;#62</a>;</code>
</li>
</ol>
<p>That said, I prefer the ssh method.
</p>
<p>Either way, you&#8217;re ready to go!
</p>
<h2 id="the-workflow">The Workflow</h2>
<p>Now that your repos are set up and linked, we can start putting files in them. Mercurial tracks files, and not folders. So empty folders won&#8217;t show up. Also, binary files (like, for example, .docx files) are more difficult than plain text files for VCSs to track. Mercurial will detect changes to a .doc file, but will store a whole copy of the new version rather than just the changes to the file like it does with txt. This can cause, over time, the repo to get large. But, as I&#8217;ve argued here <a href="http://parezcoydigo.wordpress.com/2011/03/14/update-on-the-ever-changing-workflow/">before</a>, plain text files are more durable, platform independent, and compact. I&#8217;ve switched to taking all my notes in .txt files, using markdown/multimarkdown syntax. I&#8217;ve also started switching excel spreadsheets to .csv files wherever I can. OK, back to the workflow.
</p>
<p>On the most basic level, working with Mercurial will involve the following steps: 1. adding new files to version control; 2. committing changes in those files to the respository; 3. pushing changes from the local repo to bitbucket.
</p>
<p>On a day-to-day basis, the workflow looks like this. If I&#8217;m transcribing a new document, I save that file to one of the folders in my local repo. The folder structure is normal&#8211; however you like to set up your research files. At some point, I add the new document to version control with the command: <code>$ hg add</code>. This will add any file in the repo to version control that isn&#8217;t already. As I accumulate substantial work on a version controlled file, I commit it to the local repo with <code>$ hg commit -m "A message about the work."</code> Note that hg requires a commit message with any commit. I find the log of messages a nice way to track my progress. At least once a day (depending on how much work I&#8217;ve gotten done), I push the local repo changes to bitbucket with <code>$ hg push</code>. I do this almost entirely using <a href="http://decimus.net/DTerm">D-Term</a>, which rules and provides a <a href="http://parezcoydigo.wordpress.com/2011/05/26/dterm-the-popup-cli/">dropdown command line</a> already in the directory you&#8217;re working from. And, that&#8217;s it for the most basic workflow. I now have an iterative back-up of all my research files both on my local machine at in the private repo at bitbucket. There are more advanced commands that are useful as well, but I&#8217;ll save those for another time.
</p>
<p>A couple of final caveats &#8212; putting a file in the trash doesn&#8217;t remove it from your version control history. The proper way to erase a file is with the command <code>$ hg remove &#60;filename&#62;</code>. Likewise, the proper way to rename a file is with <code>$ hg rename &#60;filename&#62;</code>.  Otherwise, a file will show up as missing, and will need to be removed at the next commit. You can also get into trouble with conflicting versions in different repos, which require merging.  
</p>
<p>If you&#8217;re not comfortable with the command line, there are a couple of nice, and free, GUIs for managing an hg repo. For the Mac, there&#8217;s the aptly named <a href="http://jasonfharris.com/machg/">MacHg</a>. For Windows, there&#8217;s <a href="http://tortoisehg.bitbucket.org/">TortoiseHg</a>.
</p>
<h2 id="mercurial-resources">Mercurial Resources</h2>
<p>There is, obviously, much more to Mercurial than I&#8217;ve listed above. In the future, I&#8217;ll cover branching and merging scenarios for typical humanities work. Luckily, in the mean time there is some excellent documentation available. Brian O&#8217;Sullivan has a free online version of his <a href="http://hgbook.red-bean.com/">**Mercurial: The Definitive Guide</a>. There&#8217;s a nice <a href="http://hginit.com/">tutorial</a> by Joel Spolsky. And Bitbucket&#8217;s <a href="http://confluence.atlassian.com/display/BITBUCKET/Bitbucket+Documentation+Home">support pages</a> are also useful. </p>
<h2 id="other-version-control-like-options">Other version-control-like options</h2>
<p>If you&#8217;re not ready to make the plunge into a full-fledged VCS, there are  other options likely already at your finger tips. That&#8217;s certainly the case if you use a Mac. With the release of OS X Lion, Apple has integrated version control more explicitly into its operating system. If you look at the save dialogue from the File tab on any program, you&#8217;ll see that Save now says Save Version. This form of save is actually tracking changes, and earlier versions can be browsed if the application supports the feature. Together with Apple&#8217;s TimeMachine, that takes you a pretty long way towards version control of your documents. Additionally, for Mac users, programs like <a href="http://www.tool-forcesw.com/foreversave/">ForeverSave</a> offer version control for pretty much any program and their binary files. If you use DropBox, you can pay a little bit extra to turn on version control that can be accessed from their web interface for anything you keep in your DropBox.
</p>
<p>Dropbox isn&#8217;t platform specific, but I must admit that I don&#8217;t know what the ForeverSave or OS-Specific options are on Windows or Linux. Feel free to share such in the comments.</p>
]]></content:encoded>
</item>

</channel>
</rss>
