Sorry, this entry is only available in 日本語.

Sorry, this entry is only available in 日本語.

Sorry, this entry is only available in 日本語.

Sorry, this entry is only available in 日本語.

Sorry, this entry is only available in 日本語.

Sorry, this entry is only available in 日本語.

Sorry, this entry is only available in 日本語.

Sorry, this entry is only available in 日本語.

The bottle neck of porting Weather Tpying (WPF) to UWP is native C++ DLL. It is not difficult to port C++ code to C# but it will be convenient if I can use native code, it will be good.

At first, I tried making native DLL and called it from UWP by P/Invoke, it succeeded. It worked in Windows IoT, too. It seems that without prohibited API, it works.

After that, I tried building it as Windows Store app and validated with Windows App Certification Kit (WACK). Then I got “vccorlib140.dll is not supported for this application type” and Windows Security Features Test failed. In the error, memset and memcpy, that seems no problem to use, were shown. It
seems that the native DLL is linking desktop app library.

I found “Consume Windows Runtime Extension” in Native DLL project property. I enabled it seeing “Using C++/CX in Desktop apps” but it doesn’t change.

At last, I found official help “How to: Use Existing C++ Code in a Universal Windows Platform App” and changed project file directly and changed pre-complie header name addition to C++/CX settings above. After that, WACK succeeded.

When I saw the generated DLL by Dependancy Walker, it linked to “VCRUNTIME140_APP.DLL” and “MSVCP140_APP.DLL” instead of “VCRUNTIME140.DLL” and “MSVCP140.DLL. ” APP-DLL may be for UWP.

Followings are the tips I got using Xamarin.Forms for several days.

1. Can’t build automatically with F5

The project runs immediately with F5 so I did build & deploy manually in each debug. But I found the checkbox of [Configuration Manager]-UWP project build and deploy, Is it off as default?

2. I got exception in Release mode

I get System.PlatformNotSupportedException: ‘Arg_PlatformNotSupported’ exception when I run Shared Project MainPage. No exception in Debug mode. When I skip this exception, the app runs well. What is it?

3. Xaml intellisense dead

The worst trouble is this. It works some time but after doing something, intellisense will be dead. In UWP context, I haven’t seen intellisense works correctly. I get error like “ContentPage was not found” and have very little choice of code. In Android/iOS context, it works some time but after some operations, intellisense window does not show. In that situation, after removing shared project reference from Android/iOS project and add them again, iintellisense comes again… or not?

The plan of running Weather Typing on Raspberry Pi. I ported logic so I’m making screens.

This is an image 2 weeks ago. With mobile battery, I can take it to anywhere.

This is current image. I can type words with keyboard.

I have platform dependent implementation like keyboard but if I implemented that, the same application will work on Windows 10 IoT on Raspberry Pi, Windows Store (UWP), Android, There seems to be iOS.Xamarin Mac so can it work on Mac?

I can implement battle feature with at least Windows store. In Android, maybe I can implement guest
feature.

And I can use Raspberry Pi feature so I tried hardware. When I press a key on keyboard, LED will be ON/OFF.

Achieving this, I can start that project I wanted to do. I will report here later.

Today is the day of the 2nd Raspberry Pi workshop. We found nice work space in the near field so we
exchanged information. We discussed how to develop Windows 10 IoT app on Mac. We assumed after installing Windows 10 IoT with a PC, we can develop Xamarin app with Visual Studio. And we bought SD card.

It’s about time to buy mobile battery so I bought Maxell mobile battery. It supports 3A so can handle Raspberry Pi.

This is current raspberry pi with mobile battery.

The current goal is running Weather Typing on Raspberry Pi but I wan’t to run it on mobile at the same time so I tried Xamarin.Forms I was interested in.

When I created a cross-platform project in Visual Studio 2017, I got Shared Project and UWP/Android/iOS projects. I can test on UWP before testing on Windows 10 IoT, that is convenient.

There are many way to achieve cross platform development. At first, I can use Portable Class Library (PCL) as is. I can port WPF common project to Shared Project and use ifdef for each platform. The better way may be making interface in PCL and using Dependency Injection but I have too many classes.

Shared Project is not a DLL not a static library. That project will be merged to each platform project. I thought the define value should be defined for each platform but that was not true. I defined platform dependent value such as _UWP__.

How about XAML cross platform? In some books. I can choose using Xamarin Forms or I can make
each platform screen. I wan’t to try Xamarin Forms! But… I think making each platform screen is easier. I don’t see screen image in develop phase, that is okay. But intellisense will be dead when I wrote wrong code. And do I have to Build & Deploy manually before debug code? I think it will be fine after I got some tips, right?

I concerned about GPIO. Does it work with Xamarin? Yes, I can add reference GPIO library from UWP project. Is it normal UWP app instead of Xamarin emulated .NET framework?

This is the first app with UWP on Xamarin.Forms.

I’m trying to run Weather Typing on Raspberry Pi. I can use C# in Windows 10 IoT so started experiment.

As in MS page, copied image from Windows 10 IoT Core Dashboard to SD and run, but it stacks then ended up with BSOD (BAD SYSTEM CONFIG INFO). After that, I get BCD error and the end. I tried it several times
but no luck. After Googling, I get some information of power issue but I can’t use it with Surface charger.

Another topic, After installing Windows IoT, that makes many partitions. I don’t know which partition I have to delete so I deleted all the partition. But after that, Windows lost the SD card. That SD card was recognized after formatted it in Xperia.

After all, that was SD card issue. I can’t use TOSHIBA 16GB and can use ELECOM 16GB.

→That was because my TOSHIBA SD card was class 4. I bought it in convenience store. I bought ELECOM one in electric store so that was class 10.

As official 7 inch touch screen is shown up-side down so I launched Windows 10 IoT Core Dashboard to fix it. But I can’t use the first password I specified. But I got error. it seems the first password
was fixed to “p@ssw0rd”? I changed the password and finally I reversed display direction/

Next, I searched the way to remote control Windows IoT and found Windows Store App. I can remote login with a href=”https://www.microsoft.com/en-us/store/p/windows-iot-remote-client/9nblggh5mnxz?SilentAuth=1&wa=wsignin1.0″>Windows IoT Remote Client. I can start
develop Windows IoT app.

I released WT3.2.1. I fixed the error
related to input after last character. Internally, key array hash was changed.

Weather Typing page was messy so I moved previous version to previous version. And I added downloading past versions. I don’t have ver. 1.0 but you can download after ver. 1.2.

I published input method plugin as open source atGitHub. It is my first time to have open source. I decided the license to Apache2 that is less restriction. You can use it as non-proprietary or proprietary, you can change it. The more Weather Typing plugins, the better.

I have almost finished WT3.2 so I’m building Raspberry Pi environment. I attached a touch LCD and case I bought in Akihabara.

I can provide power from Raspberry Pi to LCD, I can easily take it to anywhere. More than anything, I
can remove the back cover. I love it.

Now start Weather Typing on Raspberry Pi project.

I want to make Weather Typing plugin open source but there are some unknown stuff. Is license Apache2 fine for this project? I don’t need to concern yet but if someone want to change the source
code, pull request will come, right? In the future, I will make Weather Typing store that publishes word, inputmethod, cpu plugin, replay, I don’t know when I can do it.

And I’m making manual of GitHub project top page. I can write it in Markdown format that is similar
to Wiki. At first I was using Atom that is GitHub official editor. But
it is heavy for long document. At last I’m using Sakura Editor for editing and Atom for preview. Atom detect changes of the file to that is fine.

I have finished test so I published beta version of WT3.2.

In fact, I wanted to public production version but I had many bugs so decided to public beta at first. If no bugs are found, I will publish it and if any bugs are found, I will update 3.2.1.

I will finish developing WT3 in anytime. I have 700 checklist and 22 remains. I find bugs every time I executed some checklist so I cannot publish develop version. After finished test, I will publish production version. I found 49 bugs and the target was 50 so quality is good I think.

I have to write manual for developing plugins.

I am in IT industry so I have to use recent service.

I do not have used net shop a lot because I live alone but recently there are receive in convenience store and receive at electric store. I bought some items which I cannot buy in real
stop. Amazon item has arrived in one day. It is very convenient for people who live alone.

Another one. I have many PC parts and I wonder how to throw them away. And I found some
service of recycling. I used Renet Japan which has a partnership with municipality. They confirmed me the items are personal because of amount but it finished with no problem. It is also convenient.

As new WT3 is approaching, I asked KK to play it with me. Test goes well but I noticed some issues. Play actually is much better than test program or check list.

I played WT online after long period but it was fun.

I changed my smartphone for the first time in 4 years. Old one lacks memory because of unwanted apps.

I used Docomo/NEC for 17 years but NEC ended smartphone so I bought Sony XZ SO-01J this time. I recovered all of apps
now and cloud helped me a lot. It is good, only it doesn’t have strap hole. I want to investigate new thing of new smartphone.

About WT plugin that I have been developing for a long time. I have finished base coding. This is the first step for new concept.

I am testing connecting new version and old version to keep compatibility. While trying various input, I found some bugs of
old version because I recreated input method.
・XN isn’t recognized in Dvorak. X position was Qwerty in Dvorak XN.
・Can’t input Shift+Kana in 50 on. I don’t change this as no one use this.

I may publish develop version in Golden Week.

The download count of Analog Book Reader a while ago was extraordinary.

Total count is about 40,000 now but the count in this term was 1600. After that, it became back to normal. I can’t found any information in Google and Twitter search. A friend of mine guesses that some organization adopts the app and all the member has installed. It is strange anyway.

By the way, Weather Typing download count is about 40,000+ that I don’t know the count of early days, though. Analog Book Reader download count is getting closer to that. The world is big. Weather Typing can be used in global after I developed current project so it will became global, I hope.

I went to Akihabara with Happa for the first time in a while. The goal this time was BEEP秋葉原店 which was on my mind for several month. Basic Magazine like paint was on road and when we entered the shop, there were many retro PC, game, books. There were MSX, x68, even Tiny-Xevious of PC 6001, and many NES games. However, I don’t have items to buy because I can’t play with them because of environment. There were Basic Magazines but I can read them in National Diet Library. Are really core people have gaming environment in their home?

The another goal was Raspberry Pi. I bought camera module I didn’t have one for Arduino. I will try it.

I bought Raspberry Pi a while ago so I played with it.

Raspberry Pi is a small computer and can be used with an OS in SD card. It has I/O pins which I can attach electric parts. In fact, I wanted to install a Wi-Fi and a camera into Arduino and grade up RC. But I can’t install other parts after installed two motors and Bluetooth so I will try Raspberry Pi which has Wi-Fi and camera I/F.

I bought Raspberry Pi and SD card, connect it to HDMI display, connected USB mouse and keyboard. I installed Raspbian (Default Linux) to SD card using PC, then ready. Launching Raspberry Pi and installed OS. After changing password, configured Wi-Fi, finally I was able to login to it with SSH from PC.

I have a problem here. When I use it, IP address will be changed because of DHCP and it is hard to use. I don’t want to connect display and execute ifconfig. Because of that, I created a first program that notify IP address to web site when launched. It was my first Python program so I don’t know details.

# coding: utf-8
import urllib2
import subprocess

url = 'http://xxxxx/cgi-bin/xxxxx.cgi?ip='
cmd = "hostname -I"
ip = subprocess.check_output(cmd,shell=True)
urllib2.urlopen(url + ip)

When Raspberry Pi launched, it seems that pi user automatically logins, so I added following code in .bashrc.

python /home/pi/xxx.py &

In Web side, I created CGI but I can’t copy & paste here because it is link to large original library. It saves given IP address and output latest IP address to standard output.

Now I don’t need display, mouse and keyboard. Super convenient.

January will end without any articles. WT3 is progressing but I have a lot of items to work with for input method plugin. I have to implement weight calculation, sandboxing, network protocol change, replay compatibility. When can I finish?

WT3。The completion is still far away but I’m working on customization. I ended up UI designing word customization and input method customization. That will be finish soon. I have to stop working on design as it take infinite time. I will upload development version.

Recently, I’m study math to understand Elliptic curve cryptography. At first I read 「数学ガール」 series by Hiroshi Yuki who is famous by C magazine and 「なっとくする虚数・複素数の物理数学」 which was in my house. In my college, I thought Japanese books are too difficult but now a days there are easy books even in Japanese so it is good for people studying as hobby.

Speaking of Elliptic curve cryptography, I should learn Fermat’s Last Theorem. I read Simon Singhの「Fermat’s Last Theorem」. The story of Andrew Wiles who research it for 7 years in secret and make a presentation on conference is interesting. The book does not include much formula so it is not satisfying. But as it is too difficult to understand full theory so maybe the book is good. As a side effect, I was able to study math terms in English because I read it in English.

Finally, I am reading 「暗号理論と楕円曲線」 which I can read somehow. I have read 1/3 and I feel I can understand overview of Elliptic curve cryptography.

Since I studied math, I want to make an application about it like the physics simulator and music score app, I want some ideas.

I went to bookshop. I bought 趣味で物理学 series as all the three books are at the bookshop.

This book is based on a site EMANの物理学 and I read a lot while I was making a physics simulator World Tester. This site explores physics during describing and it is so interesting that I was reading the site for a long time. I wish buying books helps the author.

I have to add entry before November.

WT3 is progressing but I cannot release it for a while. I am making a input method plugin but before that, I have to improve lobby design which I spent little time before.

I am reading a book which I found in a bookstore なるほどデザイン. It is very interesting. Most design book includes rules and example but I do not know how I use it. This book includes design method and write every steps to design so it is useful.