This page lists all the site updates. These are short posts that describe the events in my life. These posts are frequently added here, but have less content than the blog post or the article pages. I like to post one everyday so that I can go back and check what series of changes for an extended period of time. These site updates also track the progress of various projects. Some of them might contain funny stuff, anything that can entertain the readers of these sites. Hope you enjoy them.
A few days passed. A few things happened. There is a big snow. First it was slit (freezing rain), then heavy snow fall. Today, I had to clean out the snow, 3 times, each time, there were 4 in on the ground. The driveway is small, and the cars were parked there. It was hard to maneuver. It was pretty quick compared to the big drive way in Michigan.
The day before yesterday. It was Saturday, and I was working on the Spring Security sample app with Thymeleaf. This is the one that I had a lot of problem with, when I worked on it on Windows. For some reason, that day I was not able to create the secure session when I ran it with "http" and not with "https". When I worked with this new PC. Everything is fine. Weird. Anyways, I made great progress with that sample application. I will be adding some more things to the sample application. Then off with writing the tutorial. It was good.
Today, I was reading about how to connect a camera to the PC. It seems that I need a micro HDMI cable to connect Nikon D5100 to a PC. I was thinking of buying a GoPro and use it for some kind of video streaming. Then again, I don't really do video streaming. So there is no need for such a device yet. Then I thought of something, is it possible to connect a cellphone to a PC and do streaming. By research, it is not possible to do with a cable. However, it is possible to connect using an App called IP WebCam. And I tried it, it works, I was able to use VLC to open the video streaming via network, then the streaming can be saved as an MP4 file. So there it is, a great way of turn your phone into a remote recording device. It was fun that when everything works as expected.
A Lot of Learning to Do
There is not much going on for the past couple week. I did play a little game Dragon Quest (for a couple hours). Made some good progress. That is not important. What is important is that I have completed the report on installing Linux and posted here. That was very satisfying. Something is still missing on that post, I will added the missing part, my recommendation on what to buy and install Linux.
I was doing another side project. It is something I have to complete. As now, it was 90% completed. That was pretty quick because I have done it once. So copy and paste the same code around made it pretty quick, it is not good practice, but it is quick and effective. We will see what kind of issue it will cause. Hopefully it will not cause any.
I didn't touch my Linux laptop for a few days and I missed it. So I took it out this morning and play with it for a little. I updated the 2021 Code Project Submission project page. And of course, the code project submission on Multi-file upload tutorial is published. This past week for me was really productive. I am working on the next code project tutorial, ES6 and AngularJS based application, just an exploration piece. ES6 is actually really awesome. It could make the UI application look more object-oriented. This tutorial will be fun, educational and probably a hit for the community.
Recent Updates Linux Setup and Tutorial Submission, etc.
For the past week or so, I was working on a Windows App. WinForm based, .NET 4.7.2. And It worked on Surface Go, with no problem at all. It used NAudio to play and record wav files. I was surprised that it was working so well with the Surface device. At least one thing was done right by Microsoft. I need to write another application with similar architecture. It will take a week or so. There is one small note I will create a post for it. It is how to handle the exception when invoke the UI element in a thread. It is very useful.
I have not have the time to zip up the CodeProject tutorial and sent out. It is something immediate on my list. I will get to it as soon as possible. I am also thinking of writing a simple python app to download some images. Automate the process so that it can be quick and efficient, I will get to this as soon as I am done with the codeproject stuff. I bought a new wireless mouse, one USB disk and one micro SD disk. The next thing I want to try is capture game play videos from PS4 and upload to youtube, just for fun. This will have to wait. It is going to be fun.
Have Been Busy with Some Minor Projects
I have been using the laptop for a few days. The experience, is like being in a candy store. Everything is new, everything brings a fresh perspective. I remember last time I had the same experience. It was January of 2013. I installed Ubuntu for a IBM T42. Then the laptop died. I was playing Fallout: New Vegas before, and it was defective video card or something. Anyways, I had 3 months of fun with it.
So now that I got a new one and installed. It turned out to be fantastic. Although there are a few issues. A glitch occasionally which doesn't bother me much. The biggest annoyance is the keyboard. Every laptop, the keyboard layout is different, even a fraction of inches or millimetres different can have a big impact of typing. The biggest of the annoyances is the location of the page up, down, and home and end keys. I use them so often yet for windows laptops, they are always different from one to another.so I always hit the wrong one. Right now, I look at the keyboard while typing. It will be a while before I learn how to take my eyes off the keyboard and to the screen. The keyboard is something to get used to.
I was playing with video encoding and some editing. The biggest question I had is to get the final video segment as small as the original. And I was not able to. It is hard when there are so many combinations of parameters to set. Then I figured out a way. I use ffmpeg to do a dump of the information about the original video. Then use the exact the same for the new video. And the outcome would appear to be quite nice. More experiments on this.
I was doing the code fix for the file upload on this site. It is pretty hard to do. That part of coding is complicated and I always struggled with it. I think I am half way with the back end. And needs some more time to finish. Will keep more updates on it.
Linux on A Laptop - In a Candy Store
I didn't provide an update for 3 days. I know. Guess what I was doing? I played two days of Dragon Quest XI. Friday and Saturday of the new year. It was the perfect time to play some games, I was very relaxed. And I felt bad that I had to put aside of the computer and playing games. Now it is over I am on the computer again. In between the time, I installed and did some re-configuration of the Linux laptop. It looks a lot better now.
Aside from all the software I needed, like Java, Eclipse, etc. I installed Handbrake, OBS Studio. I like video editing. OBS Studio worked flawlessly. On my old computer, I used to have OBS Studio and the quality was just a mess. On this new computer, I take the video capture of desktop, clear and crisp. Handshake, I have not figured out how to shrink the videos to ridiculous small sizes. But I did have fun playing with this application.
I also installed GIMP, and tried with the unshaped mask for sharpening and it worked as I expected. So far the laptop is working as beautiful as I have expect. I was able to use git to get my source code and use EGit in Eclipse to commit. This is a trial period, and it is going as great as I wanted.
Linux on a Laptop - An Update
Everything is going great. I have installed a bunch of software on the new laptop. So far so good. I have added Eclipse, and JDK 14. Then I added EGit on Eclipse. From there I was able to clone a spare time project and run it (on command line or in Eclipse).
Then I installed some other applications, like a MP3 player. Got all the MP3 on the new laptop and they worked just as expected. I tried out the audio editing tool Audacity. Again, seems to work as expected. Okular for the document reading, works as expected. I got OpenShot Video Editor on the system, and cut a video, again, worked like a charm. I even installed FocusWrite for some simple writing fun. Turned out that FocusWrite is not fun. So I uninstalled it and installed Typora.
I did notice a problem with the system. When I boot it up today, the Xfce Windows Manager was not the right one. After rebooting, it was switched back. That was strange. I discovered that I have two desktop environment. There are a lot of things to be learned from this new experience.
Linux on a Laptop - Installed Software
I didn't get my laptop from that bad online store, so I went to Costco and brought the one that was on display. It was another HP laptop. It had 12GB memory on it, I wish I had 16GB. but 12 is OK, it gives at least 10GB for use. It also has a 512GB of SSD, very nice.
The default OS on it was Windows 10 Home Edition. It is useless. I didn't need it anyway. What I needed was to install Linux to it. So I did. I used the unetbootin to create a USB boot install disk. Then I proceeded to install. I allocated 100 GB of space to the Windows OS, and rest to the Linux system. The install was really easy. I was very very surprise of how easy it was. The only problem I had to face is that after I install it, I was booted into Windows. After some digging (like always), I figured out. I had to change the laptop's BIOS to use Linux boot first, and Linux' boot menu includes Windows as the second option.
The system has been very stable, very quick. I have installed Java, Eclipse, and PIA VPN on it. All worked very well. This is a really interesting experience. I am switching back to the old one until I can move all the files off and to the new system.
The tutorial on the AngularJS File Upload is done.
Linux on A Real Laptop
It has been nine days since the last update. I made huge progress with the day work. And I was playing Dragon Quest XI, and made some progress with the game as well. This game is risk-less, but very slow. I made it to level 36 for the main character, and the contest at Octogonia was a breeze. The cinematic is interesting, with the two new characters joining the team. I was pleasantly surprised how interesting the plot of this game is.
I had also made some progress with the AngularJS work. The multi-part file upload functionality is very interesting. I got it working and it was very simple. If I knew how this was working before I had this site developed, I would never employ the solution I have now. I will be document the solution in a post. Yes, a post. Once it is published, I will begin to work on a new solution to replace the resource file upload I have now for this site. The solution probably will be an addition of the application, then swap out the existing design with the new one. It would be quite interesting to make such an improvement. The progress would either be messy or clean and simple.
Made a Lot of Progress with a Lot of Things
I learned something at work. I was working on the file upload, and used my way of doing the upload and it didn't work. I guess it works with Java on the back end. But IIS has a hard size limit on the JSON request, So large file converted into BASE64 string and sent as a part the JSON request fails. There is no way of increasing the JSON request size limit in IIS, no easy way.
There is no choice, I had to use FormData and multi-part file to do the upload. And I figured out. I mean I find where to get the answer. The tutorial I found was unclear. So I need to write a new one so that it serve as shining beacon of hope. Kidding. I do these tutorials so that I can look them up later, in case I needed it. And just as I was doing my own file upload, I copy and pasted my own code from codeproject. It feels good. Without refining these knowledge, re-tracing my way to get something to work takes a lot more time.
AngularJS File Upload using FormData
It has been six days, since the last update. The social situation is getting worse. It is like the end of the world. We all confined to home. And I had very few hours to do the day's work. And I have to work at night to keep up. The work is very interesting. It is why I was very engaged. And my spare-time projects are suffering. I hope this is temporary.
I ordered a new laptop (a used one) from a shady dealer and have not heard back. I was going to get it so that I can install Linux on it. It will be a couple more days before I can get it. But the slowness is something making me angry. I guess once you get used to the fast delivery, the slow response is something that can make one annoyed and angry. The social situation only makes one's psychological state worse. I know I should be more tolerant about this type of delay. It is the holiday season and the social situation made it (the shipping) worse.
I also ordered two games, Death Stranding and The Last of Us Part II. The prices of these two have fallen to the acceptable level so I got them both (shipping is free). They are from Walmart, and they will be shipped to me on time by December 1st. At least I am happy about this.
It Has Been Six Days Since Last Update
Due to the pandemic, school is closed again and I have to babysit during the day. Then I have to catching up day work at night. The .NET app development is on hold. I don't like this, but the situation is not something I can control or manipulate. I kinda like the fact that I can accompany one of the kid during the day and help out with their school attendance. But the schedule impact is making me nervous as it cuts into my personal time. Again, the social situation is out of everyone's control. Anyways, I am coping as best as I can. The day's work is being interesting. And I have made great progress with it. Hopefully I can return to the old ways of living soon.
What I am thinking is that maybe the life ahead will be different from the old one. And there is no turning back.
Schedule Got Impacted Again
There is not much going on for the past couple days. I started a new program. A .NET program using NAudio. It has to play the sound wave file and record sound file. It is boring except that I never used NAudio. That part is kinda fun. And the day work is interesting so I didn't do much at night. I did play two nights of Dragon Quest XI (11/13, 11/14). I think I finished Chapter 7 of the game.
The NAudio stuff will be a tutorial. I will finish the program first. It will require a week. It is boring work, I just have to finish it. It is important. Anyways, I have a list of tutorials to finish for this site and I am slowly catching up. I will get to them eventually. Anyways, I will not re-iterate these tutorial again here. Recently things are just getting really slowed because of the social situations. Hopefully, I will have something better to show in my next update.
Nothing Much is Going On for the Past Few Days
Spent two days on writing a sample program. It is not working and nearly driven me mad. It is funny how it is resolved at the very end. One post in stackoverflow described that using host name localhost the security based session will no longer to be created. So the get around is using 127.0.0.1 instead. I tried this fix and it did work. And this answer is so obscure that it is almost impossible for me find it. I am sure I am not the only one, and I wonder how many people missed this answer.
Anyways, I will add blog post for this. On a side note, I was playing Dragon Quest XI on Saturday night. I killed another metal slime. When I played Dragon Quest on the pad, I never did kill any metal slime. Now I have done it twice, I think I can do it over and over again. I found a few ways to make the game more fun, like how to farm perfectionist pearl, and how to use them to upgrade all the characters' gears. The grinding for experience is not so bad. But the bright color and repetitive music are giving me some headaches (real headaches). I am not playing this again until the sample program is completed.
Working on Spring Security and Thymeleaf Integration Sample
Yesterday, I looked at my published list for this year, and it disappointed me. There were only six articles, not seven. I thought I had seven articles. I was wrong. I like to have seven articles published. So I took the blog post for the Thymeleaf integration, did some clean up. and sent to codeproject. Now I have seven published.
There are some new ideas I am considering. The newest one is form validation with AngularJS, I just had a hard time coding something with this. There is no good tutorial out there. And this is one of the weak point I have with AngularJS. Create an in-depth tutorial would help me and everyone else.
Another one would be multi-resource uploading. Something that I can use in the future projects. And I should get back to learning Redis, and at least publish one tutorial on it. There are a lot I must do, And I will get to them eventually. The problem was time, there are only two hours of the day I can do some work for this. So everything goes slowly. At this point, I don't even care if I move as fast as the technologies (of course the technology move faster than I can, because there are lots of people who do work on them). I just want to get good at things I am interested in,
Refining one's skill at one specific area is way better and way more efficient than the pursue of many things all at once.
Published Another Tutorial
The tutorial write-up is completed. I have corrected all the misspells. After I proof read the tutorial, I sent it to codeproject. Yesterday I used the sample program one more time. I was very psyched about how good it was. Seems to be a waste if I leave it aside to collect dust. Maybe I should do another big project with it. It shouldn't be wasted.
The benefit of doing projects is that it can help develop ideas, ideas of how to do things better, efficient. One does not get such when sitting idle. I find that the work would also help shape one's thinking on how things can be done. It was most beneficial. I am trying to strike a balance between repeating old work, and creating new. There are some old work needed redo. And some ideas as well, I can't reveal them yet. And I am not starting these because I am a bit afraid that once I started, I get no break out of them.
I have been thinking of a new laptop to put Linux on it. But a decent one costs more than $800, I am a bit hesitant to commit to such a purchase.
As for Dragon Quest XI, I was in the desert now, the levels are pretty high. I was still grinding for experience. Recently I encountered a metal slime and defeated it. But let two more escaped. That was pretty fun. I play it once a week for 2 to 3 hours and I didn't get addicted. It is because the projects kept me focus, game play is not as fun.
New AngularJS Tutorial is Published.
It is been six days since the last update. I have been busy. The day work was getting tough. I had no time to exercise after being busy for a week. The situation is kinda crazy. I hope it will improve next week. I have been working on the codeproject tutorial on the reusable html editor. It will be my last one for 2020 (this is the seventh one). And I am trying to make it a hit.
It is a complicated component, I have spent three days on the tutorial and it will be a couple more days. Afterwards, I will do a simple application using ES6 script syntax. I found ES6 script exciting. Redis is another matter. It is easy enough, and I was able to get a sample application working, but in order to get anything meaningful working, it will take a lot more effort. I have to learn how to use Redis and take advantage of it. I don't know how I will learn it. It is tough that I don't work with technology directly. I guess I will dig harder with search engine. And there is a lot to learn on Redis.
Maybe I can do something different this time. I can do a small blog post for every small thing I learned on Redis. It has to wait. I won't start this until the tutorial is done.That is my plan.
Working on the AngularJS Reusable HTML Editor Tutorial