I have been using Sonarwhal to check my website for errors for quite a while. This is quite a useful tool to get your website checked for best practises and errors.
So far, I have managed to clear out many issues raised by the online scanner provided free-of-charge. The downside of the scanner right now, is that I cannot set rules. Like I can't ignore certain domains that are not under my control, thus it reports their errors. The other downside I face is also a timeout between scans. I like to scan each time I make a site modification, which can be seconds apart. You can install this tool on your local premise to overcome these limitations.
Some of the errors and best practises I have done are like HSTS, PWA, and other security headers. It's a good tool to use. Give it a try for free.
So you are going to tie your knot with your soulmate. Before you go running to get your wedding planner, would you like to consider planning on your own like I did?
There are many considerations for my wedding that may not apply to you.
Since I do away with a wedding planner, I totally did not spend ~S$2300 just to engage a planner. The good thing about a wedding planner is that they come with a wealth of experience. Knowing potential pitfalls and obstacles can truly be a event-saver. They will take the load of stress from the couple, so that the couple can just focus on getting happily married, with emphasis on happy. The one single thing that annoyed me most was that a wedding planner advising my invitees based on the projected gift values they bring, which goes against my deep-seated belief that my wedding is not a fund-raising event.
The first item in my list of preparation was to choose a restuarant that gave the most value-for-money. I'm not looking for a cheap place to hold my wedding, but instead, I'm interested in making sure my money is well spent. So I chose EatPlayLove cafe. This place provides a full wedding package at a very reasonable price. The package includes a wedding cake, decorations, and backdrop.
Looking for clothes was not so straight forward. We wanted to look our best. Shopping around sure took much effort. In the end, my wife's talent came to great use. She bought very simple clothes and little accessories to sew them on. On top of the savings, we were able to customise the decorations on our clothes. When we did a comparison of equivalent clothes along Bugis, we managed a savings of 30% average. The biggest savings was from Minions Theme clothes. A piece of Minion theme shirt costs about ~S$80, but buying off a simple shirt and Minion artwork costs a mere ~S$20.
What is a wedding without photos to keep as memory. In this category, we made great savings too. There were many photography packages, but most of them start from ~S$1000. But I'm a web developer, and I can design my own photo album. My good friend, Louis, offered to be my photographer for free. We spent an entire Saturday going to Henderson Wave, Resort World Sentosa, and Palawan Beach taking lots of photos with our own basic camera. Other than the mistake of a dirty lens and having inadequate lighting at night, the most of the photos turn out great! Now, even though Louis offered to do this work completely free, I gave a small gift of appreciation and every meal on the day a treat as a thank you. Never take unfair advantage of friendships. After having it specially designed by me into a unique photo album, I got it printed for S$40. I also specially printed specific photos for distribution for ~S$10. I merely spent a bit more than S$100 on this section.
As tradition, every wedding must have a ring. My wife and I agree together that a ring is more symbolic than the weight in resale value. Diamond and Gold have nothing to do with love. Diamond dug out of Earth is dirty, and, in come cases, bloody. Diamond can be made in a lab. So after much consideration, we settle for 2 Swarovski crystal on a silver plated ring, at an affordable of S$168.
Giving my guest for coming to my wedding as a memory is something my wife and I wanted. We wanted something memorable, usable, affordable, and Minion theme. After looking around suppliers and types of items, we find that a luggage tag has the right balance among all the criterias we set out. A gift costs S$225.70 for 70 pieces.
As formalities, I had to ensure my in-laws are in Singapore during the celebrations. The 2-way flight tickets for 2 person was S$505.70, from Jetstar. For accommodation, practicality, affordability, and prestige has to have some balance. My wife and I are also staying there, thus, budget is a little tighter. After a good look around, we find Aliwal Park Hotel to have the right balance. 150 metres from wedding venue, reasonably comfortable stay, convenient travel to bugis for shopping, and an affordable pricing of S$664 for 5 nights.
Being a great host to my in-laws was important. My wife and I brought them to River Safari. The entry was completely free as it was part of my working company benefits. We also visited Madame Tussad's Musuem and Trick-Eye museum. The tickets were purchased online and as a bundle, total costing us S$128.
Bringing 2 families together was an important part of our marriage. I organised a 6 pax international buffet for us. As I hold SPH Rewards Card, I was given a 1-for-1 treat at The Seasonal Taste @ The Westin. It was such a worth it deal, costing only S$310 instead of S$620. The food is simply delicious, although a bit too salty for myself.
We got a friend to be my wife's make up artist. Since we needed the artist for both the Solemnising and the Wedding, it was charged at $180 each. It included an additional accessory of S$10 which my wife gets to own it. I would consider the rate to be at the lower end of the standard. So it's actually very affordable when I compared it to others that went as high as $300 per event and accessories are only for rental.
Of course, the highlight is the wedding itself at EatPlayLove. Every one present for my event was my photographer. I specially set up our website @ thazin.shurn.me for uploading photos. In preparation for big amounts of upload, I signed up Filestack's Starter Plan, which costs about ~S$70 after currency conversion.
A 2-way flight ticket for me and my wife to Myanmar costs S$390. I had the privilege of staying with my in-laws, thus I saved on that, for 4 nights. I got to thank my in-laws for preparing our bed and mosquito nets.
I clearly remember visiting Shwedagon Pagoda. Being a foreigner, I had to pay a small token fee to enter the premise.
I also managed to visit Thabarwa Centre. Seeing the poor and the needy moved my heart to give a small donation to the place.
Overall, I spent S$1000 + my flight tickets over at Myanmar. Most of the items are far more affordable than in Singapore. 4G internet connection is reasonably priced.
Logistics was certainly a big part of our journey going from place to place. Most of my trips were taken care through Grab. The overall costs of logistics was about ~S$100.
Food for those involved in preparing for our big day was how we express appreciation. This costs about ~S$400.
A token of appreciation goes to our solemniser, Dr Eileen Aw, Justice of the Peace. For her effort to do us such a service, we gave her S$68 as gift of appreciation.
Thank you for your presences, gifts, and help, everyone. You have made our important day most memorable. Your help has made everything possible.
Our wedding has been made most meaningful. Our family and friends effort shows that relationship is the most important part of life. No amount of wealth could have bought us something so priceless and precious.
Those who could not have made it, your well wishes are no less equal.
I expect you are waiting for this. Some of the figures are deliberately inaccurate as a range to give respects to the recepient.
Seems like the world is getting so excited about the new Note 8 from Samsung. There is no shortage of Note 8 reviews. I'm not about to start doing one right now. I'll probably share about me and my wife's experience transiting to the new Note 8.
For me, I've been a long time Android user. Transiting it over from my previous Galaxy S6 Edge is a mere breeze. But my wife has been a long time iPhone 5S user. But you wouldn't believe me when I tell you that she picked up Android really fast. To be fair, she actually used the OPPO R9 model for about a month before she got her hands on Samsung Galaxy Note 8. Using OPPO R9 was already easy enough that when she landed her hands on Note 8, it was just another android to feast her eyes on.
That's her unboxing the phone. You can already tell how excited she is.
From the left, we have Galaxy S6 Edge, Galaxy Note 8, and Oppo R9. Clearly, Note 8 is the tallest of the 3, with R9 coming close.
But when it comes to screen real estate, the Note 8 is clearly the winner.
The data transfer from S6 Edge to Note 8 wasn't as smooth. To be fair, it isn't the fault of Android or Samsung. It's just that the apps ain't designed to transfer well with Smart Switch. The 160+ apps I have to restore through download from Google Play sure took a long time. Eventually, I am still able to smoothly transit to Note 8.
The transition from R9 to Note 8 had an extra hurdle. Smart link won't automatically install on R9. I had to download it from Google Play directly. I suspect it's because it runs on ColorOS, a variant of Android. Other than that, every other procedure is smooth.
If you're on budget, you might want to know that your purchase probably comes with a free phone case.
As expected, you should receive the fast charger. If you're using other phones that supports Qualcomm's Quick Charge, the fast charge should work too.
Now, this is arguably the accessory that stood out most. The ear piece by AKG is absolutely beautiful to listen to. The insulation is very good. I could actually hear more of the audio range than the previous ear piece provided by Samsung. Listening back to my old songs and noticing other instruments that I missed out previously is really eye opening.
I did not get to try out Dex Station much as I did not have a HDMI monitor available at this point of writing. Just one thing I noted, when I attempt to charge my phone with it, it wasn't on fast charge even though the charger supports it. And the phone case I was using interfered with the connection, that it could not fully plug into the Dex Station.
All in all, this is a very good device, as long as it doesn't explode.
Disclaimer: Even though all the photos in this blogpost is shot with Note8, the images have been edited and optimised for web by degrading it slightly, for faster download speeds.
Google has come up with a new way of handling network congestion, by pretending there is no congestion. OK, maybe exaggerated, but who can blame me when they outrightly state that "1980s-era algorithm assumes that packet loss means network congestion".
BBR stands for Bottleneck Bandwidth and Round-trip propagation time. According to Google, YouTube network throughput improved by 4 percent on average globally. Wordpress also experience massive improvements of up to 2700 times better than the previous best loss-based congestion control.
Sounds impressive? Why not let's give it a try.
Back up your server before proceeding. You're likely going to need to change Linux Kernal and other system level changes.
Check the Linux Kernel Version
uname -mrs
If it's any version less than 4.9, you need to upgrade it. Otherwise, you can skip ahead to the next section.
Search for the latest linux kernal in the repository.
apt search linux-generic
At the time of writing, the latest version is linux-image-4.11.0-14-generic. TCP BBR is only introduced in 4.9 and higher, so choose any version 4.9 or higher and install.
apt install linux-image-4.11.0-14-generic
You need to reboot the server after this.
reboot
Enable it at sysctl.conf
nano /etc/sysctl.conf
Append the following lines
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
Apply the settings
sysctl --system
Verify the new settings
sysctl net.core.default_qdisc
sysctl net.ipv4.tcp_congestion_control
You should see the output as what you typed in the sysctl.conf
Does it work? Maybe. When I did a speed test before and after implementing TCP BBR, there was hardly any noticable improvement in speedtest.
Googled up how to speed up CakePHP and I noticed how little articles have reference to CakePHP3. While there are other articles written on how to speed up CakePHP2, there's none on CakePHP3 that I found. So I'm going to share about my experience trying to speed up CakePHP3.
Note that this article is specifically about CakePHP3 and not PHP in general. Google up on speeding up PHP for more ways to speed up your web application. Also, unless you are experience a lot of traffic on your website or you have some heavy-duty processing, this optimisation won't give you significant speed.
One of the beautiful things about CakePHP3 is that it does a lot of automagic things for the developer so that you can rapidly prototype an application. The downside of it is that it uses a lot of processing power and a big lot of memory. I'm going to show you how you reduce CPU cycles and memory. Why memory? Simply because you wouldn't want your application start using swap space, which will drastically reduce your application speed.
When we do a data retrieval, we would normally do this:
$this->Articles->find("all");
With CakePHP's automagic, we would get every single column. This adds to processing time, both on the database and CakePHP. You see, CakePHP will process all the columns according to the type, especially if it is a date or a datetime field. On top of that, it will be stored as an array. Learn more about how big PHP arrays really are and you will know why it storing huge datasets in array is a bad idea.
So what we should do is to select very specific columns that you really need in your application by:
$this->Articles->find("all", ["fields" => ["id", "title"]]);
or
$this->Articles->find("all")->select(["id", "title"]);
With this trick, you use less processing power from the database and PHP. You will certainly reduce memory usage by a significant factor, especially if your query returns a huge dataset.
Greetings Earthlings , Shurn the Awesomer is here to give you an awesome time.
This little site is a record of my life, opinions, and views. I'm mainly writing about Technology & Gadgets, Busting Creationist Myths, and other philosophical stuff.
This site is done using CakePHP.
With this uptime, how much more can I be proud of to showcase to the world? This uptime monitoring is brought to you by StatusCake since 13th May 2017.
I will always check for copyright usage before using any materials on my site. Whenever due, credit shall be given.
However, if you notice that I may have infringed on any copyright material. Please do not hesitate to contact me. All works of every artist deserves to be honoured and respected.