Just a very, very little update …

I finished the To Not Do editor and the Perhaps editor.
Believe it or not, but I had a dream (I guess I was somewhere between sleep and being awake), and suddenly I thought: “what if somebody writes a priority in the second box under a specific role, without having a priority in the first box? Then it shouldn’t appear in the first box after a reload”. That gave me a little headache the next day. Only because that day was meant to be a non-programming day. Though I was able to be in charge of myself, wrote a note, and removed the thoughts from my head.

In the evening, I read “Who moved my cheese?”, which helped me to decide that I have to continue working on KairosPlanner.com, and in the two days that followed, I was able to finish the to functions as said before 🙂

Have a nice and effective week!

Best regards,

Albert

A great day

Today, I made my first real KairosPlanner.com schedule!
But this does not mean, KairosPlanner.com is ready to use.
There are many thing I need to fix.

For examle, I found out that KairosPlanner.com thinks, that I have to create a new plan on Sunday, and again on Monday. And I still cannot edit my Perhaps List, or my To Not Do List.

And well – the user creation function is still disabled, so beta users would not be able to create a login 🙂

But the end is very near!

Have a fantastic and effective week!
Albert

I mastered the ability to create PDF documents out of PHP

Today, I finished the PDF version of the calendar. So now it is possible to create a plan, and print the PDF version. That means, that I learned how to create a PDF file out of some PHP code.

Nerds like me are using acronyms all the time. Actually, in most professions have a jargon, and many terms in a jargon exist of acronyms. When watching TV Series like Grey’s Anatomy or House MD, they use many acronyms. Izzie Stevens, for example, cut the LVAD wire on Denny Duquette – and the guys heart stopped working. I have no idea what LVAD means, but obviously all medical trained people are known with these terms. I am not. I am a computer nerd. I use terms as PDF and PHP.

OK, PDF is more or less commonly known. Just like most people know what an ER is, or an OR. If you don’t know what PDF is (nothing to be shamed of): PDF stands for Portable Document Format, and is designed to make a document that can be taken with digitally, or transferred (e.g. by mail) digitally. The content of a PDF document cannot be changed, and the file layout is independent from the printer, which eventually is being used.

But then there is PHP. As far as I understood, PHP Means PHP Hypertext Preprocessor.  What? Yes, The P in PHP stands for PHP. And what PHP means? I have no clue at all. Actually, I don’t care. It’s only important (for me) to know what PHP is. PHP is the program language I use partially to build KairosPlanner.com

With PHP I am able to secure data that is being submitted from the webbrowser, I am able to save the data to a database, and send data back from the database to the browser. Just like when two people are talking: the brain of person #1 sends modulated data to the mouth so the ears of person #2 can receive the data. The ears send the received data to the brains of person #2, and demodules the data so person #2 understand what person #1 said. If person #1 only talks Swahili, and person #2 Klingon, they would never be able to communicate. They need a common language. And that does PHP on the server of KairosPlanner.com. Capice?

I knew how to code in PHP. Although I don’t know everything (I am not a certified programmer), I know a lot about PHP. But then I needed to know how to create a PDF document out of the data that has been saved in the database. It took me a day or five, but now it works. So when you have created a plan for this week, you can have a PDF version, you can print on any printer in the world (actually only A4 printers at this moment, but so what?).

So what’s Next? Now I am going to do some finishing, like giving the user the ability to change the day a week starts, to add some To Not Do items, to change the preference on whether or not displaying the To Not Do List, and edit the Perhaps List. Then I have to create a log system, and then I will rewrite the “Create an account” function.

Long before that, the Beta Program can start. So … we are coming nearer the finish line. A couple of months and KairosPlanner.com is ready. And when it’s ready – I can talk to a representative of the Covey Family on whether the system may be used.

Have a nice and effective week!

 

Albert van Harten

Save on the fly

It may look like I’ve been vanished from the earth in a couple of weeks. Total silence on the Development front at KairosPlanner.com. That’s not the case. I’ve been working on a huge element. Although the element could be divided in several parts, it would be very boring and more or less gibberish if I wrote about the details.

In my original thoughts, the KairosPlanner.com Schedule should be made at once, and when finished, the calendar should be downloadable as PDF. But what if something goes wrong with the Internet connection? Or what would happen in case of power failure? That could be called “bad luck”.

In the motion picture Titanic, the fictive business man Caledon Hockley, played by Billy Zane, says: “A real man creates his own luck”. I am not sure if that is 100% true, but I am proactive and I begin with the end in mind. Therefore, I have been focusing on a function “Save on the fly”. As soon as a user has added a goal to one of the roles, has added a reminder, put something on the canvas (the actual calendar) or moved around on the canvas – or to put it in other words: if a change has been made), the database has to be updated.

This saving process should be running in the background. Why? Because you don’t want to wait for the database to be updated, each time you made a change to the calendar. This is called “asynchronic” in nerd language. Any of the possible changes should be captured, and be sent to the database. This includes removing goals or actually scheduled items. And that was a very huge project.

But I finished that part – the database is being updated on the fly. Now I can work on the PDF part.

To be continued…

The Beta Program – when does it start?

As for now, the Beta Program Users List contains of three persons. Myself included. Although I’d like to get more beta testers, I am very delighted about the other two beta testers. But when does the Beta Program actually start? To put it in other words: what is needed before KairosPlanner.com can be opened for test purposes? And what happens after that?

The movie “The Social Network” portraits Mark Zuckerberg, played by Jesse Eisenberg. At some point in the movie, a co-student of Mark approaches him, and asks into some girl who is in some classes with Mark. The guy asks, if that girl is having a boyfriend. I don’t remember the exact words, but Mark replies something like: “Do you think that people have a sign around their neck, telling others the status of their relationship?” And at that moment, Mark gets the idea of implementing relationship status in Facebook. So far so good. But in the movie, it looks like it takes Mark 5 minutes or so, to build that function. Although I don’t doubt Marks programming skills, I am very sure it took him much more time to program that function. At first, he had to define all the possibilities: married, in a relationship, divorced, “don’t want to tell”, and so on. Then he had to create a table in the database, and give every user a default value. Since that is not appropriate, every existing user should get a question at next login: “tell us your relationship status”. But he could not force anyone to tell, so the system should be able to handle people who do not reply.
Furthermore, any new user registration should contain the question about relationship status. And ofcourse, the profile page should also show the status. And that is just a handful facts that should be taken into account, when adding a new function.

I have a similar fact at KairosPlanner.com. I created the CalendarView, the Mission Statement Manager and the Role Manager. Then I began programming the drag ‘n drop function to put peoples goals from the goals list into the CalendarView. But then I found it very odd that the calendar was being saved at the time, all the goals were put into the CalendarView. So I decided to save every move in real time: each time you add a goal, each time you add a reminder, and each time you put a goal into the CalendarView, the move should be saved into the database. That prevented irritation moments when people close the browser before saving.

To achieve that, I had to change the popup that appears right after login: there should be a function to edit the current calendar. And when clicking on that, it shows again the MissionStatement and after that the roles. But what if you decide you have different roles that week than normally? So I had to rewrite the Role Manager, to be able to change roles for a specific week. And that meant also, I had to add a hidden field to the CalendarView, that saves information on which goal belongs to which role. Because: if you have added some goals to a role, and put it into the CalendarView, and you remove that particular Role, the goals should not remain in the CalendarView. You see the complexity of programming?

At this moment, users are able to add a role (with a maximum of 7), they can delete roles, and I am working on renaming roles. That is also very complex, because the system has to react properly, when a user clicks on the “Delete a role” button, while he meant to be clicking on “Add a role”.

So, when I finished this Week Role Manager, I can program the function to save in real time. Then I can create the function to start a calendar for next week. When that is done, I can add the function to review last weeks goals (if last weeks calendar actually exists – a user might have forgotten to create one). After that I can create the function to create a PDF version of the calendar. And at that point, KairosPlanner.com has some basic functions that can be tested.

Am I done at that point? Far from that. I also need to implement subscription status. Users will have subscriptions that expire at some point. And I will build a new registration procedure. I also have to take into account that people can forget their passwords or even the e-mail address they used at registration. While working on all those function, I may not forget that there are people who want to hack into the system, so every move a hacker could take should be prohibited at first.

And then the legal aspects should be taken into account: when I finished KairosPlanner.com, am I permitted to publish this calendar? Although I am the one who codes, who designed the database, who paid for the webserver, and who has been using many, many hours on programming, I am still not the person who designed the calendar and the thoughts about it, Dr. Stephen R. Covey found this calendar as described in his books “The 7 Habits of Highly Effective People”, and “First Things First”. Unfortunately, Dr. Covey doesn’t live anymore, but his legacy does. There are copyright laws that protect The 7 Habits, so I have to get on one line with the company behind The 7 Habits, FranklinCovey Inc. And what would the insurance company Kairosplanners.com think about the name I chose? As you can see: many bumps in the road. But no barriers, only possibilities.

When all things has been cleared, I can declare KairosPlanner.com for finished. But we are long from that point.

Update: I just finished the possibility to rename a role in a calendar. While working on it, I found out that the predefined roles aren’t adapted when starting a new calendar, so that is the next thing I am going to do, And that will take me just a few seconds 🙂

An error in the Excel sheet

The biggest challenge on programming web applications, I guess, is: to make it cross-platform compatible. For many years ago, when the World Wide Web primarily was accessed by Windows computers, programmers “only” had to concern about different browsers, such as Internet Explorer and Netscape, and later Google Chrome. Those, who had MacOS (just a very few), or Linux (yet less), were used to accept that things might not work on their systems.

But Apple became a larger player on the market, and programmers had to take Safari into account. And then suddenly websites were accessible on mobile phones and tablets. That gave programmers some headaches: tablets can be turned from portrait view to landscape view – and the website should follow the changed view.

All that is old news for programmers, and we learned to adapt. No problem about that. Although … the original calendar, as Dr. Stephen R. Covey designed it, is displayed in landscape view, and well, in it’s nature it is meaningless to view it in portrait mode. So I haven’t planned a socalled portrait version of KairosPlanner.com. But I do test KairosPlanner.com in several browsers, and before launching KairosPlanner.com, I will test it on a Mac and in a Linux environment.

I only never thought, that the Excel Sheet, which I currently support as alternative for KairosPlanner.com, should give problems in other environments. I am using Microsoft Excel 2016, and it worked fine. But one of the other users told me, that it doesn’t work that fine in Google Sheets. I assumed it did. I guess I do see the world as I am, not as it is 🙂

So: I’ve been working on the good old spreadsheet, and tested it in several environments.
If you still have an older copy of the Put First Things First calendar, just send me an e-mail, and I will send you the newest version. My mail address is albert@computernoerderne.dk

Have a wonderful and effective week!

 

Albert

Week start

In the past few days, I’ve been struggeling with something, that should be very elementary for any programmer. But I just couldn’t find the correct algorithm. It doesn’t make it easier, if PHP, the program language, I am using, is not consequent with international standards.

Let me try to explain without using terms and technical phrases. First, I have to explain, that when a programmer counts to ten, he (m/w) does not start with 1 but with 0. So 10 is the 11th number (that wasn’t too technical, was it?). According to ISO 8601 the first day of the week is Monday, and that should be number 0, where Tuesday should be number 1, Wednesday number 2, and so forth. That is not the case. In PHP, obviously, Sunday is number 0, Monday number 1, etc. etc.
Knowing that, it should be easy peasy to display a calendar starting with Monday.

However, some people insist of using Sunday as the first day in the week. My opinion is irrelevant. And rules, laws and standards are only made for those, whom cannot or does not want to behave themselves, and their victims. So I want to give the users of KairosPlanner the possibility to choose on what day their week is starting. And that became a bigger challenge for me than I ever thought.

I promised not to become technical, and I will (ofcourse) keep my promise. I only can tell you: I found a solution. Actually, it came to me while laying in my bed, just before I closed my eyes. Ofcourse, I forgot half of it in the night, but … I managed to reproduce my solution. So: KairosPlanner.com now can start on Monday or Sunday, whatever you choose. No, the calendar cannot start on Tuesday. Just because that makes no sense. I think. Or …?

Kind regards, and have a wonderful and effective day,

 

Albert

How it all started

When I read The 7 Habits of Highly Effective People for the first time, I stumbled upon the calendar, described in Habit 3 (“Put First Things First”), I thought at first, I could make a photocopy of displayed calendar in the book. My second thought was: I might be able to create a spreadsheet in Excel, just a static one, and change the dates each week.

I am web applet developer, and I know how Excel works, so I thought, I might be able to create a much finer Excel sheet. To save me some time, I Googled to find out if somebody has done something similar, and guess what: there was! No need to reinvent the wheel. Unfortunately, I don’t remember where I found the spreadsheet – so: unknown author, thank you!

After a few weeks, I discovered an error: each month had 31 days. After September 30th 2014, I had a day called September 31st. I found a very simple workaround: just override the formula and write “1” in the field which currently has value 31. And change 2 into 1, and so forth. Problem solved for the time being.

The spreadsheet consisted of five pages. I decided to remove the pages for next week and the week after that, because I found three week planning is colliding with Dr. Coveys “one day at a time”. I also removed the first tab, that only contained some information about the origins of the calendar.

The last sheet only contained some graphics, used on the other pages. I decided to get rid of the graphics, and use “text-only” formulas. So I reduced the 5 tabbed sheet to two sheets. That worked fine.

In the meanwhile, I tried to find out if there was some online system to create a Covey Calendar. And I didn’t find anything. Well, there are some sites that achieve the same purpose, but they do not result in the one sheet calendar as Dr. Covey described. And that is where I started to think about Kairosplanner.com.

The name I found was very easy. In Coveys book “First Things First” (and perhaps also in The 7 Habits?), he describes the difference between the Greek words Kronos and Kairos. Kairos means “importance” while Kronos means “Time”. As Dr. Covey says: “Do not prioritize your schedule, but schedule your priorities”. To put that in other words: make a Kairos Plan, not a Kronos Plan. Unfortunately, I waited too long to buy the domain name KairosPlan.com. Bad luck. But I got KairosPlanner.com.

So that is the story behind KairosPlanner.com. I don’t know anything yet about the legal rules, copyright and so on, but well, in first case I am not making KairosPlanner for other people than myself. Sure, I will make it possible to log on with your own mail address. But first I will finish programming on KairosPlanner.com, then I will try to discuss the possibilities with the company that has copyright on The 7 Habits, FranklinCovey Inc.

On the next pages, you can follow my journey in this project. I hope. If I find it necessary to write. Most texts will be boring, technical and nerdish. But hey, I am a nerd. 🙂 But I will try to make it fun too. And interesting.

Best regards,

 

Albert van Harten
Founder KairosPlanner.com