Archive for the ‘New and interesting’ Category

Fitness tracking, me too ?

October 23, 2016

miband-2

No, it is not ‘me too’, but ‘Mi 2’. I decided last week to jump into the fitness tracking world by buying myself a fitness tracker. And it is called the Mi 2 Band, from Xiaomi.

First of all: me doing fitness ? Ehh, yes, because  we all get older, and sitting behind my desk writing emails, organise meetings, developing software and typing blogs does apparently not increase my fitness.

But going out for a walk, or biking around Brussels, without any compensation is quite difficult. So I bought myself a fitness tracker. I add my targets, and the first 4 days I managed to reach my goals. Except today, because I released Octyx and wrote this blog.

So what is this fitness tracking business about ? First of all, it is about health tracking. All big companies, Apple included, are jumping on this type of business, because they say, and think, they can predict my future health (and hopefully do not share my data with any pharmaceutical companies).

Already the iPhone today, and other Android phones as well, without you knowing it, measure your sleep and walking data while being in your pocket or next to your bed.

Before buying my fitness tracker, I did some research. Which one would fit best? My first choice of course was to look to the Apple Watch, but, with a price over 350 EUR, in my opinion it is still too expensive for daily usage, even if it brings more than fitness measurements.

I also had a look to the FitBit Charge 2 tracker and similar solutions at Garmin and Misfit. Straightforward heart and fitness trackers, but mostly with prices above 100 Euro.

As I don’t know if such fitness tracking device will really help me moving around more, I found a solution at Xiaomi. As you may know, Xiaomi is sometimes called, the ‘Apple’ from China. Xiaomi is a large company, selling many devices, including smartphones, fitness trackers, and other solutions, sold under the brand name ‘Mi’. Have a look at their website here.

The product I found is called Mi Band 2. They use to sell the original MiBand for less than 15 Euro, and the latest MiBand 2 can be found on some websites in China for less than 20 Euro, but could I trust them? Several Amazon sites also sell them, but impossible to export to Belgium, where I live. So I decided to buy one in Prague at an Alza shop, as I am still regularly in Prague for my work.

The price was about 55 Euro, higher than on most mentioned websites, but at least I got one directly in my hands.  At home, unboxed directly, I started first with charging the device. Easy. In the mean time, I downloaded the accompanying app called MiFit from the Apple AppStore (it exists off course also for Android).

Finding the band and syncing was a peace of cake. At its first usage, the Mi Band 2 installed its latest firmware automatically. Data from my Mi Band 2 are visible on the band itself, in the miFit app, and in Apple Health (if you authorise this). Finding the options took some time, as the app is not totally logic.

The miBand 2 tracks my daily steps, tracks my sleep times, and shows my heart rate (via the sensor, but only manual for the moment). And it shows all this in the apps, but also on its little screen. And it shows the time when I want to see it by lifting my hand.

The Mi Band 2 has also options to  vibrate for alarms, sms messages, or several other notifications. It has an interesting notification called ‘idle alert’, with vibrates the band when I do not move for 1 hour during the day. I am trying to implement also notifications for my program Octyx and contacted Xiaomi already for this. I got a nice email reply from them, in Chinese language :-), so I am optimistic on the future.

Battery life is said to be several weeks: I use it since 5 days now, and it used 3% only, so it will probably be true.

And now, what do I do with this? I track my sleep (the data show light sleep and deep sleep), I track my heart rate (looks ok), and I walked a bit more than in the last weeks. Yes, indeed I did !

It gives indeed a boost to make me walk and do more. I am not ready yet to share this with friends (which is also an option), but my target is to loose some kilo’s and be even more in shape than before. And, as an IT guy, I will check out the Bluetooth connectivity,  the quality of the various apps, and the Xiaomi Mi account which I created on their website.

After a few days, I must say I am quite positive for ‘me too’ for fitness, and on the Mi Band 2. I will keep you updated in the future on this topic.

Take care, and have a nice day.

Bas

 

Advertisements

The Octyx 2016 story – 5 – The languages in Octyx

April 30, 2016

firebrickred - 64-64 roundedHello, this blog is part 5 of the series ‘The Octyx 2016 Story’. See for the overview (part 1), full background and a list all related blogs the link here.

This specific blog describes in more detail the languages I use in Octyx, and what is needed to build them.

Octyx is available in 11 languages: in English, French (Français), Dutch (Nederlands), German (Deutsch),  Hungarian (Magyar), Polish (Polski), Czech (Český), Italian (Italiano), Spanish (Español), Portuguese (Português) and in Romanian (Românesc). Real-time change of the language is included in the package.

The languages are made with help of many people. You can see this below. I owe many thanks to all these people.

Capture

The Romanian language is new in Octyx 2016, and Simona Sandu from Romania helped me realising this new language. So what had to be done :

  • Adding all texts which are used in Octyx and Octyx Mobile : these are almost 3000 different records which had to be created
  • Next to these detailed texts, all help texts had to be created also. You have to think on more than 10 different pages, including the screen with new elements.
  • And finally, the Octyx system had to be prepared to be able to receive the 11th language. Due to the architecture, this was a quite straightforward task to change a screen, and to open the language to be available.
  • The user can define or change his language whenever needed. On the mobile version, the language used is the langage chosen in the Windows Octyx version.

Capture121

The website is currently available in 3 languages: English, French and Dutch. Including all help texts.

Enjoy the Octyx blogs, and take care. Go back here to the overview. Octyx manages your life!

Bas Eshuis, Belgium.

April 30, 2016

The Octyx 2016 story – 11 – What does it cost ?

April 30, 2016

firebrickred - 64-64 roundedHello, this blog is part 11 of the series ‘The Octyx 2016 Story’. See for the overview (part 1), full background and a list all related blogs the link here.

This specific blog describes in more detail how much it all costs to build the Octyx applications.

As you may know, I only ask 10 Euro as a cost for Octyx (way to cheap, but private people are not used anymore to pay for software). At this moment, it clearly does not cover all my main direct costs, and where my own time is free of charge:

  • Cost to buy Delphi ‘one-off costs’
  • Yearly subscription cost for Delphi
  • TMS Software modules
  • Code-signing (every year)
  • WebPlus X8 for development
  • Installshield – cost to buy, and to maintain
  • Apple yearly developer costs
  • Mac and PC costs

So what does this all together cost on a yearly basis ? After having calculated all fees, and amortised over the years (hardware – 5 years, software e- 3 years, subscription – yearly), the result is about 3000 EUR a year.

I sell the Octyx program at 10 EUR, of which a part goes to ShareIt (as a seller). My net result per license sold is about 7 EUR. As a license is valid for 3 years at least, I need to sell about 425 Octyx licenses every year to start making some profit.

It would be very nice to sell so many licenses. The reality is, until now, somewhat different. I did sell some licenses of course, but not as much as over 400 a year. Which leads to the simple conclusion that Octyx is an interesting hobby, like for other people golfing, travelling,  fishing, or any other personal hobby you may have.

But I like to see how Octyx develops, and how users react. That is my main driver. And if cost more than it will bring in return, that’s the price of having a hobby.

Enjoy the Octyx blogs, and take care. Go back here to the overview. Octyx manages your life!

Bas Eshuis, Belgium.

April 30, 2016

The Octyx 2016 story – 2 – Why I work on Octyx

April 30, 2016

firebrickred - 64-64 roundedHello, this blog is part 2 of the series ‘The Octyx 2016 Story’. See for the overview (part 1), full background and a list all related blogs the link here.

This specific blog describes in more detail why I work on Octyx since 2004. It started as ‘Avignon Concept’, but I changed the name some years ago to Octyx (as I had 8 different options for my customers to offer).

I started to have end of 2003 a large collection of books, and, that time at least, a lot of music CD’s. Besides, as I lived in several countries and travel a lot, I had to manage any documents with passwords and specific dates. An example: I had to change my passport three months before renewal, and I needed a tool to remember me on this.

In the years after, I had to manage many passwords for different internet or local systems, which, as you all know, have to be changed every 3 or 6 months. I was a heavy user of Microsoft Money since the 90’s to manage my bank accounts, but Microsoft decided to stop developing this solution. So I built one of my own.

And last year I decided to add for example medications as I had to take some medications on a regular basis, and I sometimes forgot to take them on time. This is now solved with Octyx 2016. See below for an overview of the main menu.

Capture2

Octyx is today available in 11 languages. Why ? For 2 reasons: one of them is that I wanted to understand how this could work (it is a hobby), and secondly because I wanted the solution to be available for more people. And I have to chance to speak quite well 4 languages, and to understand several others. Many people helped me with the translations, and I thank them a lot for their help.

I started with sharing the program first as ‘shareware’, and since 2009 I decided to take a step further to sell the program. Which, as you can read later, gave some extra complications as I had to create a small company.

Thus many evolutions in already more than 12 years. Most of this was done in weekends, evenings, nights and holidays. My wife, which I thank for her great support, had a lot of ‘competition’ the last 10 years.

So why do I do this ? My main driver is that I want to see, feel and check how many things can be done by one person in IT. Because I designed and developed the database, the screens, the security, the website, the integrations with Google, Apple and many other internet solutions, the testing, and so much more.

I learned that many things can be done if you want to. Thanks to Internet, forums, and other supporting people, I learn every day something new. And it is not finished yet.

As conclusion I use the phrase Apple used some years ago on their Apple TV: it is just a hobby, but clearly a very interesting hobby. It doesn’t make me rich (in money terms), but it definitely enriched my life.

Enjoy the Octyx blogs, and take care. Go back here to the overview. Octyx manages your life!

Bas Eshuis, Belgium.

April 30, 2016

 

The Octyx 2016 story – 7 – The preparation of the mobile application in my Windows application

April 30, 2016

firebrickred - 64-64 roundedHello, this blog is part 7 of the series ‘The Octyx 2016 Story’. See for the overview (part 1), full background and a list all related blogs the link here.

This specific blog describes in more detail the preparation of the Octyx Windows application, and Delphi, for my mobile application.

As said in the previous blog, I use now Kinvey as BAAS solution provider. This means I had to implement in my classic Delphi VCL environment all kind of BAAS functionalities to be able to communicate with REST and JSON (see also my previous blogs).

So how did I proceed:

  • I started with a ‘contract’ screen that every future mobile user has to agree upon (via settings, mobile cloud). On this screen the user has to agree on the Octyx Cloud conditions. The contract can be printed out if wished.
  • On the contract screen, the user has to indicate which information is allowed to be shared in the cloud. Next to that, the user has to indicate his user-id, password and some further details, such as his e-mail address.
  • After agreeing and saving, I built a fully automated procedure (see below) to transfer the agreed data to the Cloud. The user is informed by the usual Octyx information process.

The update procedure, but fully with standard Delphi controls, is checking via arrays all existing local data with the existing Cloud data. A second process then compares all data, and only updates the changed records. Logging is taking place automatically.

I use the standard Kinvey controls in Delphi 10 Seattle, and based myself for a large part on the various BAAS tutorials well-written by Sarina Dupont from Embarcadero. These tutorials helped me a lot to advance, and to implement some specific functions where the standard did not fit.

The overall implementation in the Windows application took me quite some weeks to define, and to ensure that all situations are handled. This could be a one-line change, a language change, dropping of the contract, or any other issue. The final outcome is that it works, and it is very fast.

On starting Octyx, the program automatically logs-in into Kinvey, based on saved credentials, and checks all kind of updates. Automatically, quiet and fast. At any time, the user can decide to stop using the mobile application, and all his data will then be deleted from Octyx Cloud at Kinvey.

One important element is that Kinvey requires all fields to be uploaded at any change, while Parse accepted only the changed fields. This was an important change I had to implement when changing from Parse to Kinvey.

For the 2016 version, currently only ‘medications’ are shared with Kinvey data in the cloud. Further Octyx elements, such as several collections, todo or documents, are scheduled for later in 2016 and 2017.

Enjoy the Octyx blogs, and take care. Go back here to the overview. Octyx manages your life!

Bas Eshuis, Belgium.

April 30, 2016

The Octyx 2016 story – 4 – The new medications solution in Octyx

April 30, 2016

firebrickred - 64-64 roundedHello, this blog is part 4 of the series ‘The Octyx 2016 Story’. See for the overview (part 1), full background and a list all related blogs the link here.

This specific blog describes in more detail the new functionality ‘Medications’ in Octyx 2016. This item was developed as I had to take at a certain time several medications, and I sometimes forgot to take them on time.

The solution available today in Octyx 2016 allows for entering your prescriptions, add all the details about the medications, and especially gives begin and end dates plus a flexible information and reminders when you have to take them.

In the Windows solution you will see a popup, while in the Apple iOS solution you will get notified, even if you not active in the solution. By the way, the target is also to get this working on the Apple Watch in the near future.

views_090

Medications are to be entered via the prescription of your doctor. The application allows maximum 10 medications per subscription. The system keeps a history of past medications for faster entering.

You can add information on the doctor, on the medication, and how and when to take. Finally the system allows you to see on another screen all the history of your prescriptions and medications. Several reports are available as usual to indicate for how much time you need to take this medication.

After saving, you can review the entered data:

views_091

You can see on another screen all the history of your prescriptions and medications. Several reports are available as usual.

views_092

And finally you can see all medications for today and the next days, which can be filtered by user.

views_093

The system keeps track of dates and notifies you. On Windows, a background service notifies you also when Octyx is not running. Medications are automatically moved to an archive after their respective end dates. The multiple available reports help you to find all actual, and historical, items easily.

A great solution for many people helping you everyday. And especially, since Octyx 2016, this is also available on your Apple iPhone. See for more details one of the other blogs in this series.

For the technical people: I added various new tables and indexes to the database. In total the database has now more than 120 tables. On top, I added several fields and texts for all 11 languages. Finally, I added several new reports to the solution which can be run, and exported to PDF, Excel and HTML.

Enjoy the Octyx blogs, and take care. Go back here to the overview. Octyx manages your life!

Bas Eshuis, Belgium.

April 30, 2016

The Octyx 2016 story – 10 – Signing my Octyx application

April 30, 2016

firebrickred - 64-64 roundedHello, this blog is part 10 of the series ‘The Octyx 2016 Story’. See for the overview (part 1), full background and a list all related blogs the link here.

This specific blog describes in more detail how I ‘code-sign’ my Octyx application.

What means ‘code-signing’ ? According to Wikipedia, signing, or code signing, is the process of digitally signing executables and scripts to confirm that my small company is indeed the correct software author. Besides it gives a guarantee that the code has not been changed since it was signed by me.

So how does this work ? First of all you have to get a certificate (like in the old world, someone who can confirm it is you asking for some document). There are various companies in the world who offer (meaning sell) such certificates. The best known are, between others, companies like VeriSign or DigiCert.

They check your company data and ensure that my company really exist. Then then will send a link to download a certificate which I had to install on my development PC’s. Such certificates have always a begin and end date. The more longer time you wish, the more expensive it is.

After having installed such certificates on your browser(s), I did an export to have this a specific file into a working directory.

With the ‘sign tool.exe’ file from Microsoft it is then easy to sign the various applications. After signing, when clicking right on properties, you should see the below information on the certificates..

digi0     digi1

I do the code signing for all my applications, including the official installation file to ensure that anti-virus tools accept the download in an easy way. And it gives an extra security to my Octyx users.

Enjoy the Octyx blogs, and take care. Go back here to the overview. Octyx manages your life!

Bas Eshuis, Belgium.

April 30, 2016

The Octyx 2016 story – 13 – What’s up next ?

April 30, 2016

firebrickred - 64-64 roundedHello, this blog is part 13 of the series ‘The Octyx 2016 Story’. See for the overview (part 1), full background and a list all related blogs the link here.

This specific blog describes what is going up next.

After such long development (as you have seen, more than over 1 year, it is first time to do a bit of nothing during my evenings and weekends (difficult, I know). Although, nothing : I am still having also a full time job next to this Octyx challenge …

In the next months, probably after summer, I will launch myself in adding further data sources to Octyx allowing more information on the mobile. So what could be the next candidates :

  • the various collections (books, music, films, and others) inclusive images
  • the documents section with reminders
  • the to-do activities with reminders

Next to that, I target also to have Octyx on the iPad(s) which will bring another challenge to the developments. Screen developments are quite different than those on iPhones.

I also already decided to develop for the Apple Watch. It will be quite easy to do so, but first I need an Apple Watch to test it. And I will wait for the 2nd version, expected to be launched by Apple in the 2nd half of 2016.

Further challenges for me are bringing Octyx to the Mac, and bringing Octyx mobile to the Android world.

As you see, many challenges and ideas ahead. But as said, first a few weeks doing nothing. Even if I am not used to it …

But I may write also some blogs on other topics, because I read many books again the last year, on cars, because so many things are changing (SUV’s everywhere and full electric cars are now really the future thanks to Tesla), and on many other items which might be interesting for you.

So doing nothing, is not really my thing. Thanks for reading.

Enjoy the Octyx blogs, and take care. Go back here to the overview. Octyx manages your life!

Bas Eshuis, Belgium.

April 30, 2016

 

The Octyx 2016 story – 9 – The Octyx website

April 30, 2016

firebrickred - 64-64 roundedHello, this blog is part 9 of the series ‘The Octyx 2016 Story’. See for the overview (part 1), full background and a list all related blogs the link here.

This specific blog describes in more detail the the Octyx website.

The Octyx web site is available in 3 languages. It includes details of the various elements available in Octyx, it includes a ‘Download‘ section, and a ‘Buy‘ section. Next to this, a full featured Help function exists to give users the complete information on the tool and the usage.

ows

Some particular elements regarding the website are :

  • For the Octyx 2016 version, I re-built all help images. The help images show the full program in various chapters, and it is important to show the real screens.
  • I also re-built the color scheme and updated the look and feel. Which is now fully in line with the color set used in both the Windows and iOS applications.
  • Each of the 3 languages has its own menus and settings, which can be reached from the applications directly from the chosen language.

I use as development tool for the website the WebPlus X8 package from Serif. As said earlier, it is a good tool and not expensive. It is relatively easy to view and change texts across the website, which is useful in case of any changes.

In WebPlus, I had to define the size of my pages. I decided to stay on relatively small width pages (always possible to change in the future). I use 3 headers (for each language one), and add the individual pages. Due to the fact that from the Octyx program several like exist to the ‘old’ website, I did not modify the page names.

As you know, to have a website, one has to ensure two things:

  • Define and reserve an URL: I created and reserved the URL (‘octyx.com’) some years ago, and renew it regularly.
  • And a technical environment where to host physically the website and its data.

Since 2016, both are now located together at a secure provider in France. Secure and fast.

Next to adding the new functionalities, all web pages have been improved and updated. I add finally also the new download links to the 2016 application.

A specific activity was to update the e-commerce websites. As written before, I use MyCommerce-ShareIt as provider; they have a very good dashboard in which you can define icons, texts in many languages (I use the same 11 as in Octyx), and prepare all elements to link their site into my webpages.

Enjoy the Octyx blogs, and take care. Go back here to the overview. Octyx manages your life!

Bas Eshuis, Belgium.

April 30, 2016

 

 

 

The Octyx 2016 story – 6 – The mobile data in the cloud

April 30, 2016

firebrickred - 64-64 roundedHello, this blog is part 6 of the series ‘The Octyx 2016 Story’. See for the overview (part 1), full background and a list all related blogs the link here.

This specific blog describes in more detail what I have used to store mobile data, and what had to be put in place for this. This is quite technical information.

The basic idea was to use a provider of data in the cloud, which would be very fast, had an open architecture, and is affordable.

After various comparison, this lead me to make a choice between different so-called BAAS (Backend As A service) providers. My choice fell on the Parse solution, a subsidiary from Facebook. From Mid 2015 until end of January 2016, my mobile Octyx solution was fully based on this solution.

Parse has outstanding functionalities combined with a very clear dashboard to manage data in a secure way. And their business model was in line with my needs and expectations.

Sending and receiving data is done via the so-called JSON and REST protocols. Delphi has a complete set of standard functionalities to work with different BAAS providers. The advance of JSON and REST is that these are very lightweight and fast secured protocols. My experience showed that indeed file transfer is every fast and reliable.

Such BAAS providers often work with so-called ‘NoSQL’ databases. We all used to work with SQL commands, tables, fields, etc. In the NoSQL world this is quite different and I had to learn techniques. By the way, one of the major providers of NoSQL databases is Mongo, well used by many BAAS providers.

BUT: End of January 2016, Parse announced that they will move on, as a result of Facebook strategies, and that their services will be stopped in January 2017. Although there is a good offer to use other services via partners using the same technical server possibilities, this was a hug problem for me (and many other developers around the world). I had to start all over again.

I re-did an analysis on the market. Several new initiatives are being taken and improved, such as Apple and Google have new initiatives, but also TMS Software launched an interesting new CloudData offer. One disadvantage for me is the mandatory usage of Oauth and Oauth2 protocols, because for my particular Octyx needs I wished to have direct access. As also Delphi allowed me to do a quick update, I changed to Kinvey.

Kinvey is, like Parse, one of the leading BAAS providers. I hope sincerely they will stay around for many years. My current 2-month experience with Kinvey is quite good and very stable.

Kinvey handles also automatically the confirmation of e-mail addresses, which I read later back into the applications. You get a standard e-mail (in English), and after accepting the son a website, you get another confirmation e-mail.

One important drawback is that Kinvey requires all fields to be uploaded at any change, while Parse accepted only the changed fields. This was an important change I had to implement when changing from Parse to Kinvey.

So how does it works for Octyx ? In the current versions, the Windows solution is the master. Contract creation, user name, language, password and all master data is managed from the Windows version. The solution is built to capture any change and send updated data to the Kinvey server for each user separately. No user can see data from another user!

I also introduced specific control files allowing the read-only Mobile App to check if new data has been introduced. See also the next chapters for more details.

At every major update of the iOS application, I re-download all data into the iPhone. This is to ensure consistence between the cloud and iPhone databases.

Enjoy the Octyx blogs, and take care. Go back here to the overview. Octyx manages your life!

Bas Eshuis, Belgium.

April 30, 2016