Tuesday, 22 November 2016

Sync Android Events, Tasks and Contacts with Yandex Account

Syncing Events
You can sync your Android calendar events with Yandex account. Follow the instructions at yandex.ru support page. You have to install a CalDAV sync app as Android doesn't come with CalDAV sync feature. I am using the CalDAV-Sync app and it works great. (It's a paid app but free version is also available). You have to install a patch app if the app notifies about it. The yandex.ru CalDAV configuration for default as well as domain accounts is as below:
Server name : caldav.yandex.ru:443
Use SSL: true
Username: username@yandex.ru/username@yandex.com or username@your-domain.com
Password: your password. For 2FA with authenticator app, generate app specific password for calendar from yandex passport.
Once you tap on next, it will connect and show you the default calendar to sync. In my case it is Мои события (My Events). You can enable two-way or one-way sync. Proceed next and complete the setup. Now when you add new event, choose the yandex calendar and it will sync to the account. The following fields from the S Planner app will sync with the account - title, location, start date, end date, recurring, participants, description, attending.

Syncing Tasks
Install the free OpenTasks app which is by the same developer of the above app. Yandex mail has tasks feature. OpenTasks will sync with the yandex task if you have the above app. You can add the task from the yandex web or from the app, it will sync both ways but tasks created via web is very limited in feature. The task account will get listed in the CalDAV-Sync account. You can change the name of the default tasks list from the web. Note that the yandex task is very minimalist in nature. It does not have a description field. You can create plain todos with reminders in the interval of 30 mins only and that's it. A description field and choosing minutes would have made it more useful. On the contrary the app has many fields, but those fields won't sync. Also the tasks added via web does not produce any reminder notification on the app. Not very useful at the moment.

Syncing Contacts
You need CardDAV sync app, as Android doesn't have this feature by default. You can use CardDAV-Syc app. (It's paid, but free version is also available). You need to install the patch app if you are on Android 4.1 or using a Samsung device. Choose CardDAV from the list and use the below configuration:
Server name or URL: carddav.yandex.ru
SSL: true
Username: user@yandex.ru/user@yandex.com or user@customdomain.com
Password: your password. For 2FA enabled accounts, create a new app password under the contacts section from yandex passport.
Choose next and you can choose the address book where your contacts will be synced to. In the next step, choose import contacts, and choose the ones to sync, like phone book, linkedin, google contacts, skype etc. The list depends upon the accounts added to the phone. Yandex contacts doesn't have lot of additional fields, so the details like organisation, title etc added in your phone's contact app will not sync. To add additional details like organisation, address etc., use the notes field. This will be synced as comments.

As a side note, I have been using Yandex domain account for a couple of years now and I find it to be an awesome service. I moved from Google Apps. I had a free Google Apps account. I also use Yandex to host the DNS for my domain. Happy camper!

Sunday, 20 November 2016

Enabling 2FA Using Yandex.Key for Yandex.Mail App for Android

Yandex.Mail supports two-factor authentication that uses HOTP or TOTP based authenticator app. First you have to setup 2FA from the yandex passport for the web mail. For that you need to have Yandex.Key app installed in your mobile. It's similar to Google's 2FA process except that you have to enter an additional PIN before you can get the auth code from the app. After setting up the 2FA, you can login to the web mail using the code generated by the Yandex.Key.
Now to access the mail using the Yandex.Mail for Android app, you give the code from the Yandex.Key and not using app specific password setup. This is a key difference when you take other apps like Gmail for Android. With Gmail, you have to generate app specific password since it doesn't support verification codes. If you want to access Yandex.Mail using Thunderbird on a desktop, you have to generate app specific password.
Yandex.Mail supports 2FA for the default yandex.ru address as well as custom mail domains hosted at yandex.

Saturday, 12 November 2016

My Journey With Bitcoin Mining So Far

Bitcoin is a decentralized cryptocurrency. The transactions are peer-to-peer and recorded in the blockchain. The interesting thing is you can mine bitcoins, but it is very resource intensive. I first started bitcoin mining in the mid of 2014 using my laptop. I used GUIMiner and CPUMiner together, but it gave me a combined hash rate in the ranges of MH/s with a dual graphics card (ATI) and a quad-core CPU (AMD). I used pool mining connecting to slush pool. But GPU mining is not good as it can damage the card and also the output is very negligible. So I bought a Bitfury Twin Chip USB ASIC bitcoin miner which gives a hash rate of 5 GH/s. I also purchased 10 GH/s cloud hashing power for CEX.io from ebay which actually was sold for a higher price than its actual value. At that time the only way to buy the hashing power was from the users selling it at ebay as CEX.io does not have credit card facility (but now they have added). Or you can convert bitcoins for hashing power. For that you must first have bitcoins, which you can buy from other bitcoin exchanges that accepts credit cards and then transfer it to CEX.io and trade it for their hashing power. I also purchased Technobit Hex16B miner which contains bitfury ASIC chips with a total hash rate of 20 GH/s. I pointed the mining rigs to the local stratum proxy which then connects to ghash.io, which is where the CEX.io also does pool mining. Any one can connect to ghash.io and do pool mining.

To my dismay, the Technobit ASIC miner did not work. Neither I nor the one from Technobit got this to work with my system. I connected the miner to a PSU, and my system to the miner using HEX Miner under Windows. But it still gave proxy auth error. So, I compiled CGMiner with bitfury and other flags enabled under Ubuntu, but no success. It detects and mines from the USB miner but not the HEX16B. So I bought a TP-Link TL-MR3020 with the assumption that it might be my laptop (Windows 8, XP), drivers or something causing the HEXMiner software to not work with Hex16B. You need to update the TP-Link Wi-Fi router firmware from the one provided by Technobit. But in the process I think I bricked the device :P. I doubt that the miner was faulty to begin with and finally it was lost into oblivion.

The thing about bitcoin is that as more people starts mining, the difficulty increases and the hash power which mined 1 BTC previously will start giving lesser BTCs. So to keep up, you need to add more miners, which in-turn increases the power consumption, heat generation, noise, space consumption etc. Also consider the shipping cost of these miners. So I finally decided to stick with cloud mining. You only have to pay the maintenance fee deducted in BTC from the rewards. And the best and reliable service was provided by CEX.io which started in 2013. Now they stopped providing mining service altogether. One advantage with CEX.io was that when it mines Bitcoin, it will also mine altcoins like Namecoin, Litecoin etc. They also provide provision for trading coins, so these altcoins can be exchanged for mining power or bitcoin or vice versa.
I mined, traded for a year and then stopped as I don't see much returns and had to spend a lot of time keeping track of the price, hashrate variations etc. I traded all compute power to BTC and some to NMC and transferred to my wallets.

Namecoin is an interesting idea that you can have decentralized, censorship resistant DNS based on Bitcoin technology. The DNS address can be registered which will give you a .bit address and you own it. But the address needs to be renewed after some time by paying NMC. The expiry was around 6 months at that time. Registered a couple of them, but stopped renewing as I don't mine anymore.