How I avoided Ads in Network-wide using Pi-hole and a Raspberry Pi

TL;DR I used Ad blocker in browser to stop Ads. Thats only for browser, what about Mobile and TVs?! I used Pi-hole and Raspberry-Pi to block network-wide Ads. This blog is all about my own experience on using Pi-hole. Pi-hole Mostly we use Ghostery and uBlock Origin for ad blocking in browser. We can use Pi-hole, it is a network-wide ad blocker. Instead of installing adblockers on browser, we can install Pi-hole once on our network, and it will protect all of our devices....

June 16, 2019 · 4 min · 643 words · M.Kumaran

Best way to do async request (ajax and side effects) in ReactJs using hooks, Redux style - useReducer()

How to fetch data with React Hooks? You will mostly end-up with Robin’s blog post regarding the fecth method. But the problem using useState() is that we can’t execute any other code after fetch success. for an example:- do one fetch, if that fetch is successfull then call some JavaScript like clear the form using useState(), if fails display error message. That’s somehow difficult if we use useState(). fetch using useState() I created a codesandbox based on best practices to fetch data using hooks....

May 26, 2019 · 3 min · 556 words · M.Kumaran

I created a mobile app to copy text from system/browser to mobile

most of the time I need to share something in mobile messenger which is available in system or browser. I can use web version of the messenger, but some of them don’t have a web version. so I created an app to quickly copy/move text to my mobile. Technology used React native Firebase firebase is straight forward to sync the text with DB. How to use Open the app, visit http://computer-to-mobile....

May 12, 2019 · 1 min · 153 words · M.Kumaran

I stopped using WhatsApp and Why I told my friends to stop using WhatsApp and Telegram

This is fully copied from around the net and summerized. WhatsApp and others are collecting Metadata Are your readers having trouble understanding the term “metadata”? Replace it with “activity records.” That’s what they are. Edward Snowden (@Snowden) November 2, 2015 WhatsApp saying that We can’t listen/read the content of your communication because we use end-to-end encryption, we can only collect metadata. Don’t be fooled: Metadata is the real data Some example of meta data collection: They know you called the suicide prevention hotline from the Golden Gate Bridge....

January 28, 2019 · 2 min · 242 words · M.Kumaran

Converting my blog to Gatsby

I had my blog on wordpress. Early days PHP was ruling the web and I learned PHP and created my website in WordPress and hosted. It was quite good and nice. I learned JavaScript I knew js already (we can’t imaging without js for a webpage) with jQuery and Ajax then NodeJs came into lime light. It was more promising. I liked the event driven and web-sockets in Nodejs very much....

January 18, 2019 · 2 min · 293 words · M.Kumaran

Create 3D model in React Native using WebGL and Three.js

I will show you how to create 3D models in React native using Three.js Please create a react native project using react-native init. Make sure that you have Android virtual machine running and everything installed for the basic react native project. Install NDK and tools react-native-webgl is using some C++ code so we need to install the NDK tools for android In Android studio –> Tools –> Android –> SDK Manager select CMake, LLDB and NDK –> Apply –> OK...

January 7, 2019 · 2 min · 401 words · M.Kumaran

Install packages from myget.org in Visual Studio 2015

By default Visual Studio supports NuGet package manager. Here we will see how to use myget.org package manager in Visual Studio. Open Package Manager settings Tools –> NuGet Package Manager –> Package Manager Settings NuGet package manager setting in visual studio menu Settings screen NuGet settings screen in VisualStudio select package sources add a new package source select the newly added package source give a name add the package URL. Package provider gives this URL....

January 6, 2019 · 1 min · 116 words · M.Kumaran

Creating a simple Telephone directory using VB6.0

I will show absolute beginner tutorial for VB6.0 with database connections (using ADO). This will helpful you to get started further. I know VB 6.0 is quite old and It’s IDE is no longer supported by Microsoft. But still some legacy applications are running in VB6 runtime. VB6.0 VB6.0 was nice and great language for me to create database applications in the late 90’s. But nowadays people mostly use C#.net and WPF for window based applications....

January 5, 2019 · 3 min · 540 words · M.Kumaran

int x=5; x += x++ + ++x; (C#)

I had this question as my WhatsApp status and got interesting answers from friends. I will explain the answer here. increment and decrement operators are done differently in C# and C One thing that you have to remember is, the way C# does it is different than how C does it. Many people reason as though C# and C are the same language; they are not. here is the great explanation about c# pre and post increment operators....

January 4, 2019 · 1 min · 183 words · M.Kumaran

Asynchronous Programming in c# using async await

async await keyword in c# with simple example. async await – basic example XAML <Window x:Class="AsyncAwait.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="async/await - mkumaran.net" Height="255" Width="331"> <StackPanel> <ListBox Name="lstBox" Height="200"/> <Button Name="btn" Content="Click" Click="btn_Click"/> </StackPanel> </Window> C# using System.Threading; using System.Threading.Tasks; using System.Windows; namespace AsyncAwait { public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void btn_Click(object sender, RoutedEventArgs e) { lstBox.Items.Add("Click()"); Process1(); lstBox.Items.Add("Click() - completed"); } private async void Process1() { lstBox....

January 3, 2019 · 2 min · 333 words · M.Kumaran