<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Lauri Ojansivu</title>
    <description>The latest articles on DEV Community by Lauri Ojansivu (@xet7).</description>
    <link>https://dev.to/xet7</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F101497%2Ffa90313d-d298-4aff-9fa9-41899e95b1d9.jpeg</url>
      <title>DEV Community: Lauri Ojansivu</title>
      <link>https://dev.to/xet7</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/xet7"/>
    <language>en</language>
    <item>
      <title>Illusion of differences between Operating Systems, Programming Languages and Web Frameworks</title>
      <dc:creator>Lauri Ojansivu</dc:creator>
      <pubDate>Wed, 18 Sep 2019 21:21:02 +0000</pubDate>
      <link>https://dev.to/xet7/illusion-of-differences-between-operating-systems-programming-languages-and-web-frameworks-4j8f</link>
      <guid>https://dev.to/xet7/illusion-of-differences-between-operating-systems-programming-languages-and-web-frameworks-4j8f</guid>
      <description>&lt;p&gt;You see all those flamewars about Operating Systems, programming languages, web frameworks, and discussion about some of them are "dead" ?&lt;/p&gt;

&lt;p&gt;Yes, I tried them all.&lt;/p&gt;

&lt;p&gt;After maintaining Wekan many years since 2016-12, I tried updating another kanban software, made with Go and Angular.&lt;/p&gt;

&lt;p&gt;Summary: Kanban software is all the same. Same acrobatics to update dependencies. Same kanban features. Same bugs that have already been fixed in Wekan. If both Wekan and that other kanban software used same CSS, user could not see any difference. It does not depend on programming language and web framework.&lt;/p&gt;

&lt;p&gt;You have an illusion that there is any benefit or major difference between programming languages and web frameworks, or that those small differences matter in any way.&lt;/p&gt;

&lt;p&gt;There is no spoon.&lt;/p&gt;

&lt;p&gt;Do NOT participate to any of those flamewars.&lt;/p&gt;

&lt;p&gt;So now, please go back to contributing to Open Source.&lt;/p&gt;

&lt;p&gt;Best Regards,&lt;br&gt;
xet7&lt;/p&gt;

&lt;p&gt;(posted originally at: &lt;a href="https://blog.wekan.team/2019/09/illusion-of-differences-between-operating-systems-programming-languages-and-web-frameworks/index.html"&gt;https://blog.wekan.team/2019/09/illusion-of-differences-between-operating-systems-programming-languages-and-web-frameworks/index.html&lt;/a&gt;)&lt;/p&gt;

</description>
      <category>kanban</category>
      <category>wekan</category>
      <category>framework</category>
    </item>
    <item>
      <title>Wekan on RasPi3 and arm64 server now works, and what's next with CNCF</title>
      <dc:creator>Lauri Ojansivu</dc:creator>
      <pubDate>Sun, 30 Jun 2019 13:15:12 +0000</pubDate>
      <link>https://dev.to/xet7/wekan-on-raspi3-and-arm64-server-now-works-and-what-s-next-with-cncf-pbk</link>
      <guid>https://dev.to/xet7/wekan-on-raspi3-and-arm64-server-now-works-and-what-s-next-with-cncf-pbk</guid>
      <description>&lt;h2&gt;
  
  
  About Wekan
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://wekan.github.io"&gt;Wekan&lt;/a&gt; is Trello-like &lt;a href="https://en.wikipedia.org/wiki/Kanban_(development)"&gt;Kanban board&lt;/a&gt; with Open Source MIT license. Wekan is translated to about 50 languages and used &lt;a href="https://snapcraft.io/wekan"&gt;in most countries of the world&lt;/a&gt;. Many companies and individuals have sent features and fixes as pull requests to Wekan. Wekan is made with &lt;a href="https://www.meteor.com/"&gt;Meteor Javascript Framework&lt;/a&gt;, using Node.js and MongoDB. Wekan has Boards, Lists, Cards, Attachments, Checklists, WIP Limits, Swimlanes, Import from Trello, IFTTT Rules like Trello Butler, Copy Checklist Template to Multiple Cards, Copy/Move card to same or another board, Custom Fields, Templates, etc. You can install Wekan to your RasPi3, laptop or server, and use Wekan with your webbrowser. Wekan is available for many platforms like source install, Meteor bundle, Snap, Docker, VirtualBox Appliance, Sandstorm, and others. &lt;a href="https://blog.wekan.team/2018/05/wekan-v1-00-released/index.html"&gt;Wekan v1.00 was released 2018-05-22&lt;/a&gt;. More info and download at &lt;a href="https://wekan.github.io"&gt;Wekan website&lt;/a&gt;. There is &lt;a href="https://www.youtube.com/watch?v=N3iMLwCNOro"&gt;talk by Wekan author Maxime Quandalle at YouTube&lt;/a&gt;. Current maintainer of Wekan is &lt;a href="https://github.com/xet7"&gt;xet7&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  About CNCF Community Infrastructure Lab
&lt;/h2&gt;

&lt;p&gt;The Cloud Native Computing Foundation is a non-profit organization that hosts Kubernetes, Prometheus, CoreDNS, and other projects. The Foundation helps open-source projects to thrive, and their Community Infrastructure Lab (CIL) provides free access to state-of-the-art computing resources (like bare metal x64 and arm64 servers) for open source developers working to advance cloud native computing. &lt;a href="https://www.cncf.io/about/members/"&gt;CNCF members&lt;/a&gt; from many big companies makes providing bare metal servers possible. CNCF is one of the Linux Foundation's largest sub-foundations. More info at &lt;a href="https://www.cncf.io/about/faq/"&gt;CNCF FAQ&lt;/a&gt; and interview at &lt;a href="https://twit.tv/shows/floss-weekly/episodes/452"&gt;FLOSS Weekly 452&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Done: Wekan dependency version upgrades
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  Meteor from 1.6.0.1 to 1.8.1 on &lt;a href="https://github.com/wekan/wekan"&gt;https://github.com/wekan/wekan&lt;/a&gt; meteor-1.8 branch&lt;/li&gt;
&lt;li&gt;  Node from 8.11.1 to 8.16.0&lt;/li&gt;
&lt;li&gt;  NPM from 6.0.1 to 6.9.2&lt;/li&gt;
&lt;li&gt;  fibers from 2.0.0 to 3.1.1&lt;/li&gt;
&lt;li&gt;  etc&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  x64 platforms status 2019-06-30
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Source install&lt;/strong&gt;: Works on x64, available for &lt;a href="https://github.com/wekan/wekan/blob/master/rebuild-wekan.sh"&gt;Meteor 1.6.x&lt;/a&gt; and &lt;a href="https://github.com/wekan/wekan/blob/meteor-1.8/rebuild-wekan.sh"&gt;Meteor 1.8.x&lt;/a&gt; versions.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Standalone Docker&lt;/strong&gt;: Works for x64. Upgraded from Debian 10 to Ubuntu 19.10 base. Available versions for &lt;a href="https://github.com/wekan/wekan/blob/master/docker-compose.yml#L118"&gt;Meteor 1.6.x&lt;/a&gt; and &lt;a href="https://github.com/wekan/wekan/blob/meteor-1.8/docker-compose.yml#L118"&gt;Meteor-1.8.x&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Ubuntu Snap&lt;/strong&gt;: &lt;a href="https://github.com/wekan/wekan-snap/wiki/Install"&gt;Works on x64 Linux&lt;/a&gt;. Uses Meteor 1.6.x, because of build problems of Meteor 1.8.x.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Sandstorm&lt;/strong&gt;: &lt;a href="https://github.com/wekan/wekan/wiki/Sandstorm"&gt;Works on x64 Linux&lt;/a&gt;. Because I enabled multiple boards for Wekan, &lt;a href="https://github.com/wekan/wekan/issues?q=is%3Aissue+is%3Aopen+sandstorm+label%3ATargets%3ASandstorm"&gt;there is still related bugs&lt;/a&gt;, that I will fix.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ARM platforms status 2019-06-30
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  I did get &lt;a href="https://github.com/cncf/cluster/issues/45#issuecomment-356150118"&gt;ARM etc bare metal access&lt;/a&gt; from CNCF.&lt;/li&gt;
&lt;li&gt;  Server ARM 64bit, more specifically arm64 / &lt;strong&gt;aarch64&lt;/strong&gt; with about 125 GB RAM and 300GB harddisk.&lt;/li&gt;
&lt;li&gt;  Server had Debian 9, now it has Ubuntu 18.04 64bit.&lt;/li&gt;
&lt;li&gt;  I got Wekan &lt;a href="https://github.com/wekan/wekan/wiki/Raspberry-Pi"&gt;working on RasPi3 and arm64 server yesterday 2019-06-29&lt;/a&gt; using Meteor bundle.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Future plans
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  Add to x64 Wekan Snap and Docker versions other CPU architectures: arm64, and others.&lt;/li&gt;
&lt;li&gt;  Upgrade all Wekan platforms to Meteor 1.8.x version of Wekan.&lt;/li&gt;
&lt;li&gt;  Planned Wekan features:

&lt;ul&gt;
&lt;li&gt;  Teams/Organizations to Admin Panel&lt;/li&gt;
&lt;li&gt;  Import from CSV&lt;/li&gt;
&lt;li&gt;  &lt;a href="https://github.com/wekan/wekan/milestones?direction=asc&amp;amp;sort=due_date&amp;amp;state=open"&gt;Other upcoming milestones&lt;/a&gt;. Target dates can change, depends on progress.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What CNCF servers have enabled to do
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Status 2019-06-30
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;  Release new version of Wekan max 7 times a day (&lt;a href="https://github.com/wekan/wekan/blob/master/CHANGELOG.md"&gt;see ChangeLog&lt;/a&gt;), on those days when there is a lot of progress. I (xet7) connect x64 server using virt-manager (uses ssh+vnc transport), so I see desktop running at server. There I have installed many Linux VMs for different distros, and do Wekan development. Currently I use arm64 server that has about 128 GB RAM and 300GB SSD, and x64 server that has about 300 GB RAM and 2 TB NVME disk.&lt;/li&gt;
&lt;li&gt;  Build Wekan, Sandstorm, Friend, etc Open Source projects on that hardware, and enabling the current fast progress of Wekan.&lt;/li&gt;
&lt;li&gt;  x64 server has Wekan Snap installed, that incudes Caddy and Wekan. So &lt;a href="https://releases.wekan.team"&gt;https://releases.wekan.team&lt;/a&gt; release download server is served by Wekan snap on CNCF server.&lt;/li&gt;
&lt;li&gt;  On arm64 server, I got Wekan &lt;a href="https://github.com/wekan/wekan/wiki/Raspberry-Pi"&gt;working on RasPi3 and arm64 server yesterday 2019-06-29&lt;/a&gt; using Meteor bundle.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Best Regards,&lt;br&gt;
xet7&lt;br&gt;
On behalf of Wekan Team and Wekan Worldwide Community&lt;/p&gt;

&lt;p&gt;(posted originally at: &lt;a href="https://blog.wekan.team/2019/06/wekan-on-raspi3-and-arm64-server-now-works-and-whats-next-with-cncf/index.html"&gt;https://blog.wekan.team/2019/06/wekan-on-raspi3-and-arm64-server-now-works-and-whats-next-with-cncf/index.html&lt;/a&gt;)&lt;/p&gt;

</description>
      <category>wekan</category>
      <category>tello</category>
      <category>kanban</category>
      <category>cncf</category>
    </item>
    <item>
      <title>The day I failed to prove I’m not a robot</title>
      <dc:creator>Lauri Ojansivu</dc:creator>
      <pubDate>Mon, 13 May 2019 20:17:32 +0000</pubDate>
      <link>https://dev.to/xet7/the-day-i-failed-to-prove-i-m-not-a-robot-1oo5</link>
      <guid>https://dev.to/xet7/the-day-i-failed-to-prove-i-m-not-a-robot-1oo5</guid>
      <description>&lt;p&gt;Some months ago I got comments from Wekan users that I’m making so many releases of Wekan per day (record amount is 7 releases per day) so some are thinking that maybe I am a robot.&lt;/p&gt;

&lt;p&gt;Some days ago I did register new user account to website that is about making robots. I jumped through a lot of hoops, when trying to register, answering basic math questions, refilling registration form and changing calculations, and changing my profile picture to another, as was instructed in registration info. I got logged into website, and browsed robot building instructions.&lt;/p&gt;

&lt;p&gt;But today I got email from that website, that I had my account have been cancelled, because I had failed to prove I’m not a robot.&lt;/p&gt;

&lt;p&gt;I’m thinking, my photo most likely looks too much like a robot.&lt;/p&gt;

&lt;p&gt;It seems that I have to accept my destiny, and try to live my life as a robot, because I’m unable to prove I’m a human.&lt;/p&gt;

&lt;p&gt;BR,&lt;/p&gt;

&lt;p&gt;xet7&lt;/p&gt;

&lt;p&gt;(posted originally at: &lt;a href="https://blog.wekan.team/2019/05/the-day-i-failed-to-prove-im-not-a-robot/index.html"&gt;https://blog.wekan.team/2019/05/the-day-i-failed-to-prove-im-not-a-robot/index.html&lt;/a&gt;)&lt;/p&gt;

</description>
      <category>wekan</category>
      <category>kanban</category>
      <category>robot</category>
    </item>
    <item>
      <title>Offline part 2 - Email and phone</title>
      <dc:creator>Lauri Ojansivu</dc:creator>
      <pubDate>Sun, 13 Jan 2019 16:35:34 +0000</pubDate>
      <link>https://dev.to/xet7/offline-part-2---email-and-phone-2ad0</link>
      <guid>https://dev.to/xet7/offline-part-2---email-and-phone-2ad0</guid>
      <description>

&lt;p&gt;Previous introductory article in this series: &lt;a href="https://dev.to/xet7/offline-is-the-new-normal-24b4"&gt;Offline is the new normal&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Email steps from 1 to 3
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;At 1991-1994 I did run BBS, using &lt;a href="https://en.wikipedia.org/wiki/QWK_(file_format)"&gt;https://en.wikipedia.org/wiki/QWK_(file_format)&lt;/a&gt; to upload and download newest messages.&lt;/li&gt;
&lt;li&gt;After that, I used some email client like Thunderbird that downloaded email with POP, or kept it at server with IMAP. At work some years ago we had Linux server that was hosted at Finland.&lt;/li&gt;
&lt;li&gt;After that, at work I moved that email to Google Apps / G Suite with YippieMove service, that was specialized moving large amount of messages and retrying failed transfers fast server farm. Some did also use Thunderbird to move their email. I don’t work there anymore, but still manage some of my own and my customers G Suite accounts.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Going back to step 2 above: Thunderbird
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;I did find some old Thunderbird backup from my harddrives, so it’s directory /home/username/.thunderbird on Linux.&lt;/li&gt;
&lt;li&gt;In Gmail, I saved all filters to files, and copy-pasted labels page to label to text file.&lt;/li&gt;
&lt;li&gt;In Gmail settings I enabled POP for all messages, and so that it deletes email from Gmail servers after it’s downloaded with POP to Thunderbird.&lt;/li&gt;
&lt;li&gt;In Gmail account settings I created application specific password for Thunderbird.&lt;/li&gt;
&lt;li&gt;In Thunderbird I did setup Gmail account with POP and used that application specific password from step 4 above.
In Thunderbird I clicked “Get Messages” button to download first about 500 messages. After that, I needed to click “Get Messages” again, so it downloaded next about 500 messages. And repeating that, until all of my messages where downloaded to my Inbox. Yes, this includes sent and received messages, all in Inbox.&lt;/li&gt;
&lt;li&gt;Now I have all my email in .thunderbird directory. When I check it’s size with command “du -sh .thunderbird” it has 2 GB of files, and probably about 50k emails, although I did not yet figure out how to do exact count.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Maybe: Exchange, Office 365 Online, and Outlook
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Some years ago, I did have Thunderbird working with Exchange using DavMail for email sending and receiving, and Thunderbird plugin for Exchange calendar. Thunderbird &amp;lt;=&amp;gt; DavMail &amp;lt;=&amp;gt; Exchange makes Thunderbird think it’s connecting to standard SMTP/IMAP server while actually DavMail connects to Exchange, converting all requests to correct format. I did update webpage &lt;a href="https://github.com/wekan/wekan/wiki/Troubleshooting-Mail"&gt;https://github.com/wekan/wekan/wiki/Troubleshooting-Mail&lt;/a&gt; for newest info, and tried some tips from &lt;a href="https://stackoverflow.com/questions/6801174/davmail-office365"&gt;https://stackoverflow.com/questions/6801174/davmail-office365&lt;/a&gt; , but did not get it working yet. It could depend on what Exchange version is in use.&lt;/li&gt;
&lt;li&gt;Another possibility would be to use Outlook on Windows VM to download email, and then move email to some other IMAP server, and then download from that with POP to Thunderbird.&lt;/li&gt;
&lt;li&gt;If some workplace still uses Exchange, then with DavMail it’s possible to setup Friend &lt;a href="https://github.com/wekan/wekan/wekan/wiki/Friend"&gt;https://github.com/wekan/wekan/wekan/wiki/Friend&lt;/a&gt; webmail to use Exchange.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Possible next steps for Email
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Add other email accounts to download messages with POP&lt;/li&gt;
&lt;li&gt;Create folders, and use Thunderbird Add-ons to automatically sort email to different folders.&lt;/li&gt;
&lt;li&gt;Use Enigmail Thunderbird Add-on to send and receive PGP encrypted email.&lt;/li&gt;
&lt;li&gt;Use Qubes Attachments Add-on to send attacment to different VM. Yes, I’m running Qubes OS 4 finally, after getting laptop that has new enough specs to meet Qubes 4 hardware requirements. I run Email in it’s own VM. Most of my Qubes VMs have Internet access disabled. There is just webbrowser VM and email VM that has Internet access.&lt;/li&gt;
&lt;li&gt;Copy email .thunderbird directory to my RasPi3 and use Thunderbird to read and send email on RasPi3.&lt;/li&gt;
&lt;li&gt;Download Gmail contacts and add them to Thunderbird contacts.&lt;/li&gt;
&lt;li&gt;Download Gmail calendar and add it to Thunderbird calendar.&lt;/li&gt;
&lt;li&gt;Make many backups to different harddrives, DVD etc media. Now it’s not Google’s responsibility to keep my data safe, secure, available etc. I can only blame myself now.&lt;/li&gt;
&lt;li&gt;Continue to download more of my data from Internet, and delete it from Internet.&lt;/li&gt;
&lt;li&gt;Change my domains to use other email provider, like &lt;a href="https://protonmail.com"&gt;https://protonmail.com&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;If running my own email server at some Finnish server provider, maybe it could work for some time, if I setup SPF/DKIM/DMARC email settings correctly, there is port 25 open for receiving email, and server does not send too many server notification emails, if configured correctly. But if email server ends up in some spam blacklist, I could for example pay to use Danish email sending service &lt;a href="https://mysmtp.com"&gt;https://mysmtp.com&lt;/a&gt; to ensure deliverability to Gmail and other email services with correct DNS nameserver SPF/DKIM/DMARC email settings. Email receiving would still be to my server port 25.&lt;/li&gt;
&lt;li&gt;In Finland some cable modem Internet providers can have ports 80 and 443 for webserver open, but AFAIK none have email receiving port 25 open to receive email from Internet. So some workaround would be required to receive email to self-hosted Sandstorm port 25 that would receive email to self-hosted &lt;a href="https://sandstorm.io"&gt;https://sandstorm.io&lt;/a&gt; RoundCube grain.&lt;/li&gt;
&lt;li&gt;Setup Friend &lt;a href="https://github.com/wekan/wekan/wekan/wiki/Friend"&gt;https://github.com/wekan/wekan/wekan/wiki/Friend&lt;/a&gt; and use Friend for accessing all apps.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What I did with my Android smartphone
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;I moved my SIM card from my Android smartphone to my dumbphone that does not have camera and Internet. Dumbphone only has phone calls and SMS, and some apps that work locally on ohine.&lt;/li&gt;
&lt;li&gt;At Android phone settings, I enabled WLAN. It seems that all Android apps I use work perfectly well with just WLAN access.&lt;/li&gt;
&lt;li&gt;At Android phone settings, I turned off permission of most apps including Google’s own apps. So I disabled location, camera, microphone, file storage, etc all permissions possible. And Play Store I also cancelled some paid services I did subscribe to.&lt;/li&gt;
&lt;li&gt;I did transfer some money with Android app to my prepaid card. So I only have some cash and limited amount of money on my prepaid card when being outside. I also removed from my wallet all other payment cards, receipts, etc. Then I turned my Android smartphone off.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  What did dumbphone feel like
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;When visiting city centre I only had my small dumbphone and wallet with minimal contents. I did not have my Android smartphone with me. It did feel that I was not so hurried anymore. I was not looking at my smartphone often, like I previously did. It was a relief. I did walk more slowly, enjoyed more, did see more what was happening around me. I was dreaming what I would do next with my old and newer computers that were not connected to Internet. When coming back to home, I said to my wife that it feels like I got my life back.&lt;/li&gt;
&lt;li&gt;I started to setup my Amiga 1200 so that I would power it on, but I did feel something was not right. I would need to sometime open A1200 case and check it has everything OK inside like no dust, battery OK, etc. I was a little afraid that something would happen to it, like happened to my Amiga 500, where when I turned on power after a long time, smoke did come from it, so currently my friend is looking what is wrong with my Amiga 500.&lt;/li&gt;
&lt;li&gt;I did think that there was something with this old-is-new-again, and with this fear for this tech. I did not notice this fear before, because I was so used to working mostly with computer software only during recent years, and spent too much time at cyberspace. I started reading book “Beyond Fear: Thinking Sensibly About Security in an Uncertain World.” by Bruce Schneier, so that I could see what this fear is all about.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To be continued…&lt;/p&gt;

&lt;p&gt;(posted originally at: &lt;a href="https://blog.wekan.team/2019/01/offline-part-2-email-and-phone/index.html"&gt;https://blog.wekan.team/2019/01/offline-part-2-email-and-phone/index.html&lt;/a&gt;)&lt;/p&gt;


</description>
      <category>opensource</category>
      <category>wekan</category>
      <category>offline</category>
    </item>
    <item>
      <title>Wekan Year 2018, what we archieved</title>
      <dc:creator>Lauri Ojansivu</dc:creator>
      <pubDate>Sun, 18 Nov 2018 17:38:52 +0000</pubDate>
      <link>https://dev.to/xet7/wekan-year-2018-what-we-archieved-lhc</link>
      <guid>https://dev.to/xet7/wekan-year-2018-what-we-archieved-lhc</guid>
      <description>&lt;p&gt;&lt;a href="https://wekan.github.io"&gt;Wekan&lt;/a&gt; is Open Source kanban, that you can install to your laptop or server. You can keep all your data on your own control. You can also use some SaaS provider.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--NPDHDE7v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/2y0grt95zrxa5f7q5afz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NPDHDE7v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/2y0grt95zrxa5f7q5afz.png" alt="Wekan"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What was planned for 2018
&lt;/h2&gt;

&lt;p&gt;At 2017-12-23 I did write about &lt;a href="https://blog.wekan.team/2017/12/2-years-of-wekan-what-we-archieved/index.html"&gt;Plans for 2018&lt;/a&gt;. Many of those did get done, and some remaining are planned for remaining 2018 and new year 2019, with some additions to plans.&lt;/p&gt;

&lt;h2&gt;
  
  
  Done at 2018-11
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Standalone and &lt;a href="https://sandstorm.io"&gt;Sandstorm&lt;/a&gt; Wekan
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/wekan/wekan/issues/808#issuecomment-427962878"&gt;Calendar&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/wekan/wekan/pull/1503"&gt;Search&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/wekan/wekan/wiki/Custom-Fields"&gt;Custom Fields&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/wekan/wekan/wiki/IFTTT"&gt;IFTTT (If-this-then-then-that) Rules&lt;/a&gt; for automation, similar to Butler at Trello. This is visible only at Standalone Wekan currently, I think.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---Vww9BFy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/n574fr2elhysa52rs4ks.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---Vww9BFy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/n574fr2elhysa52rs4ks.png" alt="IFTTT Rules"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Some Mobile Web improvements.&lt;/li&gt;
&lt;li&gt;And more, see &lt;a href="https://github.com/wekan/wekan/blob/devel/CHANGELOG.md"&gt;ChangeLog&lt;/a&gt; for complete list.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Standalone Wekan (Snap, Docker, Source, VirtualBox)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/wekan/wekan/wiki/LDAP"&gt;LDAP&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vfmB_uOy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/hi2ypi2vvpibhx3dmmtm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vfmB_uOy--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/hi2ypi2vvpibhx3dmmtm.png" alt="LDAP selection at Admin Panel"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Have all settings (SMTP etc) in environment variables on &lt;a href="https://github.com/wekan/wekan-snap/wiki/Supported-settings-keys"&gt;Snap settings&lt;/a&gt; and &lt;a href="https://github.com/wekan/wekan/blob/devel/docker-compose.yml"&gt;Docker Compose file&lt;/a&gt;, no need to setup manually at Admin Panel. Email settings in Admin Panel were removed and then added back, and email password hidden in Admin Panel.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Plans for remaining 2018 and new year 2019
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Standalone and Sandstorm Wekan
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Font size improvements.&lt;/li&gt;
&lt;li&gt;Scheduling events.&lt;/li&gt;
&lt;li&gt;Import/Export/Add/Remove fixes and additions.&lt;/li&gt;
&lt;li&gt;Bugfixes.&lt;/li&gt;
&lt;li&gt;More Mobile Web improvements.&lt;/li&gt;
&lt;li&gt;Provide &lt;a href="https://github.com/wekan/wekan/issues/142"&gt;different ways to store attachments&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Standalone Wekan
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/wekan/wekan/issues/802"&gt;Teams/Organizations admin, and User Admin additions&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/wekan/wekan/issues/641"&gt;Top-level projects&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Whitelabeling: &lt;a href="https://github.com/wekan/wekan/issues/1196"&gt;Custom Logo&lt;/a&gt;, &lt;a href="https://github.com/wekan/wekan/wiki/Custom-CSS-themes"&gt;Custom CSS&lt;/a&gt;, Custom Product Name instead of Wekan, etc.&lt;/li&gt;
&lt;li&gt;Snap for other processor architectures like &lt;a href="https://blog.wekan.team/2018/01/wekan-progress-on-x64-and-arm/index.html"&gt;arm64&lt;/a&gt;, if possible.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/wekan/wekan/wiki/Friend"&gt;Friend&lt;/a&gt;:

&lt;ul&gt;
&lt;li&gt;Sync Wekan calendar to Friend calendar.&lt;/li&gt;
&lt;li&gt;Friend login will login to Wekan too automatically.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;More supported databases, if possible.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Thanks to all for making Wekan possible
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;CNCF / Linux Foundation for &lt;a href="https://blog.wekan.team/2018/01/wekan-progress-on-x64-and-arm/index.html"&gt;providing bare metal servers&lt;/a&gt; for development and downloads hosting.&lt;/li&gt;
&lt;li&gt;GitHub, Snap, Quay.io, Docker Hub, Sandstorm etc at &lt;a href="https://github.com/wekan/wekan/wiki/Platforms"&gt;all Wekan platforms&lt;/a&gt; for downloads and hosting for thousands of servers where Wekan is running.&lt;/li&gt;
&lt;li&gt;Everyone adding new GitHub issues about Wekan bugs and feature requests.&lt;/li&gt;
&lt;li&gt;Companies and individuals contributing features and fixes to Wekan as PRs, and adding bounties.&lt;/li&gt;
&lt;li&gt;Finnish Unix Users Group Foundation for &lt;a href="https://fuug.fi/2018/wekan-kanban-taulun-perustoimintojen-kehityksen-tulokset/"&gt;providing grant for Wekan features development&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Companies and individuals using my &lt;a href="https://wekan.team/"&gt;Wekan Commercial Support&lt;/a&gt; for support and new Wekan features, and &lt;a href="https://dev.to/xet7/confessions-of-an-open-source-contributor-2a1i"&gt;being understanding&lt;/a&gt; with the delays. I really try to get everything implemented, development is not easy.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I currently do Wekan as nearly full-time work. I have not accepted any work offers for any non-Wekan full-time work. Because of your continuing support, I’m still maintaining Wekan. Thanks to all !&lt;/p&gt;

&lt;p&gt;BR,&lt;br&gt;
xet7&lt;/p&gt;

&lt;p&gt;(posted originally at: &lt;a href="https://blog.wekan.team/2018/11/year-2018-what-we-archieved/index.html"&gt;https://blog.wekan.team/2018/11/year-2018-what-we-archieved/index.html&lt;/a&gt;) &lt;/p&gt;

</description>
      <category>opensource</category>
      <category>wekan</category>
      <category>kanban</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Offline is the new normal</title>
      <dc:creator>Lauri Ojansivu</dc:creator>
      <pubDate>Wed, 10 Oct 2018 22:12:46 +0000</pubDate>
      <link>https://dev.to/xet7/offline-is-the-new-normal-24b4</link>
      <guid>https://dev.to/xet7/offline-is-the-new-normal-24b4</guid>
      <description>

&lt;p&gt;This blog post is based on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Expanding phrase &lt;em&gt;Offline is the new normal&lt;/em&gt; at &lt;a href="http://www.xet7.org"&gt;www.xet7.org&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Book I listened: &lt;a href="https://basecamp.com/books/calm"&gt;It Doesn’t Have to Be Crazy at Work&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;What is &lt;em&gt;new normal&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;Something done often enough so that it becomes a habit.&lt;/p&gt;

&lt;h2&gt;What being always online causes&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Installing new security updates all the time.&lt;/li&gt;
&lt;li&gt;For non-static website, constant patching, and trying to keep website secure. When new security patch is released, all Internet-accessible websites will receive attacks soon.&lt;/li&gt;
&lt;li&gt;Updates to all computers, smartphones, routers, etc internet connected devices – if they still receive updates.&lt;/li&gt;
&lt;li&gt;Trying to be prepared if new update makes some functionality broken of deletes something – like recent Windows Update deleting files, or xet7 adding new experimetal code to Wekan edge that breaks everything.&lt;/li&gt;
&lt;li&gt;Checking email, chat, news, etc too often, and letting it distract concentrating to work.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;What being mostly offline should look like&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;At 1991-1994 I did run BBS, using &lt;a href="https://en.wikipedia.org/wiki/QWK_(file_format)"&gt;https://en.wikipedia.org/wiki/QWK_(file_format)&lt;/a&gt; to upload and download newest messages.&lt;/li&gt;
&lt;li&gt;Today, there should be similar sync program, that gets all new files/chats/images/updates/etc downloaded at once, verifies that it is malware free and in common text and image formats, and saves to directory at harddrive or USB stick.&lt;/li&gt;
&lt;li&gt;Work, replies to messages, etc would happen offline, and sync would be made once a week, for example.&lt;/li&gt;
&lt;li&gt;Offline intranet would use sandboxing like those provided by &lt;a href="https://sandstorm.io/"&gt;Sandstorm&lt;/a&gt;, Docker, &lt;a href="https://snapcraft.io"&gt;Snap&lt;/a&gt;, &lt;a href="https://www.virtualbox.org"&gt;VMs&lt;/a&gt;, &lt;a href="https://linuxcontainers.org"&gt;LXC, LXD&lt;/a&gt;, &lt;a href="https://endlessos.com"&gt;Endless OS&lt;/a&gt; that has locked down &lt;a href="https://flatpak.org"&gt;Flatpak&lt;/a&gt; apps (locking down &lt;a href="https://news.ycombinator.com/item?id=18180017"&gt;depends&lt;/a&gt; on settings), &lt;a href="https://www.qubes-os.org"&gt;Qubes OS&lt;/a&gt;, etc.&lt;/li&gt;
&lt;li&gt;If there is need to update some website, those could be synced to Internet with some script.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Benefits offline would bring&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;No Internet.&lt;/li&gt;
&lt;li&gt;Smartphone off.&lt;/li&gt;
&lt;li&gt;Time to concentrate, for example 3 hours at once to one work, quality time.&lt;/li&gt;
&lt;li&gt;Getting more done.&lt;/li&gt;
&lt;li&gt;No distractions.&lt;/li&gt;
&lt;li&gt;Have data offline, no need to worry does Internet connection go down.&lt;/li&gt;
&lt;li&gt;Spend less time at computer.&lt;/li&gt;
&lt;li&gt;Spend more time walking outside.&lt;/li&gt;
&lt;li&gt;Spend more time sleeping – yes your brain works when you sleep and solution can pop up to your mind at morning. Brain that gets enough rest works better, and gets more capacity for solving more complex work.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Beginning of a journey&lt;/h2&gt;

&lt;p&gt;I’m not there yet. I don’t know is this possible for my current highly-connected life. Getting even some of these working would be a good start. I’ll try to begin taking some steps.&lt;/p&gt;

&lt;p&gt;To be continued…&lt;/p&gt;

&lt;p&gt;(posted originally at: &lt;a href="https://blog.wekan.team/2018/10/offline-is-the-new-normal/index.html"&gt;https://blog.wekan.team/2018/10/offline-is-the-new-normal/index.html&lt;/a&gt;) &lt;/p&gt;


</description>
      <category>opensource</category>
      <category>wekan</category>
      <category>offline</category>
    </item>
    <item>
      <title>Confessions of an Open Source contributor</title>
      <dc:creator>Lauri Ojansivu</dc:creator>
      <pubDate>Sat, 15 Sep 2018 17:43:42 +0000</pubDate>
      <link>https://dev.to/xet7/confessions-of-an-open-source-contributor-2a1i</link>
      <guid>https://dev.to/xet7/confessions-of-an-open-source-contributor-2a1i</guid>
      <description>

&lt;p&gt;If you ever heard of Open Source Kanban board called &lt;a href="https://wekan.github.io"&gt;Wekan&lt;/a&gt;, then you probably heard of me too as xet7. I am an Open Source hobbyist contributor on Wekan. And decided to share my day to day journey with this awesome community of dev.to to exchange knowledge. These below are my confessions which shows I have a different but typical life just like other open source contributors. Maybe we can find something common, who knows?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Are you in a hurry, or should we use computer to do the work ?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;What I usually don’t spend my time with&lt;/h2&gt;

&lt;p&gt;Luckily I don’t usually install Windows and it’s updates. My friends at &lt;a href="http://www.xet7.org/avoin"&gt;nerd club I lead&lt;/a&gt; are trying to install Windows 10 updates to Vista age 17″ laptops that have traditional harddisk (not SSD) and there is no budget yet to change to SSD. Updates takes many days, if they happen to work at all. Those laptops should be used at some courses to teach students. I don’t know why they can’t use Linux in that teaching.&lt;/p&gt;

&lt;h2&gt;Some months ago: Server debugging&lt;/h2&gt;

&lt;p&gt;Some months ago I had some crash/reboot problems with Wekan &lt;a href="https://blog.wekan.team/2018/01/wekan-progress-on-x64-and-arm/index.html"&gt;donated servers&lt;/a&gt;. After spending a lot of time debugging with support, the reason for crashing was that I did run LXDE desktop and VirtualBox on server, and they fight for some limited resources on server. I also was able to duplicate this same behaviour on my laptop. I was using x2go to connect to that desktop. The solution to that was that I would remove LXDE desktop and VirtualBox, and use libvirt-based virt-manager GUI desktop client. With it I can connect with remote desktop VNC to server though ssh connection to see VMs that are running at server.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ST-yh3Xr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/g4pbpuvqe6e8bq2dq9u4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ST-yh3Xr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/g4pbpuvqe6e8bq2dq9u4.png" alt="Using virt-manager for remote desktop"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I have not yet figured out how to build VirtualBox .ova files on the server yet, because I did not get VirtualBox running inside KVM/QEMU. Probably I would need to use &lt;a href="https://packer.io"&gt;https://packer.io&lt;/a&gt; or some other tool.&lt;/p&gt;

&lt;h2&gt;Building Snap packages on my laptop&lt;/h2&gt;

&lt;p&gt;Once upon time, snap build servers had bug so builds failed, and snapcraft had bug that had a fix at repo that was not yet released, so &lt;a href="https://github.com/wekan/wekan-snap/issues/58"&gt;I figured out how to install snapcraft from source&lt;/a&gt; and build snap packages on my laptop. Those bugs have been fixed some time ago.&lt;/p&gt;

&lt;h2&gt;Answering GitHub issues&lt;/h2&gt;

&lt;p&gt;I do get email from every new GitHub issue and comment. I do like it, because my email filters organize incoming email neatly. Sometime there has been talk about making a bot that answers general questions, but there has not been so much duplicate questions yet. It’s very nice when also other Wekan contributors answer GitHub issues and send pull requests.&lt;/p&gt;

&lt;h2&gt;Day-to-day life, when there is no code related progress&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Some days it seems that coffee does not help enough to wake up, and I find it hard to concentrate. So then I need to sleep around the clock. This happens sometimes when I have been programming whole previous day intensively, or have walked a lot around the city at previous day.&lt;/li&gt;
&lt;li&gt;Shopping food etc too often take a whole day.&lt;/li&gt;
&lt;li&gt;Helping relatives and friends takes many days.&lt;/li&gt;
&lt;li&gt;Cleaning up often takes a whole day.&lt;/li&gt;
&lt;li&gt;I do like to listen singing of birds, days when sun is shining, days when it rains. Although, some days there is sound of chainsaw as can be seen from photo taken today – yes they did finally get permission to cut the trees at city where I live. Well, a year ago someone cut a iron bar at the parking lot with a circular saw, that was also nice.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SlrCSMpp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/re6d4b4lo2bgc71lqlpl.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SlrCSMpp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/re6d4b4lo2bgc71lqlpl.jpg" alt="Someone used chainsaw in the yard"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;Customer work&lt;/h2&gt;

&lt;p&gt;All of the above did slow down customer work, so I’m late in a project. I do already see that limiting original scope of project has helped to make schedule more realistic. Customer said to me, that because I have so much experience, I will figure it out. Because customer is so friendly and encouraging, I do my best to implement everything.&lt;/p&gt;

&lt;h2&gt;Day-to-day life, when I’m very productive&lt;/h2&gt;

&lt;p&gt;I have done remote work at home for many years. At some very productive day I did 7 releases of Wekan. At some other day I got one whole feature mostly done, “No comments” permission. Someone at chat commented that it would be very hard to do QA at that speed, wondering am I more of machine than human.&lt;/p&gt;

&lt;p&gt;For me, there are still too many manual steps in the release process.&lt;/p&gt;

&lt;h2&gt;What my life would look like if I had full time work at office&lt;/h2&gt;

&lt;p&gt;At morning, I would spend time at traffic to I would go to early to office. Work there at office the whole day, at breaks drink &lt;a href="https://queal.com/en/"&gt;Queal&lt;/a&gt; at office, and then go home, very tired. Shared office spaces are the worst, and it’s hard to concentrate with all the extra noise. Someone would ask something about unrelated work, so I would have to start debugging from the very beginning again. After work I would spend time at traffic to travel to home, and be very tired. Most likely I would not have enough time to rest and recover before next workday. Yes, I have done this for some days, when visiting company office, and staying at hotel.&lt;/p&gt;

&lt;p&gt;(posted originally at: &lt;a href="https://blog.wekan.team/2018/09/confessions-of-an-open-source-contributor/index.html"&gt;https://blog.wekan.team/2018/09/confessions-of-an-open-source-contributor/index.html&lt;/a&gt;) &lt;/p&gt;


</description>
      <category>opensource</category>
      <category>wekan</category>
      <category>kanban</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
