Ad Blocking with ddwrt

No Comments

This was done on Asus RT-AC68U, running DD-WRT v3.0-r41686 std (12/10/19)

Let’s start with the script. This downloads two adlists and combines them into one. Then we’re restarting the service to pick up the changes. The reason for using curl instead of wget is because wget refused to work with https on my ddwrt build 🤷.

wget -qO /tmp/mvps http://winhelp2002.mvps.org/hosts.txt
curl -k https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts|grep "^0.0.0.0" >> /tmp/mvps
killall -HUP dnsmasq
stopservice dnsmasq && startservice dnsmasq

Go to Administration -> Commands. Paste it in there and execute “Run Commands”.

Then, use the same command but execute it as Save Startup. Why? Well, I wanted to use a cron scheduler to run the script on a regular basis, but it just refused to work. Thus, I’m just scheduling a weekly reboot, which will trigger this command to update the ad lists 🤷

All you have left is to enable DNSMasq and Local DNS in Services tab. Then in the Additional Dnsmasq options add this:

addn-hosts=/tmp/mvps

Then go to Administration->Keep Alive and schedule a weekly/monthly reboot. Although, if the cron is broken in your build, this may not work either (to check, you can ssh to your router and check the timestamp on the /tmp/mvps file). In that case, you may just have to manually rerun the script from time to time to get the latest ad list.

Categories: Uncategorized

CS 7641 Review (OMSCS)

No Comments

Prerequisites

The more you know about machine learning the better. Professor Isbell seems to care more about separating the best students from the rest, rather than getting everyone to be excited about machine learning. Start watching online lectures in advance if you can. Make sure you know how to run basic ML algorithm in your language of choice. The course does not teach you any of that and you will have a very limited amount of time to learn.

Effort

It’s hard but depends on how much you already know and how much time you can afford to spend on this course. I hated the way the homeworks are structured. The topics I already knew weren’t that bad, the topics I didn’t know (randomized learning, Markov decision process) I didn’t do very well, and the course did not provide a good way for me to learn it. If you can’t afford to spend too much time on this class, make sure you at least use all of the available pages for your reports. And, pay attention to the requirements.

There were four homework assignments: supervised learning, randomized optimization, unsupervised learning and dimensionality reduction, and Markov Decision process. Learn those in advance if you can.

Grading

TA’s weren’t that great this semester. I heard many complaints that TA’s missed a lot of details. Make sure you look at the feedback comments and request a regrade if you see a mistake, even if the feedback is tedious and boring. I paid no attention to these feedback reports – did a TLDR on those. You probably should not follow my example. It is unfortunate that regrades are discouraged, but I would highly recommend doing it if you see something is wrong with your grade.

Professor Involvement

Isbell is fairly involved, but he is also a troll. Be ready for comments like this:

Yes, he is just joking. I just don’t see how he finds such jokes appropriate.

Overall Impression

Hated this class with a passion. I took it to learn ML, not to see how I compare to others. This class offers very little in terms of practical knowledge. You’d be better off taking a $20 Udemy course on ML. Unfortunately, this is a requirement for the ML specialization.

Options to Avoid this Class

  • Do you actually need this degree? There are a lot of good much cheaper options to learn all of this
  • Switch your specialization to the one that does not require ML
  • Wait and see if Isbell stops teaching this course 🤞. The course has the potential to be one of the best and most exciting classes in OMSCS program.
  • Suck it up
Categories: Machine Learning Tags: Tags: