Posts

Showing posts from 2017

Axis Bank + Max Life Insurance Scam

WRT the controversial Max Life - Life Gain Plus 20 Participating Plan . What they don't tell you when signing up is that it will take you 7 years to simply break even — even if you claim the 30% 80c IT deduction. If you don't claim 80c, it will take you 11 years just to break even. That is, to simply get your premium amount back without any interest. They will justify this saying it's because of insurance. But the cost of insurance itself is very low. If you're paying 1.1L premium for 6 years, you get insurance cover of 10L. If you buy just the term insurance instead, that costs less than 10k per year. So in effect, you're investing at least 1L per year. At the end of 7 years with this plan, you will only be given 4.2L back. Even assuming you claimed an 80c deduction of 30k per year for the 6 premiums — for a total of 1.8L — this is a break even of 6L after 7 years. You simply got your money back — after tax deductions and insurance costs — with no interest. Therea

Stories, Catalysts, Cashflows and Academics

The kinda of overly complicated BS that scares people off investing. Those who can't do, teach.

Importing Posts from Blogger to Drupal

Importing posts from blogger to Drupal is a piece of cake if you have the feeds module installed. All you need is the common RSS XML parser setting and the field mappings to Drupal's own core blog module. A working importer configuration (which too can be imported) is given here. The node author can be changed here, or in the node processor configuration settings. PS: You can use blogger's backup setting to first export all your posts as an XML file. $feeds_importer = new stdClass(); $feeds_importer->disabled = FALSE; /* Edit this to true to make a default feeds_importer disabled initially */ $feeds_importer->api_version = 1; $feeds_importer->id = 'knownexception'; $feeds_importer->config = array( 'name' => 'knownexception', 'description' => 'knownexception', 'fetcher' => array( 'plugin_key' => 'FeedsFileFetcher', 'config' => array( 'allowed_exten

Cost of Trading — 2017

The costs of refreshing the portfolio can be summarized as: 1% loss dues to bid-ask spreads / taxes (no brokerage paid) Unavoidable 1% loss due to reduced momentum of new portfolio Unavoidable 1% loss due to incorrect trades Avoidable

iPhone vs Android

When I first moved from Windows (ThinkPad) to OSX (MacBook Pro) in 2009, it was a life changing experience. I’ve been a huge fan of Steve Jobs ever since, and am on my third Mac (an Air) now. The Macs were always well worth the higher price tag. But it’s been two months now since I moved from my Google Nexus 5 to an iPhone SE; and even though the SE is newer and costlier than the N5, it under-performs in almost all areas. Just a few things that Androids have had for years, and iPhones still don't: No universal return button No automatic favorites in calls No SMS delivery reports No call blocking No app cache clearing No clear button in blocked contacts Swipe keyboard requires app Downloading videos requires app with payment info Constant network issues Software bugs on every update (too many to list) There have been 3 software updates in the last 2 months, and each one of them has been buggier than the last; with bugs that are quite obvious and visible. Maybe

Ticketgenie Solutions (Bangalore) is a Scam and Fraud

I had ordered some concert tickets from Ticketgenie Solutions some time ago which were never delivered. When I contacted Ticketgenie for help, they asked me to get the tickets from DTDC couriers who were their delivery partners. Ticketgenie refused to take any responsibility and I never got the tickets or a refund. After a lot of running around on the concert day — and multiple failed attempts to contact Ticketgenie customer support — I gave up. All Facebook messages to them since have also been seen and ignored. Ticketgenie's poor service and customer support cost me a lot of time, effort and money; and also caused me to miss an important concert for which I had booked well in advance. Avoid online tickets sold by Ticketgenie.

Delete Account Link on Facebook

Doesn't seem to be displayed on the site anymore. The link is: www.facebook.com/help/delete_account

Financial Service Scam

Note: The following is an old post written in 2017. The name of the service has been removed since the person who used to run the service seems to have sold the service, presumably to an unsuspecting mark. For those who can recognize the service, it was an Excel-spreadsheet based service called *** ****** ***** . Unfortunately, the preponderance of such scammers online casts a shadow on legitimate financial services. In fact, there is now another service called ***-*** ****** that seems to employ similar tactics; both as observed personally and as reported by others.  - Original Post - There is strong reason to believe that the Value Investing website that calls itself *** ****** ***** is a scam. Some of the most concerning issues seen on the site are: 1. A lot of claims shown on the front page are fraudulent. Some of the referral links lead to nowhere in particular. Most of the other claims are hard to verify. But the claims are made confidently enough to look convincing. There

Stock Markets vs Casinos

  The stock market is essentially a reverse casino, but only when approached correctly. Casinos — Negative Inflow The most important aspect of the Casino is that is it is a profit making enterprise, i.e., it makes money for itself and it's owners. As they say: "The house always wins" So the net flow of money always has to be towards the casino, away from the gamblers. All else being equal, the gamblers — on average — lose money. Stock Markets — Positive Inflow The stock market is essentially the reverse of a casino; it is essentially a place to share ownership and profits of commercial enterprises. The profits are redistributed as dividends, or as retained earnings that lead to an increase in intrinsic value; which eventually reflects as an increase in stock prices and capital gains. Financial Industry — Negative Inflow The important thing to remember is that there is a second entity around the stock market and that is the financial industry — a

Turning Short-Term Losses Into Possible Gains

  While losses should always be avoided, there may be a way to recover — and even profit from— losses under certain circumstances. Staying Invested Graham recommends staying invested at all times, since one never knows which way the market may go. The general rule of thumb is to invest everything except one year of expenses, and any emergency cash. Loss Recovery While it makes no sense to actually lose money under any circumstances, once the loss happens, some of it could be recovered as follows. As mentioned above, one would have to keep a certain amount of cash uninvested because short-term profits cannot be withdrawn without tax obligations. But short-term losses can be offset against future short-term gains. This allows one to invest more money than one would normally — after taking a loss — knowing that some of the profits can be withdrawn without tax obligations. Possible Outcomes If the market goes up significantly in the following months, one may even

Get Unique Line Counts on Linux

From terminal: cat Duplicates.txt | sort | uniq -c > Counts.txt Within vi: :%sort         // sort the results as required by "uniq" :%!uniq -c   // use the *nix "uniq" tool to prepend counts :%sort!        // sort in reverse order

Drupal Contact Form - Missing or Disappearing Emails

Linux sendmail sometimes drops emails mysteriously without any error message or log of the written email. /var/log/maillog will show an entries such as: Unauthenticated email from xyz.com is not accepted due to [DMARC] The way to fix this is to have the domain name of the current server in the from field, and the actual from address in the reply-to field. This can easily be done with Drupal 7 using the contact_reply_to module. Drupal 8 does not require the module.

Drupal's Confusing Online Readme Text Files

Module pages usually say: "The most complete and up to date documentation is included with the module, in the README.txt file." But the online README.txt files linked to there usually include documentation for unreleased updates. This can cause considerable confusion / unnecessary trouble-shooting when newly installing modules. Always use the README files included with the module, not the ones online.

Performance of Facebook promotions

Regarding the promoted post - xx Here are the top 10 duplicate shares on the post: Lucious White - 28 shares Ako Nai - 17 shares Stephen Schreiber - 17 shares Nathan Musikchild Ray - 9 shares Farakhan Norris - 6 shares Beau Forester - 5 shares Dennis Vinci - 5 shares Bob Holden - 4 shares James Thomas Downey - 4 shares T Donebullshidden Knight - 4 shares These accounts have been observed sharing and liking other promoted posts too. The total list of displayed shares is only 382, even though the displayed count is 1363. Understandably, this is due to private shares. But only 244 of the shares are by unique people. [Support email #2] As you can see, the high bounce rates are only for Facebook clicks. The bounce rates for users from Google, Bing, Yahoo etc are much lower. In any case, my concern is not the high bounce rate in itself. That could be content and context specific. My real concern is the large number of confirmed duplicate shares by certain users.

Drupal DDoS Prevention Code

// The following code will ensure that there are no more than 30 non-cached requests in 60 seconds. // Please adjust the first two variables below in a manner optimal to your server config. // Note that this only protects heavier non cached pages. // A powerful enough attack can even overload your server with requests for cached pages. function hook_init() {     $MinTime = 60;     $MaxAttmpts = 30;     $MyAppDDoSCheckUrl = variable_get('MyAppDDoSCheckUrl');     $TimeCheckNow = time();     if ($MyAppDDoSCheckUrl == '')     {         variable_set('MyAppDDoSCheckUrl',$TimeCheckNow.',1');         return;     }     $SerDDosVars = explode(',',$MyAppDDoSCheckUrl);     $TimeLast = intval($SerDDosVars[0]);     $ReqAttmt = intval($SerDDosVars[1]);         if ((($TimeCheckNow - $TimeLast) < $MinTime) && ($ReqAttmt > $MaxAttmpts))     {         header('HTTP/1.1 503 Server busy, try again later');         die('The server is cur

Toggle #input_group on fields in Drupal 7x

Here's the code for iterating through all fields in a form and setting $element [ '#input_group' ] = TRUE ;     function hook_form_alter ( & $form , $form_state , $form_id ) { if ( $form_id == 'nodetype1_node_form' ) { iterateForm ( $form , 'setIgt' ) ; } } // Generic iterate function. Can be used with any callback. function iterateForm ( & $form , callable $callback ) { foreach ( element_children ( $form ) as $key ) { $element = & $form [ $key ] ; $children = element_children ( $element ) ; if ( empty ( $children ) ) { call_user_func_array ( $callback , array ( & $element , & $key ) ) ; } else { iterateForm ( $element , $callback ) ; } } } // Custom callback function setIgt ( & $element , & $key ) { if ( $element [ '#type' ] == 'textfield' ) $element [ '#input_group' ] = TRUE ; }

Archive

Show more