Welcome to My Blog

YNAB and its annoyance

Words cannot express the amount of joy when I first started using YNAB. It felt leaps and decade better than old Mint which has not really been updated since a decade ago?

So… then YNAB TD Canada Trust importer broke around Feb/March of this year, not YNAB’s fault, I know. But the fact it was not able to connect my bank account for like three months while MINT can still do 3 days later after TD Canada interface update makes me wonder if YNAB should switch to a better bank connector?

That part… is not the worst.

So today after everything is finally back up (btw, I do have to pay for YNAB, and not Mint), three months later. I was happily synchronizing everything. When I realized that the bank balance are not correct... this is where shxt really hits the fans. As the core principle and competency of a finance/accounting software, the number one creed of its goal above and beyond everything is the get its shit together and get transactions imported/transferred correctly from the bank to the BEST of its abilities. Turned out YNAB only import ONE month back and even back then, some dates were offsetted by as far as 4 days.

If YNAB requires ME to manually cross validate every single transactions to rebalance the book vs bank record, we have a major problem here as not only is it making my life more difficult vs Mint, it is now forcing me to run a full investigation to see WHICH lines are not imported/date set properly! So far, rough comparisons suggest everything in March is pretty much gone.

A few quick comparisons: Note blue transactions are only there because of a LINK from those credit cards etc.


I will update again once I begin to sort through the mess.

Update 1: spent past 24h cleaning up the update. A few piece of good news: manual import of QBX format has auto deduplication built into it (at least for my main banking account) so that really helped out. I had to blank import past 6 months of statement to patch up the missing bits. My suspicion is that when missing import sometimes, the transactions gets neglected and will no longer be imported. i.e. completely fall off the book. =_=…. While doing this for another different account, I actually noticed that the deduplication process fails so resulted in crap tons of duplicated entries and causing issues…. again, more headaches. This requirement to manually hunt down when and how the out of sync occured really leaves terrible taste in my mouth as it fails at a basic level as I mentioned earlier: 1) if this software is PULLING data from the bank in the first place after I give it permission, it should not be requiring me to go over every single transactions again to en sure that they are synced over, that is not the job of the user, that is the job of the software. As a user of financial software, my goal and sole purpose of using YNAB or mint or the like is to do budgeting, tracking expenses, not questioning the authenticity of whether the copy from the bank over to the software occurred. If I want to do that, I could have used a spreadsheet…/rant.

Posted in Uncategorized

Plotly and Google Colab

Plotly is super nice as it fixed the critical issue of non-interactivity in Python MatPlotLib. Sure MatPlotLib is superpowerful but still, you need to iterate likemad if you want to change anything and is not super easy to explore data points on mouseover etc. Plotly is quite nice but does not play well with CoLab environment unless you call initialization in EVERY SINGLE CELL. Luckily, someone solved that problem for you. Check out this StackExchange answer:


Yeah, another weird quirk of Google Colab vs regular jupyter notebook…


Posted in Uncategorized

CentOS, phpMyAdmin Fun

That actually turned out not TOO too painful but still annoying.

I hate doing anything web if the error is so ambigious… like… access denied… but WHY? FUCKING WHY??????

So followed this article:


Not too bad. Got it working.

However, then had to make sure apache has access to all of the phpmyadmin so had to chown for all that.

chown -R apache:apache somethingsomething like that.

Then had to change the permission in phpmyadmin.conf to ensure permission is open.

Then because it is behind proxy, you got add this: https://coderwall.com/p/ev5mza/solve-phpmyadmin-path-problems-behind-apache-proxy

Lastly, I still did not configure it properly and had to call the index.php instead. =_=

At least, 3 hours of adventure later, it is somewhat working. Adding more stuff ot the security audit list.



Also something I learned along the fun. sudo -i to enter directory that I don’t have permission but if I have sudo to enter… sigh. i probably broken like a gazillion security rules etc but hey, whatever get the project moving forward…


Posted in Uncategorized

CentOS7 and Docker

So… apparently, Docker service needs to be started: sudo service docker start… before you can pull any Docker images or else you get “Warning: failed to get default registry endpoint from daemon (Cannon connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?)” error. Hey, for once… I guess the error was quite helpful and on point and less ambiguous. Probably should figure out a way to auto run the service. Too bad I am still so new to CentOS. SELinux 0. lol

Posted in Uncategorized

HP z620 and Fancy GPUs

So. Had to upgrade a HP Z620 workstation at work lately to get a 1070 board to fit to do some ML work soonish.

A few things I noticed because I was not the only one googling like mad about it:

1) does it have enough power? 2) does it have enough room 3) what cable is required?

  1. Yes, the native power supply has like almost 700W so more than enough for puny 1070 power requirement which is less than 200W.
  2. BARELY. I originally had the old Quadro card further up and had to trade spot with the 1070. Keep in mind you will need to remove a few things.  Move the original GPU to lower spot or else the 1070 literally won’t have enough breathing room (as in, it will try to suck air from the bottom metal plate which… will most likely cause issues and prevent heat dissipation (unless you use the case to vent heat via conduction? which would be kind of cool yet hot I guess? (Don’t use the black slot shown here for 1070 or any recent large size card…). YOU MUST REMOVE a metal spacer from the chassis cover in order to fit 1070 though as the card is TOO wide. Luckily, Z620 had designed the chassis with that in mind. Lastly, if you have DUAL CPU slots you might have issues. I don’t have that but from what I can tell, I think my card will block way for that as well.
  3. So 1070 has a ePCI 8 pin hole power cable. I tried to put the spare G0 / G1 cable which are normally plugged into the plastic frame  dicking around there, into 1070, but it won’t work and give you this: Which is kind of funny because if you found this post, you must have read other HP forum post bragging about the ePCI 5 pin cables are magical and has special properties and can support up to 225W GPU etc. They were right. BUT, you need to convert the 5pin (six pin with one empty) to a regular 8 pins for the GPU, and it will boot fine. So the answer is: if you want to use a GPU, get at least a 6 pin to 8pins converter or else it will not work for Z620. Directly plugging into the 6 pins into 8 pins holes on the graphics card will NOT WORK. The adapter cable does not have to come from HP or anywhere special, I bought it from a regular store.

Enjoy your new z620 with beefed up GPU card.

PS: for those who think this rig can handle SAS drives, think again and think very carefully. I bought tons of SAS drives and in the end have to return them because apparently my configuration at manufacturing at least did not support SAS drive unless I originally opted for an upgrade at the purchase time.

Posted in Uncategorized


I slowly realized that many components of the Linux OS are written by specific python version… and attempting to upgrade them or change them can cause side effect “fun” consequences.

This makes sense for setting up Python environment… but finding the right command to even reach that level took a while. For CentOS, DigitalOcean guide comes helpful as usual once more.

For CentOS, the key commands seems to be:

sudo yum -y install python36u

suodo yum -y install python36u-pip

python3.6 -m venv my ENVNAME

source ENVNAME/bin/activate


Then, from this point onward, the environment is fully setup.

Today, my goal is to write a simple boutique desciptor for BET.


Posted in Uncategorized

CentOS and its quirks

Slowly getting hang of CentOS7. Had an issue compiling ITK which was fun… Turns out CMAKE was bugged out.. I guess that is the pattern I expect to see… always think: is there a newer alternative for this app I am using that could be critically out of date on the CentOS long term support release. In my case, it was CMAKE out of date…..

Posted in Uncategorized

Real World YUL Easter Eggs

So… Apparently Montreal has these secret super random T Rex funny stickers that some folks have been trying to stick at most random place (mostly city lamp post). Finding them while walking around is like finding Easter eggs in GTA games. Here are some examples.

Whoever doing this is pretty determined and prepared and is most probably some underground artists because these stickers have been around over at least a year or two and are of HIGH quality with minimal color fading and weather resistant to the winter snow and spring flood inducing rain…

Posted in Uncategorized

My experience with CentOS so far

Summarized pretty well by this:

Oh, I have not started look into SELinux yet. I just set it to 0.. +_+

Posted in Uncategorized

Grep and Flavor of RegularExpression

I hate Linux. I suck at it because even simplest tasks take forever to do unless you memorized all the flags and all the nitty gritty details. It took me a full day to realize why my script sometimes works and other times don’t. Grep for a regular expression on string is annoying.

Had to realize -iPo and the fact that this would make search case insensitive (i), only show the matched output text portion (o) and use Perl flavored RegularExpression engine (P) instead of the useless standard/basic regular expression in egrep or grep. Those damn three letters (especially P) costed me a day. FML. Did I mention all this script is take an input string and modify it slightly to insert a word at the right place? Such small function that would take maybe 1h in C# even fully reliant on Man search/StackOverflow search etc. Took me a DAY… FFFFFFFFFFF this.

Also… didn’t expect install VM guest addition turned out to be more painful than I expected… Here is a much easier step by step guide… https://www.if-not-true-then-false.com/2010/install-virtualbox-guest-additions-on-fedora-centos-red-hat-rhel/


Posted in Uncategorized