Advertise with Googlier.compages tagged software
http://www.bitpipeline.eu/tags/software/
BitPipelineikiwikiSun, 21 Sep 2014 13:40:47 +0200IParkAmsterdam - opensourcehttp://www.bitpipeline.eu/Blog/20140921-IParkAmsterdam-opensource/
http://www.bitpipeline.eu/Blog/20140921-IParkAmsterdam-opensource/
androidiparkamsterdamopensourcesoftwareSun, 21 Sep 2014 13:40:47 +02002014-09-21T11:40:47Z<p><a href="http://www.bitpipeline.eu/Blog/20140921-IParkAmsterdam-v0.3.png"><img src="http://www.bitpipeline.eu/Blog/20140921-IParkAmsterdam-opensource/192x-20140921-IParkAmsterdam-v0.3.png" width="192" height="320" class="screenshot" align="right" /></a></p>
<p>A long time ago (really, it feels like ages) I wrote a small Android application to help people find less expensive parking places in Amsterdam making use of <a href="http://www.parkshark.nl/">Glimworm SharkPark API</a> and OpenStreetMaps.</p>
<p>Today, one year and five months after the first release, I decided to set the application free and opensource it.</p>
<p>The code is available at <a href="https://github.com/migtavares/IParkAmsterdam">github/migtavares/IParkAmsterdam</a> and I invite everyone to fork it and send pull requests.</p>
<p>I can tell you that today's morning was a fun one... lots of remembering how things were done last year.</p>
<div style="clear:both"></div>
WindsurfBuddy: equipment browser, viewer and editorhttp://www.bitpipeline.eu/Blog/20131113-WindsurfBuddy_equipment_management/
http://www.bitpipeline.eu/Blog/20131113-WindsurfBuddy_equipment_management/
androidsoftwarewindsurfbuddyWed, 13 Nov 2013 11:56:14 +01002013-11-13T10:56:14Z<p>The implementation of equipment management within <a href="http://www.bitpipeline.eu/Projects/WindsurfBuddy/">Windsurf Buddy</a> is proceeding although at a pace that is not as fast as I would like.</p>
<p>So what's done until now?</p>
<p><a href="http://www.bitpipeline.eu/Blog/20131113-WindsurfBuddy-browser.png"><img src="http://www.bitpipeline.eu/Blog/20131113-WindsurfBuddy_equipment_management/192x-20131113-WindsurfBuddy-browser.png" width="192" height="319" class="screenshot" align="right" /></a></p>
<p>Browsing the equipment in the database is pretty much done. A rolling tabs header and then a simple straight forward list of equipment. </p>
<p>Taping the plus action creates a new equipment of the type of the currently selected tab. Taping on a equipment item brings up a new activity to view that specific equipment. A long tap on any equipment of the list will toggle into the list into multiple selection mode that can be used to remove several item. Maybe in the future it will also enable exporting the selected equipment... we'll see.</p>
<p><a href="http://www.bitpipeline.eu/Blog/20131114-WindsurfBuddy-viewer.png"><img src="http://www.bitpipeline.eu/Blog/20131113-WindsurfBuddy_equipment_management/192x-20131114-WindsurfBuddy-viewer.png" width="192" height="319" class="screenshot" align="left" /></a></p>
<p>Viewing each equipment is now a activity on its own instead of a floating dialog. I feel that it makes better use of screen space and being an activity allows for future integration with other applications. The layout is similar the one used for viewing contacts making it a familiar display to the user.</p>
<p>The little pencil action allows to launch a editing activity for the equipment being viewed.</p>
<p><a href="http://www.bitpipeline.eu/Blog/20131115-WindsurfBuddy-edit.png"><img src="http://www.bitpipeline.eu/Blog/20131113-WindsurfBuddy_equipment_management/192x-20131115-WindsurfBuddy-edit.png" width="192" height="319" class="screenshot" align="right" /></a></p>
<p>Editing a equipment is still a ongoing implementation. Done are editing the name of the equipment as well as it's brand, collection and description. The real slaving will be over editing the very specific details of each equipment. I don't want to have a implementation that is tide to each equipment but would rather have a more generic approach.</p>
<p>The green plus signs right of the brand and collection selectors will be used to quickly create a new brand or collection, speeding up the insertion of new equipment.</p>
WindsurfBuddy: equipment databasehttp://www.bitpipeline.eu/Blog/20130826-WindsurfBuddy-databasing/
http://www.bitpipeline.eu/Blog/20130826-WindsurfBuddy-databasing/
androidsoftwarewindsurfbuddyMon, 26 Aug 2013 15:56:50 +02002013-08-26T13:56:50Z<p>Lately I have been working on having a proper database of equipment for <a href="http://www.bitpipeline.eu/Projects/WindsurfBuddy/">Windsurf Buddy</a> and using the database engine to do most of the processing of providing the best equipment advice. Until now the equipment was a static collection of Java objects and resources.</p>
<p>I have several <em>hopes</em> on the result of development:</p>
<ul>
<li>easier to extend suggestions: for example also provide masts advices according to the sail specifications and brand "affinity" (some sails work better with some mast brands);</li>
<li>user management of the equipment (adding, editing, deleting, etc);</li>
<li>sharing of equipment data between users and a central equipment repository (still just an idea).</li>
</ul>
<p>The database schema for now is composed of around 20 tables - not that many but keep in mind that this is running in phones, even older Android phones too. To avoid writing lots of code that translate SQL results into Java objects (a <a href="https://en.wikipedia.org/wiki/Object-relational_mapping">ORM</a>) I'm using <a href="http://ormlite.com">ORMLite</a>. Some, if not most, of the queries to the database are still almost raw SQL.</p>
<p>Until now it this approach work well but is still far from being comparable to the existing static objects and resources implementation. That moment is nevertheless getting closer and the next 1.5 release will start using this database for the equipment.</p>
WindsurfBuddy: 1K+ active usershttp://www.bitpipeline.eu/Blog/20130722-Windsurfbuddy-1000-users/
http://www.bitpipeline.eu/Blog/20130722-Windsurfbuddy-1000-users/
androidsoftwarewindsurfbuddyMon, 22 Jul 2013 15:00:34 +02002013-07-22T13:00:34Z<p>Acording to Google statistics <a href="http://www.bitpipeline.eu/Projects/WindsurfBuddy/">Windsurf Buddy</a> has pass the mark of the 1000 active users on 10th of Jully. It's rewarding to see that this small project is growing.</p>
<p>My thanks to the all users.</p>
<p>Don't forget that you can join the <a href="https://plus.google.com/communities/102165194897985318092">Google+ Windsurf Buddy.beta community</a> and get early beta versions of <a href="http://www.bitpipeline.eu/Projects/WindsurfBuddy/">Windsurf Buddy</a>.</p>
WindsurfBuddy: beta versions and almost ready to shiphttp://www.bitpipeline.eu/Blog/20130613-WindsurfBuddy_Almost_there/
http://www.bitpipeline.eu/Blog/20130613-WindsurfBuddy_Almost_there/
androidsoftwarewindsurfbuddyThu, 13 Jun 2013 19:19:59 +02002013-06-13T17:19:59Z<p>Since the last great Google I/O 2013 its possible for android developers using deploying Google Play to distribute their applications to also release alpha and beta versions to a exclusive set of users. The way Google uses to define that set of users is using a Google+ community of a Google Groups. I decided to give it a trial with the former.</p>
<p>So now available at Google+ is a community of adventurous people that don't mind trying the beta versions of <a href="http://www.bitpipeline.eu/Projects/WindsurfBuddy/">Windsurf Buddy</a>: <a href="https://plus.google.com/communities/102165194897985318092">Google+ Windsurf Buddy.beta community</a>. Feel free to join in.</p>
<p>Today I am going to release the beta 3 of version 1.4. If everything feels solid and working properly then I'll upgrade to production.</p>
<p>So what is new/different in the new version? In terms of features maybe not much has change - added support for dagger fins and removed the wind speed converter that is available as a single application with more capabilities than while a feature of <a href="http://www.bitpipeline.eu/Projects/WindsurfBuddy/">Windsurf Buddy</a>. The major change is in the UI and the underlying code.</p>
<p>Planed for the near future are some improvements in the algorithms used to calculate sail size and fin length. Specially when it comes to racing and speed windsurfing. Then the management of equipment has to be implemented. That is bound to be fun... <img src="http://www.bitpipeline.eu/smileys/smile.png" alt=":)" /></p>
<p>I do hope you enjoy it.</p>
IParkAmsterdamhttp://www.bitpipeline.eu/Blog/20130414-IParkAmsterdam-dev/
http://www.bitpipeline.eu/Blog/20130414-IParkAmsterdam-dev/
androidiparkamsterdamsoftwareSun, 14 Apr 2013 23:53:11 +02002013-04-14T21:53:11Z<p>I've been thinking about implementing a simple Android application that uses mapping for quite a while but never found the time or the right idea to start.</p>
<p><a href="http://www.bitpipeline.eu/Blog/20130414-IParkAmsterdam-development.png"><img src="http://www.bitpipeline.eu/Blog/20130414-IParkAmsterdam-dev/192x-20130414-IParkAmsterdam-development.png" width="192" height="320" class="screenshot" align="right" /></a></p>
<p>Yesterday I participated in a <a href="http://meetup.appsterdam.rs/events/112812892">Appsterdam event</a> with the guys from <a href="http://www.glimworm.com/">Glimworm</a> showing and talking about <a href="http://api.parkshark.nl/">Park Shark API</a>, the Open API they created for querying the price of parking in the city of Amsterdam.</p>
<p>Today, after enjoying a nice bicycle ride (first day of the year were you could go out with a simple sweater), I decided to get my hands dirty and create a small application that made use of the Park Shark API and some mapping solution.</p>
<p>I don't really want to use a <a href="https://developers.google.com/maps/documentation/android/">Google Maps Android API</a> key for this small applications and I am a big fan of <a href="http://www.openstreetmap.org/">Open Street Maps (OSM)</a> for quite a long time. Searching for possible ready to go solution that would allow me to use OSM within a Android application lead me to the project <a href="https://code.google.com/p/osmdroid/">OSMDroid</a> that provides a very similar API to the Google Maps API.</p>
<p>The name of the application includes a <em>beta</em> but it's really just very preliminary code. I did have fun writing it, and had some struggles to get things going as I desire. Specially when it comes to the interaction with the map.</p>
Wind Speed Converter release 1.5.4http://www.bitpipeline.eu/Blog/20130412-WindSpeed-bugFix-release/
http://www.bitpipeline.eu/Blog/20130412-WindSpeed-bugFix-release/
androidsoftwarewindspeedconverterFri, 12 Apr 2013 11:36:08 +02002013-04-12T09:36:08Z<p>A new release of <a href="http://www.bitpipeline.eu/Projects/WindSpeedConverter/">WindSpeed</a> Started to use the API key for use when contacting the Open Weather Map servers and better user notification of error when updating the weather station information.</p>
Windsurf Buddy - continuing developmenthttp://www.bitpipeline.eu/Blog/20130411-WindsurfBuddy-development/
http://www.bitpipeline.eu/Blog/20130411-WindsurfBuddy-development/
androidsoftwarewindsurfbuddyFri, 12 Apr 2013 08:53:39 +02002013-04-12T06:53:39Z<p>Work is on going for the next <a href="http://www.bitpipeline.eu/Projects/WindsurfBuddy/">Windsurf Buddy</a> version.</p>
<p>The equipment advisor is getting to be slightly more capable than the previous one, with more rule matching to make sure that only the things that make sense show up. For example if a user chooses a <em>Beginner</em> use case then it doesn't make sense to show windsurf disciplines like <em>wave</em>.</p>
<p>The next screenshot is just a view of my desktop while working on <a href="http://www.bitpipeline.eu/Projects/WindsurfBuddy/">Windsurf Buddy</a>. Would you believe that I have fun this way? <img src="http://www.bitpipeline.eu/smileys/smile.png" alt=":)" />
<center>
<a href="http://www.bitpipeline.eu/Blog/20130411-WindsurfBuddy-development.png"><img src="http://www.bitpipeline.eu/Blog/20130411-WindsurfBuddy-development/384x-20130411-WindsurfBuddy-development.png" width="384" height="240" class="screenshot" align="center" /></a>
</center></p>
<p>Another things that I have been toying is the presentation of the multi-fin information. I don't know if this right/left looks nice (the one shown in the bigger Android emulator window).</p>
<p>One good news in regard to fin selection: it will be possible to change the balance of the fins length -- have more control or earlier planning. I'll write more about this soon.</p>
Windsurf Buddy - work in progresshttp://www.bitpipeline.eu/Blog/20130405-WindsurfBuddy-WIP/
http://www.bitpipeline.eu/Blog/20130405-WindsurfBuddy-WIP/
androidsoftwarewindsurfbuddyFri, 05 Apr 2013 16:30:02 +02002013-09-23T09:34:44Z<p>It's has been quite a while and <a href="http://www.bitpipeline.eu/Projects/WindsurfBuddy/">Windsurf Buddy</a> is in need of some care. Specially the UI, which feels old fashion -- it has a clear Android Gingerbread feel to it.</p>
<p><a href="http://www.bitpipeline.eu/Blog/20130405-WindsurfBuddy-wip-advisor.png"><img src="http://www.bitpipeline.eu/Blog/20130405-WindsurfBuddy-WIP/192x-20130405-WindsurfBuddy-wip-advisor.png" width="192" height="320" class="screenshot" align="left" /></a></p>
<p>So it was time for a revamp of the UI and to take advantage of the new features of the Android OS such as <a href="https://developer.android.com/guide/components/fragments.html">fragments</a> and new <a href="http://android-developers.blogspot.nl/2012/01/holo-everywhere.html">Holo</a> style.</p>
<p><a href="http://www.bitpipeline.eu/Blog/20130406-WindsurfBuddy-wip-settings.png"><img src="http://www.bitpipeline.eu/Blog/20130405-WindsurfBuddy-WIP/192x-20130406-WindsurfBuddy-wip-settings.png" width="192" height="320" class="screenshot" align="right" /></a></p>
<p>It's far from finished. Much work still ahead before the next release.</p>
<p>The old dashboard is gone. I think it made sense at the time (so many other applications were also using it) but it became old fashion rather quickly. With good reasons actually. With this redesign when starting <a href="http://www.bitpipeline.eu/Projects/WindsurfBuddy/">Wind speed</a> the user will be presented with exactly what he is expecting to use: some good tips on what equipment to use.</p>
<p>The rest of the application can be reached either by using the navigation within the application bar or, for some very specific activities, by using the menu.</p>
<p><a href="http://www.bitpipeline.eu/Blog/20130407-WindsurfBuddy-wip-catalog.png"><img src="http://www.bitpipeline.eu/Blog/20130405-WindsurfBuddy-WIP/192x-20130407-WindsurfBuddy-wip-catalog.png" width="192" height="320" class="screenshot" align="left" /></a></p>
<p>One feature I think I'll drop from the application is the Wind Speed Conversion but will probably integrate it with the <a href="http://www.bitpipeline.eu/Projects/WindSpeedConverter/">Wind speed</a> application. No duplication of functionality and it will be a lot easier to manage.</p>
<p>On the other hand.. I'm dying to squeeze some new features like adding equipment definition which would enable the user to add it's own equipment.</p>
<div style="clear:both"></div>
My very own dropbox : OwnCloudhttp://www.bitpipeline.eu/Blog/20130329-OwnCloud/
http://www.bitpipeline.eu/Blog/20130329-OwnCloud/
cloudowncloudsoftwareFri, 29 Mar 2013 21:12:49 +01002013-03-29T20:12:49Z<p>Actually, it's a lot more than dropbox, It's also a calendar, contact manager, media player, etc. <a href="http://owncloud.org">OwnCloud</a>, what a great project.</p>
<h2 id="Installing_the_OwnCloud_server.">Installing the OwnCloud server.</h2>
<p>You need to have a web server that suport php and cgi and a database server. I choose to continue to use <a href="http://www.lighttpd.net">lighttpd</a> and <a href="http://www.postgresql.org">postgresq</a>.
Here is my list of <code>USE</code> flags for the relevant packages:</p>
<pre><code>dev-lang/php cgi curl gd imap inifile pcntl pdo postgres threads xmlwriter
www-apps/owncloud -mysql -sqlite postgres
www-servers/lighttpd libev php webdav
</code></pre>
<p><strong>Note</strong>: if you want to have your web root to be somewhere else than the default then you have to tell <code>webapp-config</code> it's location. Do so by editing the file <code>/etc/vhosts/webapp-config</code> and change the value of the variable <code>vhost_root</code> to the base location of your web server (the directory that will contain the <code>htdocs</code>). It's the same as in the <code>/etc/lighttpd/lighttpd.conf</code> variable <code>var.basedir</code>.</p>
<p>With gentoo you have to tell portage to accept keyword for the package <code>www-apps/owncloud</code> and emerge it.</p>
<p>Then edit the <code>lighttpd.conf</code> and add the following:</p>
<pre><code>$HTTP["url"] =~ "^/owncloud/data/" {
url.access-deny = ("")
}
</code></pre>
<p>This will tell <code>lighttpd</code> not to directly publish the files under ownCloud control. You can also change the location of this directory to somewhere else — you'll be asked for it's location the first time you access ownCloud, when you'll be presented with a nice wizard to setup the administrator user credentials, the database connection and data directory location.</p>
<h2 id="Syncing_with_the_linux_desktop">Syncing with the linux desktop</h2>
<p>To set the client in a gentoo host you must emerge the packages (it's hard to actually find out which ones are needed):</p>
<ul>
<li><code>net-misc/csync</code></li>
<li><code>net-misc/mirall</code></li>
</ul>
<p>Then start <code>owncloud</code> in your desktop (it will show up in the systray). Follow the wizard to set up the first configuration and then stop it so that you can set the server target directory to the root (it will be forced to be <code>clientcsync</code>) Edit the file <code>~/.local/share/data/ownCloud/folders/ownCloud</code> and change the line</p>
<pre><code>targetPath=clientcsync
</code></pre>
<p>to</p>
<pre><code>targetPath=
</code></pre>
<p>Start the <code>owncloud</code> again and now the directory <code>~/ownCloud</code> will be synchronized with the server and the other devices. <em>Magic!</em> <img src="http://www.bitpipeline.eu/smileys/smile.png" alt=":)" /></p>
<p>I guess this could also be acomplished by setting a new folder to sync with the user root of the ownCloud, but what's the fun of that?</p>
<p>One thing I would like to find is how to do the synchonization without a X server. Something I still have to research how to do.</p>
<h2 id="For_the_android_devices">For the android devices</h2>
<p>This is as easy as installing the <a href="https://play.google.com/store/apps/details?id=com.owncloud.android">owmClient Android client</a> (or at <a href="http://f-droid.org/repository/browse/?fdfilter=owncloud&fdid=com.owncloud.android">FDroid</a>) and follow the nice wizard.</p>